SE の雑記

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

SQL Server 2014 CTP2 リリース!!

leave a comment

先ほどブログ書いたばかりですが、一般公開されていました。
Microsoft SQL Server 2014 Community Technology Preview 2 (CTP2)

ということで情報をまとめていきたいと思います。

まずはリリースノートですね。
SQL Server 2014 Community Technology Preview 2 ( CTP 2) Release Notes

SQL Server 2014 CTP2 には SQL Server Data Tools が含まれていません。
こちらについては、以下のブログをチェックと。

please monitor http://blogs.msdn.com/b/ssdt/.

 

なお、製品ガイドも CTP2 対応になっていました。
Microsoft® SQL Server® 2014 CTP2 Product Guide

US の SQL Server チームのブログでもアナウンスがありますね。
SQL Server 2014 CTP 2 Now Available

SQL Server 2014 CTP2 に合わせて、Books Online も更新されたようです。
Books Online for SQL Server 2014

私はデータベースエンジンよりのエンジニアなので、What’s New (Database Engine) を見ていたのですが、CTP1 から機能が追加されています。

CTP1 の時にも Azure との連携でデータベースを Azure VM に持っていく機能を利用することができましたが、それに加えて SQL Server Integration with Windows Azure Storage が追加されています。

この機能を使用することで、データベースのデータストアとして Azure Storage が利用できるようになります。
細かな作成方法は Tutorial: Integrating SQL Server with Windows Azure Storage service に。

 

SQL Server 2014 CTP2 では互換性レベルとして、120 が設定できるようになっています。
image

この互換性レベルの影響については、SQL Server Database Engine Backward Compatibility に記載されていますのでが、What’s New で配下のような記載がありました。

Query plans

SQL Server 2014 includes substantial improvements to the component that creates and optimized query plans. To take advantage of these improvements new database applications should be developed using database compatibility level 120. Applications that are migrated from earlier versions of SQL Server should be carefully tested to confirm that good performance is maintained or improved. For more information, see ALTER DATABASE Compatibility Level (Transact-SQL).

クエリプランが互換性レベルを変更することでどのように改善/最適化されるのかがいまいちわかっていないのですが。。。

互換性レベルではありませんが、

Incremental Statistics

CREATE STATISTICS and related statistic statements now permits per partition statistics to be created by using the INCREMENTAL option. Related statements allow or report incremental statistics. Affected syntax includes UPDATE STATISTICS, sp_createstats, CREATE INDEX, ALTER INDEX, ALTER DATABASE SET options, DATABASEPROPERTYEX, sys.databases, and sys.stats. For more information, see CREATE STATISTICS (Transact-SQL).

という増分の統計についても CTP1 ではなかったのかと。

あとは、Hekaton 関係で Memory Optimized Table の BOL の記述がかなり変わっています。

Requirements for Using Memory-Optimized Tables をみると、cmpxchg16b の記載が追加されています。
これは Hekaton の楽観的同時実行制御で使用されている命令だったかと思いますが明記されたようですね。

かねてからアナウンスのあった範囲検索用のインデックスについても記述が追加されています。
Guidelines for Using Indexes on Memory-Optimized Tables に以下の記載があります。

image

範囲検索として利用可能な非クラスター化インデックスの記述がありますね。

これに伴い、Hekaton の記述もいくつか追加されているようなので再確認をしたほうがよさそうです。

SSMS からメモリ最適化テーブルを作成する際のテンプレートにも非クラスター化インデックスが反映されているようですね。

 CREATE TABLE <schema_name, sysname, dbo>.<table_name,sysname,sample_memoryoptimizedtable> ( <column_in_primary_key, sysname, c1> <column1_datatype, , int> <column1_nullability, , NOT NULL>, <column2_name, sysname, c2> <column2_datatype, , float> <column2_nullability, , NOT NULL>, <column3_name, sysname, c3> <column3_datatype, , decimal(10,2)> <column3_nullability, , NOT NULL> INDEX <index3_name, sysname, index_sample_memoryoptimizedtable_c3> NONCLUSTERED (<column3_name, sysname, c3>), CONSTRAINT <constraint_name, sysname, PK_sample_memoryoptimizedtable> PRIMARY KEY NONCLUSTERED (<column1_name, sysname, c1>), INDEX <index2_name, sysname, hash_index_sample_memoryoptimizedtable_c2> HASH (<column2_name, sysname, c2>) WITH (BUCKET_COUNT = <sample_bucket_count, int, 1024>) ) WITH (MEMORY_OPTIMIZED = ON, DURABILITY = <durability_type, , SCHEMA_AND_DATA>) GO 

 

 CREATE TABLE MemTable ( c1 int NOT NULL, c2 float NOT NULL, c3 decimal(10,2) NOT NULL INDEX index_sample_memoryoptimizedtable_c3 NONCLUSTERED (c3), CONSTRAINT PK_sample_memoryoptimizedtable PRIMARY KEY NONCLUSTERED (c1), INDEX hash_index_sample_memoryoptimizedtable_c2 HASH (c2) WITH (BUCKET_COUNT = 1024) ) WITH (MEMORY_OPTIMIZED = ON, DURABILITY = SCHEMA_AND_DATA) GO              

 

これにより、以下のような形で、メモリ最適化テーブルでも範囲検索時の Seek 操作ができるようになりました。

# PK を非クラスター化インデックスで作成するということもできるようですね。

image

ネイティブコンパイルされたストアドプロシージャについても機能追加は確認しておくとよさそうですね。

# 実行統計を見ることができるようになったようです。

Enabling Statistics Collection for Natively Compiled Stored Procedures

ほかにもいろいろと新機能が入っていそうですので PASS のキーノートに期待ですね!!

Written by masayuki.ozawa

10月 16th, 2013 at 8:58 pm

Posted in SQL Server

Tagged with

Leave a Reply

*