読者です 読者をやめる 読者になる 読者になる

SQL Database v12 GA しました

Microsoft Azure SQL Server

ネタ元:Azure is the Ideal Cloud for Your Database Workloads with Increased SQL Server Compatibility, Security, Automation, and Power - SQL Server Team Blog - Site Home - TechNet Blogs

ヨーロッパで GA。US は 2/9、全世界では 4/1 だそうです。
内部のテストだけど、600million(6億)行のデータに対して、パフォーマンス5倍、列ストア使ったら 100倍とか。
5倍は Premium でサポートされた parallel queries の影響なんじゃないかなー?と推測。

新しいセキュリティの機能も入ってます。
Row Level Security が 登場しました。(preview なので本番では未だやめといた方がいいよー)
今後 Dynamic Data Masking, Transparent Data Encryption(TDE)透過的データ暗号化 が入ってくるようです。

Row Level Security は SQL Server には実装されていません。今のところ SQL Database だけです。
自前で実装したい場合は資料が公開されています。
SQL Server における行レベルのアクセス許可の付与
Implementing Row- and Cell-Level Security in Classified Databases Using SQL Server 2005

SQL Database の Row Level Security はこちらをどうぞ
Row-Level Security Preview

テーブル値関数作って、フィルターの条件を決めるようです。
テーブル値関数は 1入った1行しか返していないので、とりあえず行があれば OK な感じなんですかね?
実行プラン見てみました。
Row Level Security を指定したテーブルを見た時、Filter ってのが入っています。
Filter の詳細はこんな感じ。作成したテーブル値関数が呼ばれています。

TDE は SQL Server にもある機能なのでこちらをどうぞ
透過的なデータ暗号化 (TDE)

Dynamic Data Masking は 指定列のデータがクエリに含まれるときに、権限が無いユーザーだとマスキングされたデータが返るようです。
列単位での DENY との使い分けはどうなんでしょうね?