SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

2016/6 から SQL Database の新規 DB 作成時の互換性レベルが 130 に変更されるようです

one comment

Improved Query Performance with Compatibility Level 130 in Azure SQL Database でアナウンスがあったのですが、2016/6 から新規に作成したデータベースの互換s例ベルが 120 から 130 に変更となるようです。

Starting in June 2016, the Azure SQL Database default will change from 120 to 130 for newly created databases. Databases created before June 2016 won’t be affected and will keep running at the Compatibility Level they were initially created with (100, 110 or 120). The same goes for databases migrated from Azure SQL Database v11 to v12.

互換性レベルを 130 にすることで、以下のような動作の実行が変わってきます。

  • INSERT INTO SELECT で並列 INSERT
  • 列ストアインデックスでのシングルスレッドでのバッチモード
  • ソートのバッチモードでの実行
  • 基数推定の改善

データベーススコープの構成変更が使用できるようになっていますので、以下のような設定変更を行うことも可能です。

クエリオプティマイザーのホットフィックス、新しい基数推定の無効化などは、クエリの実行プランへの影響が考えられますので設定変更ができることは覚えておくとよさそうですね。

SELECT name, compatibility_level FROM sys.databases

ALTER DATABASE MyTestDB SET COMPATIBILITY_LEVEL = 130

ALTER DATABASE SCOPED CONFIGURATION SET LEGACY_CARDINALITY_ESTIMATION = OFF
ALTER DATABASE SCOPED CONFIGURATION SET QUERY_OPTIMIZER_HOTFIXES = OFF
ALTER DATABASE SCOPED CONFIGURATION SET MAXDOP = 0
ALTER DATABASE SCOPED CONFIGURATION SET PARAMETER_SNIFFING = ON

Written by masayuki.ozawa

5月 7th, 2016 at 7:48 pm

Posted in SQL Database

Tagged with

One Response to '2016/6 から SQL Database の新規 DB 作成時の互換性レベルが 130 に変更されるようです'

Subscribe to comments with RSS or TrackBack to '2016/6 から SQL Database の新規 DB 作成時の互換性レベルが 130 に変更されるようです'.

  1. […] 2016/6 から SQL Database の新規 DB 作成時の互換性レベルが 130 に変更されるようです […]

Leave a Reply

*