diff --git a/samples/databases/README.md b/samples/databases/README.md index 9a787e83..a96b72df 100644 --- a/samples/databases/README.md +++ b/samples/databases/README.md @@ -2,6 +2,10 @@ Contains samples databases for Microsoft's SQL databases include SQL Server, Azure SQL Database, and Azure SQL Data Warehouse. -Samples are coming soon! +__[world-wide-importers](world-wide-importers/)__ +The new sample database for SQL Server 2016 and Azure SQL Database. It illustrates best practices in database design, as well as the core capabilities of SQL Server 2016 and Azure SQL Database, for transaction processing (OLTP), data warehousing and analytics (OLAP) workloads, as well as hybrid transaction and analytics processing (HTAP) workloads. +__[contoso-data-warehouse](contoso-data-warehouse/)__ + +Sample data warehouse that illustrates loading data into Azure SQL Data Warehouse. diff --git a/samples/databases/wide-world-importers/README.md b/samples/databases/wide-world-importers/README.md index b361bf80..4b127bd7 100644 --- a/samples/databases/wide-world-importers/README.md +++ b/samples/databases/wide-world-importers/README.md @@ -36,9 +36,10 @@ To run this sample, you need the following prerequisites. **Software prerequisites:** -1. SQL Server 2016 (or higher) or an Azure SQL Database. +1. SQL Server 2016 (or higher) or an Azure SQL Database. 2. SQL Server Management Studio, preferably 2016 April Preview or later (version >= 13.0.14000.36). 3. (to build sample apps) Visual Studio 2015. +4. (to run ETL jobs) SQL Server 2016 Integration Services @@ -48,6 +49,14 @@ The latest release of this sample is available here: TBD The source code for the sample is structured as follows: +__[sample-scripts] (sample-scripts/)__ + +Sample scripts that illustrate the use of various SQL Server features with the WideWorldImporters sample database. + +__[workload-drivers] (workload-drivers/)__ + +Simple apps that simulate workloads for the WideWorldImporters sample database. + __[wwi-database-scripts] (wwi-database-scripts/)__ T-SQL scripts to create the main WideWorldImporters database. @@ -61,7 +70,6 @@ __[wwi-integration-etl] (wwi-integration-etl/)__ SQL Server Integration Services (SSIS) project for the Extract, Transform, and Load (ETL) process that takes data from the transactional database WideWorldImporters and loads it into the WideWorldImportersDW database. - ## Disclaimers @@ -71,5 +79,8 @@ The code included in this sample is not intended to be used for production purpo ## Related Links -TBD For more information, see these articles: +- [SQL Server 2016 product page](https://www.microsoft.com/server-cloud/products/sql-server-2016/) +- [SQL Server 2016 download page](https://www.microsoft.com/evalcenter/evaluate-sql-server-2016) +- [Azure SQL Database product page](https://azure.microsoft.com/services/sql-database/) +- [What's new in SQL Server 2016](https://msdn.microsoft.com/en-us/library/bb500435.aspx) diff --git a/samples/databases/wide-world-importers/sample-scripts/always-encrypted/README.md b/samples/databases/wide-world-importers/sample-scripts/always-encrypted/README.md index 07ad9b6b..f9010102 100644 --- a/samples/databases/wide-world-importers/sample-scripts/always-encrypted/README.md +++ b/samples/databases/wide-world-importers/sample-scripts/always-encrypted/README.md @@ -1,6 +1,6 @@ # Sample for use of Always Encrypted in WideWorldImportersDW -This script demonstrates the use of Always Encrypted to encrypt sensitive data in the database. +This script demonstrates the use of Always Encrypted to encrypt sensitive data in the database. ### Contents @@ -34,7 +34,7 @@ To run this sample, you need the following prerequisites. **Software prerequisites:** -1. SQL Server 2016 (or higher) or Azure SQL Database. +1. SQL Server 2016 (or higher) or Azure SQL Database. 2. SQL Server Management Studio 3. Visual Studio 2015 4. The WideWorldImporters database. @@ -64,5 +64,6 @@ The code included in this sample is not intended to be used for production purpo ## Related Links -TBD - +For more information, see these articles: +- [Always Encrypted documentation](https://msdn.microsoft.com/library/mt163865.aspx) +- [Keep Sensitive Data Secure with Always Encrypted](https://channel9.msdn.com/Events/DataDriven/SQLServer2016/AlwaysEncrypted) diff --git a/samples/databases/wide-world-importers/sample-scripts/in-memory-oltp/README.md b/samples/databases/wide-world-importers/sample-scripts/in-memory-oltp/README.md index 61018956..1b29fc0d 100644 --- a/samples/databases/wide-world-importers/sample-scripts/in-memory-oltp/README.md +++ b/samples/databases/wide-world-importers/sample-scripts/in-memory-oltp/README.md @@ -35,7 +35,7 @@ To run this sample, you need the following prerequisites. **Software prerequisites:** -1. SQL Server 2016 (or higher) or Azure SQL Database. +1. SQL Server 2016 (or higher) or Azure SQL Database. 2. The WideWorldImporters database. @@ -55,7 +55,7 @@ It then compares the performance of single-threaded insert of 500,000 row: - into a memory-optimized table - into a memory-optimized table, with rows generated in a natively compiled stored procedure -The script outputs the time taken for each +The script outputs the time taken for each @@ -66,5 +66,8 @@ The code included in this sample is not intended to be used for production purpo ## Related Links -TBD - +For more information, see these articles: +- [In-Memory OLTP documentation](https://msdn.microsoft.com/library/dn133186.aspx) +- [In-Memory OLTP quick start](https://msdn.microsoft.com/library/mt694156.aspx) +- [In-Memory OLTP in SQL Server 2016 (video)](https://channel9.msdn.com/Events/DataDriven/SQLServer2016/InMemoryOLTP) +- [Get started with In-Memory in SQL Database](https://azure.microsoft.com/documentation/articles/sql-database-in-memory/) diff --git a/samples/databases/wide-world-importers/sample-scripts/operational-analytics/README.md b/samples/databases/wide-world-importers/sample-scripts/operational-analytics/README.md index 83dbd397..e122fdf7 100644 --- a/samples/databases/wide-world-importers/sample-scripts/operational-analytics/README.md +++ b/samples/databases/wide-world-importers/sample-scripts/operational-analytics/README.md @@ -35,7 +35,7 @@ To run this sample, you need the following prerequisites. **Software prerequisites:** -1. SQL Server 2016 (or higher) or Azure SQL Database. +1. SQL Server 2016 (or higher) or Azure SQL Database. 2. SQL Server Management Studio 3. The WideWorldImporters database (Full version). @@ -43,7 +43,7 @@ To run this sample, you need the following prerequisites. ## Running the sample -1. Run the [Order Insert](../../workload-drivers/vehicle-location-insert/) workload for a while. When starting from the vanilla WideWorldImporters database the recommendation is to run at least 20 minutes, to ensure that enough data is generated and that compression kicks in (the sample has a COMPRESSION_DELAY of 10 minutes for the columnstore indexes). +1. Run the [Order Insert](../../workload-drivers/vehicle-location-insert/) workload for a while. When starting from the vanilla WideWorldImporters database the recommendation is to run at least 20 minutes, to ensure that enough data is generated and that compression kicks in (the sample has a COMPRESSION_DELAY of 10 minutes for the columnstore indexes). 2. Execute the sample script. @@ -51,7 +51,7 @@ To run this sample, you need the following prerequisites. ## Sample details -The [Order Insert](../../workload-drivers/vehicle-location-insert/) workload driver is used to simulate an order processing workload. The queries in the sample script are reporting queries run with and without columnstore index. +The [Order Insert](../../workload-drivers/vehicle-location-insert/) workload driver is used to simulate an order processing workload. The queries in the sample script are reporting queries run with and without columnstore index. @@ -62,5 +62,6 @@ The code included in this sample is not intended to be used for production purpo ## Related Links -TBD - +For more information, see these articles: +- [Get started with Columnstore for real time operational analytics](https://msdn.microsoft.com/library/dn817827.aspx) +- [Real-Time Operational analytics with SQL Server 2016 (video)](https://channel9.msdn.com/Events/DataDriven/SQLServer2016/Real-Time-Operational-analytics) diff --git a/samples/databases/wide-world-importers/sample-scripts/polybase/README.md b/samples/databases/wide-world-importers/sample-scripts/polybase/README.md index 6033a39f..ed632cce 100644 --- a/samples/databases/wide-world-importers/sample-scripts/polybase/README.md +++ b/samples/databases/wide-world-importers/sample-scripts/polybase/README.md @@ -1,6 +1,6 @@ # Sample Querying of External Data Source in WideWorldImportersDW -This script demonstrates the use of PolyBase to query an external data source. +This script demonstrates the use of PolyBase to query an external data source. Demographics data is available in Azure blob storage. This data is joined with sales data recorded in the local database to determine which would be good candidates for future expansion of the business. @@ -35,7 +35,7 @@ To run this sample, you need the following prerequisites. **Software prerequisites:** -1. SQL Server 2016 (or higher) with PolyBase, connected to the internet. +1. SQL Server 2016 (or higher) with PolyBase, connected to the internet. 2. SQL Server Management Studio 3. The WideWorldImportersDW database (Full version). @@ -70,5 +70,6 @@ The code included in this sample is not intended to be used for production purpo ## Related Links -TBD - +For more information, see these articles: +- [Get started with PolyBase](https://msdn.microsoft.com/library/mt163689.aspx) +- [PolyBase: Gaining insights from HDFS and relational data in SQL Server 2016 (video)](https://channel9.msdn.com/Events/DataDriven/SQLServer2016/PolyBase) diff --git a/samples/databases/wide-world-importers/sample-scripts/row-level-security/README.md b/samples/databases/wide-world-importers/sample-scripts/row-level-security/README.md index b471123d..e11cb373 100644 --- a/samples/databases/wide-world-importers/sample-scripts/row-level-security/README.md +++ b/samples/databases/wide-world-importers/sample-scripts/row-level-security/README.md @@ -1,6 +1,6 @@ # Sample for use of Row-Level Security in WideWorldImporters -This script demonstrates the use of Row-Level Security to restrict access to certains rows in the table to certain users. +This script demonstrates the use of Row-Level Security to restrict access to certains rows in the table to certain users. ### Contents @@ -34,7 +34,7 @@ To run this sample, you need the following prerequisites. **Software prerequisites:** -1. SQL Server 2016 (or higher) or Azure SQL Database. +1. SQL Server 2016 (or higher) or Azure SQL Database. - With SQL Server, make sure SQL authentication is enabled. 2. SQL Server Management Studio 3. The WideWorldImporters database. @@ -49,7 +49,7 @@ To run this sample, you need the following prerequisites. ## Sample details -The sample enables row-level security in the database, for the table `Sales.Customers`. Users of the database can only see the customers they are allowed to see. +The sample enables row-level security in the database, for the table `Sales.Customers`. Users of the database can only see the customers they are allowed to see. The user 'Great Lakes Sales' is allowed to see only the customers in the Great Lakes sales territory. @@ -64,5 +64,6 @@ The code included in this sample is not intended to be used for production purpo ## Related Links -TBD - +For more information, see these articles: +- [Row-Level Security documentation](https://msdn.microsoft.com/library/dn765131.aspx) +- [Row-Level Security SQL Server 2016 (video)](https://channel9.msdn.com/Events/DataDriven/SQLServer2016/Row-Level-Security) diff --git a/samples/databases/wide-world-importers/workload-drivers/order-insert/README.md b/samples/databases/wide-world-importers/workload-drivers/order-insert/README.md index 211a57d9..79eba4d2 100644 --- a/samples/databases/wide-world-importers/workload-drivers/order-insert/README.md +++ b/samples/databases/wide-world-importers/workload-drivers/order-insert/README.md @@ -33,7 +33,7 @@ To run this sample, you need the following prerequisites. **Software prerequisites:** -1. SQL Server 2016 (or higher) or Azure SQL Database. +1. SQL Server 2016 (or higher) or Azure SQL Database. 2. Visual Studio 2015. 3. The WideWorldImporters database. @@ -55,7 +55,7 @@ This application is used to provide an intensive order entry workload for the Wi Ensure that the connection string is set appropriately. It is save when the program is edited. If you ever need to set it back to the default value, open the program, clear the string, and exit the program. When you restart the program, the connection string will have been returned to the default value. -The program uses the selected number of threads to concurrently call the `Website.InsertCustomerOrder` stored procedure. +The program uses the selected number of threads to concurrently call the `Website.InsertCustomerOrder` stored procedure. When inserts are occurring, click the button to stop but allow time for the system to respond and stop. It may take a few seconds to respond, particularly if a larger number of threads is being used. @@ -66,8 +66,3 @@ When inserts are occurring, click the button to stop but allow time for the syst The code included in this sample is not intended to be used for production purposes. - -## Related Links - -TBD - diff --git a/samples/databases/wide-world-importers/workload-drivers/vehicle-location-insert/README.md b/samples/databases/wide-world-importers/workload-drivers/vehicle-location-insert/README.md index c401c7cb..feb6cc87 100644 --- a/samples/databases/wide-world-importers/workload-drivers/vehicle-location-insert/README.md +++ b/samples/databases/wide-world-importers/workload-drivers/vehicle-location-insert/README.md @@ -35,7 +35,7 @@ To run this sample, you need the following prerequisites. **Software prerequisites:** -1. SQL Server 2016 (or higher) or Azure SQL Database. +1. SQL Server 2016 (or higher) or Azure SQL Database. 2. Visual Studio 2015. 3. The WideWorldImporters database (Full version). @@ -47,7 +47,7 @@ To run this sample, you need the following prerequisites. 2. Build the solution. -3. Connect to the database and +3. Connect to the database and 4. Run the app and follow the instructions on-screen. Compare the time taken for On Disk and In Memory insertion. @@ -61,7 +61,7 @@ When executed, this application displays the following: Ensure that the connection string is set appropriately. It is save when the program is edited. If you ever need to set it back to the default value, open the program, clear the string, and exit the program. When you restart the program, the connection string will have been returned to the default value. -You can control the number of threads performing the insert operations. You can choose whether to insert into an on-disk table or an in-memory equivalent of the same table. +You can control the number of threads performing the insert operations. You can choose whether to insert into an on-disk table or an in-memory equivalent of the same table. The application will periodically (about every second) display the latest execution times for each insert. @@ -78,5 +78,4 @@ The code included in this sample is not intended to be used for production purpo ## Related Links -TBD - +- [in-memory/ticket-reservations](/samples/features/in-memory/ticket-reservations) diff --git a/samples/databases/wide-world-importers/wwi-integration-etl/README.md b/samples/databases/wide-world-importers/wwi-integration-etl/README.md index 82a3541f..34af1154 100644 --- a/samples/databases/wide-world-importers/wwi-integration-etl/README.md +++ b/samples/databases/wide-world-importers/wwi-integration-etl/README.md @@ -92,5 +92,5 @@ The code included in this sample is not intended to be used for production purpo ## Related Links -TBD For more information, see these articles: +- [SQL Server Integration Services documentation](https://msdn.microsoft.com/library/ms141026.aspx)