先日、SQL Server Management Studio 17.5 がリリースされました。
Download SQL Server Management Studio (SSMS)
私が使いそうなもので、追加された機能としては、
- SQL Data Warehouse の EXPLAIN のグラフィカルな取得
- SQL Server 向けの「データ検出と分類」の機能追加
の 2 点でしょうか。
詳細については New in this Release に記載されていますのでそちらを参照してください。
SQL DW 向けの機能強化として、EXPLAIN のグラフィカルな実行プラン取得機能が追加されています。
今までは、EXPLAIN で XML 形式の実行プランの取得のみが可能でしたので、可読性が少し弱かったかと思います。
SSMS 177.5 からは「推定実行プランの取得」から、実行プランをグラフィカルに取得できるようになりましたので、実行プランを読み取るのが楽になっているのではないでしょうか。
プラン比較も利用できそうな感じでした。
もうひとつの機能強化としては、「データ検出と分類」の機能の SQL Server 版が追加されています。
SQL Data Discovery and Classification
この機能、SQL Database にも、プレビュー機能として先行実装されていたのですが、それが Box の SQL Server にも追加された形でしょうか。
SQL Database の場合は、ポータルの設定の中に気づいたら追加されていました。
SQL Server の場合、ポータルはありませんので、SSMS 17.5 で、SQL Server に接続し、「タスク」->「Classify Data」を開くことで、機能を使用することができます。
この機能がどのようなことができるかというと、「テーブルの列に対して、拡張項目として、情報の種別と重要度のラベルを付与することができる」機能となります。
実際の設定画面が次のようになり、この UI については SQL Database のポータルも類似の内容となっています。
どのような項目に対して設定されているかのレポート機能もあり、有効に活用することで、データベース内のテーブルの重要なデータ項目を管理することができるようになっています。
この機能は「SQL Server 2008 以降」+ 「SSMS 17.5」で使用できるようになっており、SQL Server の機能拡張というよりは、SQL Server の既存の機能を有効に活用できるように SSMS が拡張されたものとなっています。
SQL Server 側の実装としては、テーブルの拡張プロパティの機能が使われており、データの分類を実施することで「sys.extended_properties」に情報が格納されるようになっています。
テーブル内の「minor_id」が 0 より大きい数値として設定されているため、SSMS でテーブルのプロパティの拡張プロパティを見ても内容を確認することができないのですが、内部的には格納されていることになります。
現時点では、SQL Server 向けは「分類」のみが実装されているようですが、「SQL Databas」の場合は「検出と分類」の機能として実装されており、SQL Server と比較して、次の機能が追加されています。
- 分類の推奨事項の定時
- 監査ログとの統合
詳細については、Azure SQL Database のデータの検出と分類 で解説されています。
SQL Database の場合は、分類の推奨事項を提示する機能があり、SQL Database のアドバイス機能で分類の推定をすることができます。
もう一つの追加機能としては、SQL Database の監査ログとの統合があります。
SQL Databse の場合、設定した項目に対してアクセスが行われた操作については、監査ログの追加情報として出力がされるようになっています。
次の画像が監査ログの内容となります。
最新の監査ログには「data_sensitive_information」という情報が追加されており、分類付けされたデータに対してアクセスがあったクエリの確認ができるようになっており、機微なデータへのアクセス状況を管理しやすくなっています。
SQL Database の場合、データ分類は拡張プロパティを使っているわけではないようなので、このような拡張ができているのでしょうかね。
SSMS をバージョンアップすることで利用可能な機能というのが最近は増えていますので、管理ツールについても定期的にバージョンアップしていかないとですね。