Jak wcześniej wspominałem, Microsoft zmienił podejście do przykładowych baz. W SQL Server 2016 ilość zacnych wodotrysków najwyraźniej skłoniła do odświeżenia koncepcji rozwijanej od wersji 2000 (dystrybuowanej wtedy z aplikacją pod dumną nazwą Adventure Works Cycles Storefront 2000 🙂 ). Swoją drogą zastanawiam się ilu z Was wie, że za bazą AdventrueWorks stoi zmyślona, ale ciekawa historyjka prezentująca prężnie rozwijającą się firmę produkującą rowery? 😛 No więc za nową Wide World Importers kozackiej historyjki *jeszcze* nie znalazłem. SQL Server Team na swoim blogu opisuje ją mniej więcej tak:
Wide World Importers jest to nowa próbka dla SQL Server. Pokazuje, jak bogaty zestaw funkcji serwera 2016 może być wykorzystany w prawdziwych bazach produkcyjnych. Jej celem nie jest wykorzystanie każdej pojedynczej funkcji SQL Server. Prezentuje za to szereg nowych kluczowych funkcjonalności oraz pokazuje jakie efekty optymalizacyjne uzyskano w najnowszej wersji.
CO NOWEGO?
W dużym skrócie, mamy nowe elementy.
- Standardowa baza transakcyjna (OLTP),
- baza pod hurtownię (OLAP) (obie dostępne tutaj)
- In-Memory OLTP Performance Demo (o tu)
- oraz ciekawostka – „Internet of Things (IoT) Smart Grid Sample” (dostępna tutaj).
O ile dwa pierwsze nie dziwią, o tyle trzeci i czwarty budzi ciekawość 🙂 Wygląda na to, że Microsoft porządnie przygotował się do prezentacji możliwości nowych fajerwerków i stwierdził, że same bazy to za mało.
Dlatego OLTP Performance Demo to aplikacja i skrypty pozwalające pokazać nowe możliwości In-Memory OLTP i natywnie kompilowanych procedur. Zaś IoT pokazuje jak 2016 radzi sobie ze streamem danych, który generuje je w czasie rzeczywistym, wrzuca do bazy a raporty w PowerBI i magiczne SQLki to wszystko prezentują użyszkodnikowi.
To nie koniec ważnych zmian. Kolejna, może najważniejsza, SKRYPTY SQL Z PRZYKŁADAMI DYSTRYBUOWANE SĄ POPRZEZ GITHUB! (o tututututu)
CO TO OZNACZA?
Pomijając kwestie czym jest GIT i sam GitHub, w dużym skrócie:
od teraz przykładowe skrypty będą współtworzone przez społeczność 🙂 Nawet Ty możesz zgłaszać swoje pomysły!
Oczywiście najpierw trzeba ogarnąć kilka tematów, ale na końcu tej drogi jest pull request i jakiś Master of Disaster z MS, który zadecyduje o losie Twojej zmiany 😉 Tak czy inaczej „dobra zmiana” i to w sensie dosłownym, nie przenośni.
Poniżej zrzucam już nieprzetłumaczony wykaz najważniejszych ficzerów, które skrypty prezentują. (źródło: https://blogs.technet.microsoft.com/dataplatforminsider/2016/06/09/wideworldimporters-the-new-sql-server-sample-database/)
The sample is structured as follows:
- WideWorldImporters is the main database for transaction processing (OLTP – OnLine Transaction Processing) and operational analytics (HTAP – Hybrid Transactional/Analytics Processing). Here are some examples of the use of SQL Server capabilities with this database:
- Real-time operational analytics of sales data is enabled through the use of nonclustered columnstore indexes.
- Archive tables can be stretched to Azure for long-term retention, reducing storage cost and improving manageability.
- Query Store is used to keep track of query performance.
- Temporal tables are used to conveniently keep track of the history of reference data, as well as some of the main entities.
- JSON is used to enable AJAX calls to some of the key tables, and also to extend the relational schema to record such things as application settings and user preferences.
- Advanced security features like Always Encrypted, Row-Level Security and Dynamic Data Masking are used to secure data.
- In-Memory OLTP is used to optimize the performance of table-valued parameters (TVPs) and to optimize ingestion of sensor data.
- Clustered columnstore indexes are used to reduce the storage footprint of large tables with insert-only workload.
- Partitioning is used to improve the manageability of large tables.
- For more detail, see WideWorldImporters use of SQL Server features and capabilities.
- WideWorldImportersDW is the main database for data warehousing and analytics (OLAP – OnLine Analytics Processing). The data in this database is derived from the transactional database WideWorldImporters, but it uses a schema that is specifically optimized for analytics. Here are some examples of the use of SQL Server capabilities with this database:
- Clustered columnstore indexes are used to reduce the storage footprint and improve query performance for the fact tables.
- PolyBase is used to correlate data in the local database with a public data set in Azure Blog storage.
- In-Memory OLTP is used to improve the performance of the ETL process.
- Partitioning is used to improve manageability of the fact tables, which can grow very large in a data warehouse.
- For more detail, see WideWorldImportersDW use of SQL Server features and capabilities.
- A SQL Server Integration Services (SSIS) package, Daily ETL.ispac, is used to move data from the OLTP database WideWorldImporters to the OLAP database WideWorldImportersDW. The package is designed to use bulk T-SQL statements wherever possible to enhance performance. For details about the ETL workflow, see the WideWorldImportersDW ETL workflow.
The sample also includes a number of scripts that can be used to explore some of the features used in the sample database. In addition, the sample includes two workload drivers, which are small applications that simulate a workload running against the database.
The databases contain sample sales and purchases data starting January 1st, 2013, until May 31st, 2016. The sample includes procedures to generate more sample data, so you can always bring the sample up to the current date. For details, see WideWorldImporters data generation.
The data size is limited to keep the download size reasonable. If you desire a sample database with a larger data size, use the source scripts to create a new sample database, and tweak the parameters in step 6 to increase the data size.
A CO DALEJ Z ADVENTURE WORKS?
Po gorącej dyskusji na blogu ms, została wrzucona w komentarzu informacja o przyszłości tej bazy. W dużym skrócie: nic nie kasujemy, korzystajcie z niej dalej w 2016. Przy okazji zablokowano dalsze komentowanie posta ;]
We have received some questions around what happens with existing samples and training materials that depend on AdventureWorks.
We are not removing AdventureWorks and are not asking for existing AdventureWorks samples to be updated to use WideWorldImporters. You can continue to use AdventureWorks with SQL Server 2016, especially since we know that there are many samples for AdventureWorks in existing documentation and presentations. As you develop new work, please transition to creating samples based on WideWorldImporters.Comments are closed.