WideWorldImporters: The new SQL Server sample database で、アナウンスがありましたが、SQL Server の新しいサンプルデータベースとして、WideWorldImporters というデータベースが提供されています。
従来までは、AdventureWorks がサンプルデータベースとして利用されていましたが、今後はこちらをサンプルとして使用する機会が増えるのでしょうかね。
Wide World Importers Documentation
ベースとなるスクリプト等については、GitHub で公開されています。
# 私の環境でスクリプトベースで構築しようとしたらエラー吐いて、うまく実行できなかったりしましたが…。
データベースのバックアップファイルが wide-world-importers-release で公開されていますので、すぐに使ってみたい場合はこちらからバックアップファイルを入手すると良いかと。
このサンプルデータベースでは SQL Server 2016 で実装されている様々な新機能が使用されています。
どのテーブルでどのような機能が使われているかを確認したいなと思い、WideWorldImporters の DB に対しての実行を想定した、クエリを公開してみました。
wwi-機能確認.sql
SQL Server 2016 の Operational Analytics のシナリオで使用される列ストアや、In-Memory OLTP、セキュリティの機能がどのテーブルで使われているかを確認できるかと思います。
# 現状、Always Encrypted は使われていないようでしたので、それについては省略しています。
私がざっと確認した感じでは、以下は使用されているようでした。
- 列ストアインデックス (クラスター化 / 非クラスター化)
- In-Memory OLTP
- ネイティブコンパイルされたストアドプロシージャ
- パーティショニング
- 行レベルセキュリティ
- セキュリティ述語による行レベルセキュリティの制御
- 動的データマスク
- クエリストア
ColdRoomTemperatures テーブルは、In-Memory + Temporal のテーブルとなっているのですが、ベーステーブルは In-Memory OLTP を使用して、アーカイブテーブルは通常の行ストアを使っていたりと、テーブルの組み合わせを調べてみても勉強になるかと。