Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
SQL Server/SQL Database
最新機能紹介
SQLWorld★大阪#30
2015/04/25 SQLWorld お だ
自己紹介
織田 信亮(おだ しんすけ)
大阪で開発者しています
SQLWorld 代表 (http://sqlworld.org)
http://odashinsuke.hatenablog.com/
Twitter:@shinsukeoda
注意事項
現時点(2015/04/19) でのお話しです
最新の情報は公式Webでご確認下さい
注意事項
最近追加された機能を中心にしたスライドになってます
全体の話しは無しです(特に SQL Database)
今日話すこと
SQL Server 2014 の話し
SQL Database V12 の話し
今日話すこと
SQL Server 2014 の話し
SQL Database V12 の話し
まだリリースされてない SQL Server の話し!
SQL Server 2014 の話し
メモリ最適化テーブル
インメモリ OLTP
100倍速くしたい => Hekaton
SQL Server があれば OK!
メインメモリ最適化
T-SQL フルコンパイル
ロックフリーの高並列
列ストアインデックス
クラスタ化列ストアインデックス が追加された
更新可能
非クラスタ化列ストアインデックスは更新不可※
テーブルに1つのインデックスのみ
クラスタ化列ストアインデックスのみ
インデックス = データ
データサイズが少ない
Azure との連携
データファイルを Azure Storage (Blob) に配置
FileStream は NG
バックアップ/復元
Azure Storage へのバックアップとStorage から直接 復元
2012 CU2 から可...
AlwaysOn の強化
AG(可用性グループ) のセカンダリレプリカ数が 4 -> 8
読取可能なセカンダリの強化
プライマリ/クラスタークォーラムが無くても読取出来る
FCI で CSV(クラスターの共有ボリューム)を共有ディス
クで使える...
バッファプール拡張
Standard から使えるようになりました!
バッファプールに SSD とかの速いディスクを使おう
メモリが足りない時に、速いディスクでカバー
たくさんメモリを積んでるサーバーは対象外
128GB より大きいサーバーはだめ...
バッファプール拡張
ディスクからデータを読むのは一般に遅い
一度読んだデータはメモリ(バッファプール)にキャッ
シュ(保持)しておく
メモリが足りなくなったら、あまり使われなかったデー
タはキャッシュアウトされる(メモリから消される)
そこで、...
色々と…
基数推定機能の再設計
遅延持続性
オンライン操作のロック優先順位管理
増分統計
リソースガバナーの物理IOサポート
SQL Server 2014 SP1
リリースしましたが…
SSISDB を使用していると SP1適用で インスタンスが無効で
使用出来ない状態になる
http://blogs.msdn.com/b/jpsql/archive/2015/04...
SQL Database V12 の話し
SQL Database って何?
Microsoft Azure 上で提供されている クラウド上のRDB
利用者はデータベースの管理だけしたら良い
テーブル/ユーザー/ストアド/ファンクション とか
SQL Server ベースだが、ちょっと...
ざっと全体を…
包含データベース
テーブルパーティショニング
2GBを超えるトランザクションのサポート
BLOB を含むインデックスのオンラインサポート
ALTER COLUMN の オンラインサポート
TRUNCATE TABLE の パーテ...
ざっと全体を…
Dynamic Data Masking
Row-Level Security
Window関数(OVER句)のサポート
.NET CLR の一部サポート
Change Tracking
XML インデックスのサポート
ヒープテ...
ざっと全体を…
列ストアインデックスのサポート
並列クエリーのサポート
透過的データの暗号化(TDE) のサポート予定
包含データベース (Contained Databased)
LOGIN を master に作る必要無し
DB の移動が容易
DB 移動したけど、LOGIN 作ってなかった!とかが無くなる
SQL Server では、2012 からある
パーティショニング
テーブル パーティションが出来るようになった!
TRUNCATE TABLE で PARTITON をサポート
一部のパーティションだけ TRUNCATE
SQL Server では未実装!
https://msdn.mic...
ALTER COLUMN のオンラインサポート
一部の処理がオンラインでサポート
https://msdn.microsoft.com/en-us/library/ms190273.aspx
ポインタを差し替える感じ
http://sqlper...
Dynamic Data Masking
結果セットから、対象のテーブル + 列 or 特定のエイリ
アスに対し、データのマスキングをする
セキュリティ対応接続文字列でのみ有効
監査で使う接続文字列
<servername>.database....
Row-Level Security
実行プランの最後にユーザー定義関数でフィルタリング
例:テーブルに権限用のカラムを持ち、ユーザー定義関数内
で現在のユーザーと対象カラムでフィルタリングする感じ
インデックスは効く
ユーザー定義関数に渡すカ...
Window 関数(OVER句)のサポート
分析関数が使えるようになった
LEAD/LAG/FIRST_VALUE/LAST_VALUE…
OVER (ROWS/RANGE) のサポート
N行目までの集計とかが出来るようになった
select ...
Change Tracking (変更の追跡)
SQL Server では 2008 から
テーブル内の行が変更されたことを保持
変更前のデータは保持しない
UPDATE の場合は、どの列が更新されたかも保持
データは保持しないので、履歴管理と...
ヒープテーブルのサポート
クラスター化インデックスの無いテーブルを利用可能
以前はヒープテーブルではデータの更新が出来なかった
SELECT … INTO によるテーブルの作成兼データの追加
も利用可能に!
select * into Copy...
列ストアインデックスのサポート
2つの列ストアインデックスをサポート
NCCI(非クラスター化列ストアインデックス)
CCI(クラスター化列ストアインデックス)
利用出来るサービス階層(エディション) に制限
Premium でのみ利用可
並列クエリー
MAXDOP の指定が可能に
利用出来るサービス階層/パフォーマンスレベルに制限
Premium (P2) 以上でのみ
透過的データの暗号化 サポート予定
Coming soon
SQL Server では 2008 から
データファイル/ログファイルの暗号化
別サーバーでのアタッチ/復元には、証明書&秘密鍵のバック
アップも必要
開発者は意識する必要無し
ペー...
おまけ
Azure SQL Database Elastic Scale
クライアントライブラリ (.NET)
シャーディングによって、スケールアウト/イン を実現
シャードの管理/分割/マージ/クエリ発行/マルチシャー
ドクエリ…
マルチシャ...
まだリリースされていない
SQL Server の話し!
SQL Server vNext
PASS Summit 2014 で機能が紹介された
https://www.youtube.com/watch?v=7Pum0vfYtSk&list
=PLoGAcXKPcRvanix7u9eqg_qt1tp...
STRETCH TABLE
https://www.youtube.com/watch?v=7Pum0vfYtSk&list=PLoGAcXKPcRvanix7u9eqg_qt1tp849rX3&index=2
http://ryuchan.h...
QUERY STORE
実行プランを保持する機能
実行プランが変わっても、以前の実行プランを保持
再起動OK
現在と以前の実行プランを DMV から取れる
http://www.brentozar.com/archive/2014/11/sql...
まとめ
Ignite で SQL Server vNext のセッションがある!
Microsoft SharePoint Server 2016 with SQL Server
vNext: Better Together
http://ig...
Upcoming SlideShare
Loading in …5
×

Sql server sql database 最新機能紹介

1,596 views

Published on

SQLWorld★大阪#30 http://sqlworld.org/event/20150425/
SQL Server/SQL Database 最新機能紹介

Published in: Technology
  • Be the first to comment

Sql server sql database 最新機能紹介

  1. 1. SQL Server/SQL Database 最新機能紹介 SQLWorld★大阪#30 2015/04/25 SQLWorld お だ
  2. 2. 自己紹介 織田 信亮(おだ しんすけ) 大阪で開発者しています SQLWorld 代表 (http://sqlworld.org) http://odashinsuke.hatenablog.com/ Twitter:@shinsukeoda
  3. 3. 注意事項 現時点(2015/04/19) でのお話しです 最新の情報は公式Webでご確認下さい
  4. 4. 注意事項 最近追加された機能を中心にしたスライドになってます 全体の話しは無しです(特に SQL Database)
  5. 5. 今日話すこと SQL Server 2014 の話し SQL Database V12 の話し
  6. 6. 今日話すこと SQL Server 2014 の話し SQL Database V12 の話し まだリリースされてない SQL Server の話し!
  7. 7. SQL Server 2014 の話し
  8. 8. メモリ最適化テーブル インメモリ OLTP 100倍速くしたい => Hekaton SQL Server があれば OK! メインメモリ最適化 T-SQL フルコンパイル ロックフリーの高並列
  9. 9. 列ストアインデックス クラスタ化列ストアインデックス が追加された 更新可能 非クラスタ化列ストアインデックスは更新不可※ テーブルに1つのインデックスのみ クラスタ化列ストアインデックスのみ インデックス = データ データサイズが少ない
  10. 10. Azure との連携 データファイルを Azure Storage (Blob) に配置 FileStream は NG バックアップ/復元 Azure Storage へのバックアップとStorage から直接 復元 2012 CU2 から可能。2005 – 2012 CU1 は以下で可能 Microsoft SQL Server Backup to Microsoft Azure Tool http://www.microsoft.com/ja-JP/download/details.aspx?id=40740
  11. 11. AlwaysOn の強化 AG(可用性グループ) のセカンダリレプリカ数が 4 -> 8 読取可能なセカンダリの強化 プライマリ/クラスタークォーラムが無くても読取出来る FCI で CSV(クラスターの共有ボリューム)を共有ディス クで使える DMV で取れる情報追加
  12. 12. バッファプール拡張 Standard から使えるようになりました! バッファプールに SSD とかの速いディスクを使おう メモリが足りない時に、速いディスクでカバー たくさんメモリを積んでるサーバーは対象外 128GB より大きいサーバーはだめ~ サイズは、Max Server Memory の32倍まで 128GB * 32 = 4TB が Max 他社製品にも同じようなのあるよ Oracle Database Smart Flash Cache
  13. 13. バッファプール拡張 ディスクからデータを読むのは一般に遅い 一度読んだデータはメモリ(バッファプール)にキャッ シュ(保持)しておく メモリが足りなくなったら、あまり使われなかったデー タはキャッシュアウトされる(メモリから消される) そこで、SSD 等の早いディスクを第二のキャッシュとし て利用する! ディスクに読み書きするのでディスクの性能には注意
  14. 14. 色々と… 基数推定機能の再設計 遅延持続性 オンライン操作のロック優先順位管理 増分統計 リソースガバナーの物理IOサポート
  15. 15. SQL Server 2014 SP1 リリースしましたが… SSISDB を使用していると SP1適用で インスタンスが無効で 使用出来ない状態になる http://blogs.msdn.com/b/jpsql/archive/2015/04/23/sql-server- 2014-sp1.aspx 触れなかったのでスルー SP1 は暫くしたら再度公開される予定です
  16. 16. SQL Database V12 の話し
  17. 17. SQL Database って何? Microsoft Azure 上で提供されている クラウド上のRDB 利用者はデータベースの管理だけしたら良い テーブル/ユーザー/ストアド/ファンクション とか SQL Server ベースだが、ちょっと違うとこも… DB Engine Only!(SSRS/SSIS/SSAS 等は無し) 進んでる点/遅れてる点 両方ある
  18. 18. ざっと全体を… 包含データベース テーブルパーティショニング 2GBを超えるトランザクションのサポート BLOB を含むインデックスのオンラインサポート ALTER COLUMN の オンラインサポート TRUNCATE TABLE の パーティションサポート ALTER DATABASE のオプション追加 DBCC コマンドの追加
  19. 19. ざっと全体を… Dynamic Data Masking Row-Level Security Window関数(OVER句)のサポート .NET CLR の一部サポート Change Tracking XML インデックスのサポート ヒープテーブルのサポート アプリケーションロールのサポート
  20. 20. ざっと全体を… 列ストアインデックスのサポート 並列クエリーのサポート 透過的データの暗号化(TDE) のサポート予定
  21. 21. 包含データベース (Contained Databased) LOGIN を master に作る必要無し DB の移動が容易 DB 移動したけど、LOGIN 作ってなかった!とかが無くなる SQL Server では、2012 からある
  22. 22. パーティショニング テーブル パーティションが出来るようになった! TRUNCATE TABLE で PARTITON をサポート 一部のパーティションだけ TRUNCATE SQL Server では未実装! https://msdn.microsoft.com/en-us/library/ms177570.aspx
  23. 23. ALTER COLUMN のオンラインサポート 一部の処理がオンラインでサポート https://msdn.microsoft.com/en-us/library/ms190273.aspx ポインタを差し替える感じ http://sqlperformance.com/2015/02/sql- performance/more-online-operations SQL Server では未実装!
  24. 24. Dynamic Data Masking 結果セットから、対象のテーブル + 列 or 特定のエイリ アスに対し、データのマスキングをする セキュリティ対応接続文字列でのみ有効 監査で使う接続文字列 <servername>.database.secure.windows.net http://azure.microsoft.com/en-us/documentation/articles/sql- database-dynamic-data-masking-get-started/ SQL Server では未実装!
  25. 25. Row-Level Security 実行プランの最後にユーザー定義関数でフィルタリング 例:テーブルに権限用のカラムを持ち、ユーザー定義関数内 で現在のユーザーと対象カラムでフィルタリングする感じ インデックスは効く ユーザー定義関数に渡すカラムも考慮すること https://msdn.microsoft.com/library/7221fa4e-ca4a-4d5c-9f93- 1b8a4af7b9e8.aspx SQL Server では未実装!
  26. 26. Window 関数(OVER句)のサポート 分析関数が使えるようになった LEAD/LAG/FIRST_VALUE/LAST_VALUE… OVER (ROWS/RANGE) のサポート N行目までの集計とかが出来るようになった select 日付, 金額, sum(金額) over ( order by 日付 row between 1 preceding and current row ) as 前日との計 from 日次売上
  27. 27. Change Tracking (変更の追跡) SQL Server では 2008 から テーブル内の行が変更されたことを保持 変更前のデータは保持しない UPDATE の場合は、どの列が更新されたかも保持 データは保持しないので、履歴管理というよりは差分更 新向け(別DBとの sync とか) データを持たないので必要なデータサイズは少なめ
  28. 28. ヒープテーブルのサポート クラスター化インデックスの無いテーブルを利用可能 以前はヒープテーブルではデータの更新が出来なかった SELECT … INTO によるテーブルの作成兼データの追加 も利用可能に! select * into CopyTable from Table_1
  29. 29. 列ストアインデックスのサポート 2つの列ストアインデックスをサポート NCCI(非クラスター化列ストアインデックス) CCI(クラスター化列ストアインデックス) 利用出来るサービス階層(エディション) に制限 Premium でのみ利用可
  30. 30. 並列クエリー MAXDOP の指定が可能に 利用出来るサービス階層/パフォーマンスレベルに制限 Premium (P2) 以上でのみ
  31. 31. 透過的データの暗号化 サポート予定 Coming soon SQL Server では 2008 から データファイル/ログファイルの暗号化 別サーバーでのアタッチ/復元には、証明書&秘密鍵のバック アップも必要 開発者は意識する必要無し ページレベルで実行され、ディスクに書き込まれる前に暗号 化/メモリに読み込まれるときに暗号化解除される
  32. 32. おまけ Azure SQL Database Elastic Scale クライアントライブラリ (.NET) シャーディングによって、スケールアウト/イン を実現 シャードの管理/分割/マージ/クエリ発行/マルチシャー ドクエリ… マルチシャードクエリの結果は、全シャードに同じクエリを 投げた結果が UNION ALL された感じで取得出来る
  33. 33. まだリリースされていない SQL Server の話し!
  34. 34. SQL Server vNext PASS Summit 2014 で機能が紹介された https://www.youtube.com/watch?v=7Pum0vfYtSk&list =PLoGAcXKPcRvanix7u9eqg_qt1tp849rX3&index=2 メモリ最適化テーブル での NCCI 非クラスター化列ストアインデックスをメモリ最適化テーブ ルで利用可能に STRETCH TABLE QUERY STORE
  35. 35. STRETCH TABLE https://www.youtube.com/watch?v=7Pum0vfYtSk&list=PLoGAcXKPcRvanix7u9eqg_qt1tp849rX3&index=2 http://ryuchan.hatenablog.com/entry/2015/01/19/014521
  36. 36. QUERY STORE 実行プランを保持する機能 実行プランが変わっても、以前の実行プランを保持 再起動OK 現在と以前の実行プランを DMV から取れる http://www.brentozar.com/archive/2014/11/sql-server-query-store/ http://slavasql.blogspot.jp/2014/11/newest-sql-server-feature-query- store.html http://slavasql.blogspot.jp/2014/11/newest-sql-server-feature-query- store.html
  37. 37. まとめ Ignite で SQL Server vNext のセッションがある! Microsoft SharePoint Server 2016 with SQL Server vNext: Better Together http://ignite.microsoft.com/session/sessionmoreinfo/?topicid=fd3 7928b-3795-e411-b87f-00155d5066d7#fbid=JB4HmMrttaO SQL Server 2016 の CTP が近々出るらしい! 5/26-27 開催の de:code で 2016 のセッションがある 2016 はよ!

×