SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Downloaden Sie, um offline zu lesen
DAT-004
本情報の内容(添付文書、リンク先などを含む)は、Microsoft Tech Summit 開催日(2016年11月1-2日)時点のものであり、予告なく変更される場合があります。
4
Session Menu
SQL Server vs. Azure SQL Database
Operational Analytics
Stretch DB
Temporal Table
Always-Encrypt
T-SQL Enhancements
JSON Support
Microsoft SQL Server Continuum
6
Dedicated
Higher Cost
Shared
Lower Cost
Higher Administration Lower Administration
Platform as a Service(PaaS)
Azure SQL Database
Virtualized Databases
SQL
Full Cloud
SQL SQL
Virtual
SQL Server Private Cloud
Virtualized Machines + Appliances Hybrid CloudSQL SQL SQL
Physical
SQL Server
Physical Machines (raw iron) On PremisesSQL
Infrastructure as a Service(IaaS)
SQL Server on Azure VM
Virtualized MachinesSQL SQL SQL
SQL Server on Azure
PaaS / IaaS Layer
7
データベース
SQL Server
ゲスト OS
仮想化
ホスト OS
容易な管理
Azure SQL Database VM上の SQL Server
データベース
SQL Server
ゲスト OS
ホスト OS
仮想化
フルコントロール
Azure が管理
利用者が管理
SQL Server vs. Azure SQL Database
8
オンプレ運用なら SQL Server
SQL Server なら DB 以外の機能も多く搭載
既存システムをクラウドへ!なら、まず SQL Server on VM
管理運用は Azure SQL Database が便利
…….
"Versus" でなく "Together" でやりましょう!
Clustered Column Store Index
列ごとのデータを格納することで
集計のパフォーマンスを向上させるテクノロジー
• 列単位でのデータ格納と高い圧縮率により IO 量の削減
• これまでの行型のテーブルと比べて 10~100 倍高速な集計処理
• 既存テーブルのインデックスを付け替えるだけで OK
10
列ストア
AAA BBB CCC DDD
22 33 44 55
F M M F
行ストア
AAA 22 F
BBB 33 M
CCC 44 M
DDD 55 F
SQLServer2016 AzureSQLDatabase
In-Memory OLTP v2
テーブルとストアドプロシージャをメモリに配置させることで高速化
• 複数ユーザーでの追加・更新・削除操作など同時実行性が極めて高い
• カラム ストア インデックスにより集計操作も高速化
• V2 の追加機能
• カラム ストア インデックスのサポート
• 最大サイズが 256 GB → 2TB に拡張
• BIN2 以外の照合順序のサポート
• 並列プランへの対応
• 64 コア以上での性能向上に対応
• TDE(透過的なデータ暗号化)のサポート
11
ディスク
メモリ
SQLServer2016 AzureSQLDatabase
SQLServer2016 AzureSQLDatabase
Operational Analytics
Operational と Analytics の双方のワークロードで
同時に両方のパフォーマンスを向上させる仕組み
• データの2重持ちの回避および、同期処理・ETL処理・バッチ処理から解放
• Operational ワークロード = OLTP(オンライン トランザクション処理)
• Analytics ワークロード = データ集計/分析処理、DWH、夜間バッチ
12
SQLServer2016 AzureSQLDatabase
Operational Analytics
ハイブリッド格納方式
• 実装パターン
1. インメモリテーブル
+ クラスター化カラム ストア インデックス
2. ディスクベーステーブル
+ 非クラスター化カラム ストア インデックス
3. ディスクベーステーブル
+ クラスター化カラム ストア インデック
13
SQLServer2016 AzureSQLDatabase
Stretch Database
SQL Server のデータをクラウドの
Azure SQL Database に拡張して透過的に利用する仕組み
• 同一のテーブルにほとんどアクセスしないデータ(Cold Data)が多く存在するが、
たまに集計などで利用するので別テーブルにはしたくない
15
HOT / Active
データ
Cold / Fixed
データ
アプリ
HOT / Active
データ
アプリ • 冗長構成(3重化)
• SLA 99.99%
• バックアップ自動
• 暗号化サポート
Cold / Fixed
データ
BEFORE AFTER
フィルタ関数で
移動する行を指定
SQLServer2016 AzureSQLDatabase
Remote Query
Stretch Database
• 嬉しい
• ほとんど参照されない(しかし、たまに必要となる)膨大な過去データをクラウド
側で保持することで低コスト化
• アプリケーションからは透過的にアクセスできるので既存アプリの変更は不要
• 留意点
• Cold データへのアクセスは現状よりも遅くなる可能性があります
• Azure SQL Stretch Database へ移動したデータは更新できません
• 移動したデータによる UNIQE 制約は適用されません
• 未サポート(Stretch Database Advisor で確認可能)
• 列の数が1023個以上のテーブル
• メモリ最適化テーブル
• text, ntext, image, timestamp, XML, CLR データ型を含むテーブル
16
SQLServer2016 AzureSQLDatabase
Temporal Table
データに対する更新を自動的に履歴テーブルに
保存する仕組みでデータのバージョン管理を容易にする機能
• 過去の任意の時点におけるデータの状態をすぐに見たい(タイムトラベル)
• 手間をかけずにデータの変更履歴をしっかりと残しておきたい
18
SQLServer2016 AzureSQLDatabase
BEFORE
SysStartTime SysEndTime
Temporal Table(現在値) History Table(変更履歴)
APP
SysStartTime SysEndTime
従業員マスター
AFTER
マスターテーブル 履歴テーブル
APP
従業員マスター
5年前って?
5年前って?
2つのテーブルから
複雑なクエリーで
取り出す
マスターから
一発で取り出せる
Temporal Table
• CDC / Change Trackingとの違い
• 履歴テーブルに対して別途、クエリーする
必要がない
• SQL Server Audit(監査機能)との違い
• SQL Server Audit は「監査」目的に特化
• ログインの成功/失敗、パスワード変更な
ども監査対象
• クエリー式
• AS OF <date_time>
• FROM<start_date_time>TO<end_date_time>
• BETWEEN<start_date_time>AND<end_date_time>
• CONTAINED IN (<start_date_time> ,
<end_date_time>)
• ALL
19
SQLServer2016 AzureSQLDatabase
ID Salary SysStartTime SysEndTime
Genius 800 2010 2011
Genius 850 2011 2014
Genius 900 2014 9999
Tappi 1200 2010 2013
Tappi 1400 2013 9999
Shimomo 900 2011 2012
Shimomo 950 2014 2015
2010 2011 2012 2013 2014 2015 NOW2016
Genius
Genius
Genius
Tappi
Tappi
Shimomo Shimomo
Security
Dynamic Data Masking
テーブルと列レベルで定義されたポリシーに基づいて
クエリー結果にリアルタイムでマスキングする機能
• アプリケーションレベルでなく、システムで処理したい
• どのような接続からでも同じようにマスキング処理を施したい
21
SQLServer2016 AzureSQLDatabase
ID Salary MyNumber Email
Genius 900 3593-2742-2901 genius@microsoft.com
Tappi 1400 1234-5678-9012 tappi@microsoft.com
Shimomo 950 9876-5432-1098 shimomo@microsoft.com
ID Salary MyNumber Email
Genius 0 ****-****-**01 gXXX@XXXX.com
Tappi 0 ****-****-**12 tXXX@XXXX.com
Shimomo 0 ****-****-**98 sXXX@XXXX.com
SELECT * FROM Employee
[Salary] MASKED WITH (FUNCTION =
'default()'),
[MyNumber] MASKED WITH (FUNCTION =
'partial(0, "****-****-**",2)') ,
[Email] MASKED WITH (FUNCTION =
'email()')
テーブル定義で OK
Row-Level Security
実行するユーザーの特性に基づいてテーブル行への
アクセスを制御する仕組み
• 部門単位でアクセス出来る行を絞り、他の行にアクセスさせたくない
• 内部犯行の情報漏洩のリスクを最小限に抑えたい
22
SQLServer2016 AzureSQLDatabase
ID Dept Salary
Genius TOKYO 900
Tappi TOKYO 1400
Shimomo OSAKA 950
ID Dept Salary
Genius TOKYO 900
Tappi TOKYO 1400
ID Dept Salary
Shimomo OSAKA 950
TOKYOUser が実行した結果
OSAKAUser が実行した結果
RLSフィルタ
CREATE FUNCTION Security.fn_dept(@Dept AS sysname) RETURNS TABLE
WITH SCHEMABINDING AS RETURN SELECT 1 AS fn_dept_result
WHERE @Dept+'User' = USER_NAME() OR USER_NAME() = 'Supervisor
CREATE SECURITY POLICY RawFilter
ADD FILTER PREDICATE Security.fn_dept(Dept)
ON dbo.Employee WITH (STATE = ON)
Always Encrypted
ディスク上、メモリ上、ネットワーク上で
機密データを暗号化した状態で保護するテクノロジー
• 徹底的に機密データを保護したい
• データを閲覧できる人や端末を限定したい
23
SQLServer2016 AzureSQLDatabase
SQL Server / Azure SQL DatabaseTrusted Client
Enhanced
ADO.NET
Library
Column Master KeyGenius Hirai
Name
SELECT Name FROM Employee
WHERE MyNumber =@MyNum
@MyNum=‘1234-5678-9012'
暗号化処理と復号化処理はクライアントライブラリ上
@MyNum=0x98ac57ef5568
0x77aa88bb99
Name
SELECT Name FROM Employee
WHERE MyNumber= 0x98ac57ef5568
Name MyNumber
0x15cc0db26cf 0x7fg655se2e85
0x77aa88bb99 0x98ac57ef5568
0x1d895b6cde7 0y8fj754ea2ccd1
Column Encryption Key
メモリ内も暗号化
ストレージ内も暗号化
ネットワーク内も暗号化
Trusted Client
Enhanced
ADO.NET
Library
Column Master KeyGenius Hirai
Name
SELECT Name FROM Employee
WHERE MyNumber =@MyNum
@MyNum=‘1234-5678-9012'
暗号化処理と復号化処理はクライアントライブラリ上
@MyNum=0x98ac57ef5568
ネットワーク内も暗号化
T-SQL Enhancement
• DROP IF EXISTS
• あれば削除、なければスルー
• STRING_SPLIT, STRING_ESCAPE
• 文字列操作関数
• SESSION_CONTEXT,
sp_set_session_context
• セッションレベルの変数
• COMPRESS, DECOMPRESS
• GZIP アルゴリズムでの変換および解除
• ALTER TABLE …WITH (ONLINE = ON)
• 使用中の状態で列変更を実行
• INSERT … SELECT…
• INSERT もパラレル処理に対応
• sp_execute_external_script
• 外部スクリプト(R)の実行
25
SQLServer2016 AzureSQLDatabase
SQLServer2016 AzureSQLDatabase
Tools
• SQL Server Management Studio(SSMS)
• SQL Server 2016 から個別インストール
• Azure AD 認証 / MFA サポート
• SQL Server Data Tools(SSDT)
• Visual Studio 用の開発アドイン&テンプレート
• BI 系のツール(SSDT-BI)も統合して一本化
• SQL Server サンプル データベース
• 新サンプルデータベース Wide World Importers を提供
• Azure SQL Database 対応
• ドライバ
• Microsoft ADO.NET for SQL Server
• Microsoft JDBC Driver for SQL Server
• Microsoft ODBC Driver for SQL Server
• Node.js Driver for SQL Server
• Python Driver for SQL Server
• Ruby Driver for SQL Server
26
SQLServer2016 AzureSQLDatabase
JSON in SQL
REST Web サービス(Web API)で利用されている
データ形式である JSON をネイティブにサポート
• Web やモバイル アプリとのデータ交換(JSON ↔ Table)を簡略化したい
• 半構造化データを RDBMS へ取り込みたい
27
SQLServer2016 AzureSQLDatabase
TABLEJSON
[
{"ID":"masath","Name":"Genius","Age":53},
{"ID":"tappi","Name":"Hayashi","Age":47},
{"ID":"shimo","Name":"Shimomoto","Age":39},
]
ID Name Age
masath Genius 52
tappi Hayashi 47
shimo Shimomoto 39
SELECT * FROM
OPENJSON(@json) WITH(…)
SELECT * FROM Employee
FOR JSON PATH
関連セッション
• DAT-001 DAY1 14:00-14:50
クラウドデータウェアハウスは本当に使えるか?Azure SQL Data Warehouse
詳細解説
• DAT-009 DAY1 15:15-16:05
クラウドでビックデータを活用するために ~ 高速データロードについて
• DAT-003 DAY2 10:50-11:40
伸縮自在!.NET × Azure SQL Database で実現できる RDBMS のスケールアウト
• DAT-008 DAY2 13:10-14:00
進化した AlwaysOn! SQL Server 2016 の AlwaysOn 可用性グループの新機能
• DAT-006 DAY2 15:40-16:30
SQL Server 2016 はとにかく速い!
• DAT-011 DAY2 16:55-17:45
HDInsight + Spark + R を活用した機械学習のためのスケーラブルなビッグ
データ分析基盤
29
まとめ - SQL Server 2016 & Azure SQL Database
30
Operational Analytics という概念
クラウドとのシームレスな連携
開発生産性をさらに追及
セキュリティ機能は最高峰
31
ぜひ、マイクロソフト史上最強の
データプラットフォームをご賞味下さい
32
Thanks for Attending !
DAT-004
Dat004 開発者に捧ぐ「sql server_2016_

Weitere ähnliche Inhalte

Was ist angesagt?

Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Masayuki Ozawa
 
Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Masayuki Ozawa
 
Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版elanlilac
 
Sql server 構築 運用 tips
Sql server 構築 運用 tipsSql server 構築 運用 tips
Sql server 構築 運用 tipsMasayuki Ozawa
 
SQL serverのデータ破損に備える
SQL serverのデータ破損に備えるSQL serverのデータ破損に備える
SQL serverのデータ破損に備えるokumar savurou
 
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -yoyamasaki
 
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Masayuki Ozawa
 
Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Masayuki Ozawa
 
SQL Server/SQL Database の新機能のお話し
SQL Server/SQL Database の新機能のお話しSQL Server/SQL Database の新機能のお話し
SQL Server/SQL Database の新機能のお話しInsight Technology, Inc.
 
SQL Server 2014 データベースエンジン新機能
SQL Server 2014 データベースエンジン新機能SQL Server 2014 データベースエンジン新機能
SQL Server 2014 データベースエンジン新機能Masayuki Ozawa
 
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料yoyamasaki
 
Sql server2014復習とsqlserver2016の紹介
Sql server2014復習とsqlserver2016の紹介Sql server2014復習とsqlserver2016の紹介
Sql server2014復習とsqlserver2016の紹介Oda Shinsuke
 
Managed Instance チートシート
Managed Instance チートシートManaged Instance チートシート
Managed Instance チートシートMasayuki Ozawa
 
MySQL 5.7とレプリケーションにおける改良
MySQL 5.7とレプリケーションにおける改良MySQL 5.7とレプリケーションにおける改良
MySQL 5.7とレプリケーションにおける改良Shinya Sugiyama
 
MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報
MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報
MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報yoyamasaki
 
[C21] MySQL Cluster徹底活用術 by Mikiya Okuno
[C21] MySQL Cluster徹底活用術 by Mikiya Okuno[C21] MySQL Cluster徹底活用術 by Mikiya Okuno
[C21] MySQL Cluster徹底活用術 by Mikiya OkunoInsight Technology, Inc.
 
Sql server 2014 新機能の紹介
Sql server 2014 新機能の紹介Sql server 2014 新機能の紹介
Sql server 2014 新機能の紹介Oda Shinsuke
 
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するdb tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するMasayuki Ozawa
 

Was ist angesagt? (20)

Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介Sql database 基本構成と直近で追加されていた機能の紹介
Sql database 基本構成と直近で追加されていた機能の紹介
 
Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能
 
Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版Sql server これだけはやっておこう 最終版
Sql server これだけはやっておこう 最終版
 
Sql server 構築 運用 tips
Sql server 構築 運用 tipsSql server 構築 運用 tips
Sql server 構築 運用 tips
 
SQL serverのデータ破損に備える
SQL serverのデータ破損に備えるSQL serverのデータ破損に備える
SQL serverのデータ破損に備える
 
States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -States of Dolphin - MySQL最新技術情報2013秋 -
States of Dolphin - MySQL最新技術情報2013秋 -
 
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
Dal001 sql server 2017 事始め ~ 進化を続ける sql server の最新情報を一挙紹介
 
Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎Sql server のバックアップとリストアの基礎
Sql server のバックアップとリストアの基礎
 
SQL Server/SQL Database の新機能のお話し
SQL Server/SQL Database の新機能のお話しSQL Server/SQL Database の新機能のお話し
SQL Server/SQL Database の新機能のお話し
 
SQL Server 2014 データベースエンジン新機能
SQL Server 2014 データベースエンジン新機能SQL Server 2014 データベースエンジン新機能
SQL Server 2014 データベースエンジン新機能
 
DBTS2015_B35_SQLServer2016
DBTS2015_B35_SQLServer2016DBTS2015_B35_SQLServer2016
DBTS2015_B35_SQLServer2016
 
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
MySQL最新情報 ※2015年9月5日「第1回 関西DB勉強会」での発表資料
 
Sql server2014復習とsqlserver2016の紹介
Sql server2014復習とsqlserver2016の紹介Sql server2014復習とsqlserver2016の紹介
Sql server2014復習とsqlserver2016の紹介
 
Managed Instance チートシート
Managed Instance チートシートManaged Instance チートシート
Managed Instance チートシート
 
MySQL 5.7とレプリケーションにおける改良
MySQL 5.7とレプリケーションにおける改良MySQL 5.7とレプリケーションにおける改良
MySQL 5.7とレプリケーションにおける改良
 
MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報
MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報
MySQL Cluster 解説 & MySQL Cluster 7.3 最新情報
 
[C21] MySQL Cluster徹底活用術 by Mikiya Okuno
[C21] MySQL Cluster徹底活用術 by Mikiya Okuno[C21] MySQL Cluster徹底活用術 by Mikiya Okuno
[C21] MySQL Cluster徹底活用術 by Mikiya Okuno
 
Sql server 2014 新機能の紹介
Sql server 2014 新機能の紹介Sql server 2014 新機能の紹介
Sql server 2014 新機能の紹介
 
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解するdb tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
db tech showcase 2019 SQL Database Hyperscale 徹底分析 - 最新アーキテクチャの特徴を理解する
 
Sql server 運用 101
Sql server 運用 101Sql server 運用 101
Sql server 運用 101
 

Ähnlich wie Dat004 開発者に捧ぐ「sql server_2016_

M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]日本マイクロソフト株式会社
 
Snowflake Elastic Data Warehouse as a Service
Snowflake Elastic Data Warehouse as a ServiceSnowflake Elastic Data Warehouse as a Service
Snowflake Elastic Data Warehouse as a ServiceMineaki Motohashi
 
SQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data PlatformSQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data PlatformDaiyu Hatakeyama
 
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスAzure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスMicrosoft
 
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]Hideo Takagi
 
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~Naoki (Neo) SATO
 
AWSのデータベースサービス全体像
AWSのデータベースサービス全体像AWSのデータベースサービス全体像
AWSのデータベースサービス全体像Amazon Web Services Japan
 
【ウェブ セミナー】AI / アナリティクスを支えるビッグデータ基盤 Azure Data Lake [実践編]
【ウェブ セミナー】AI / アナリティクスを支えるビッグデータ基盤 Azure Data Lake [実践編]【ウェブ セミナー】AI / アナリティクスを支えるビッグデータ基盤 Azure Data Lake [実践編]
【ウェブ セミナー】AI / アナリティクスを支えるビッグデータ基盤 Azure Data Lake [実践編]Hideo Takagi
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理junichi anno
 
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio KumazawaInsight Technology, Inc.
 
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応Ryoma Nagata
 
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介Microsoft
 
SQL Azure Management and Security
SQL Azure Management and SecuritySQL Azure Management and Security
SQL Azure Management and Securityjunichi anno
 
Developers.IO 2019 Effective Datalake
Developers.IO 2019 Effective DatalakeDevelopers.IO 2019 Effective Datalake
Developers.IO 2019 Effective DatalakeSatoru Ishikawa
 
Japan SQL Server Users Group - 第31回 SQL Server 2019勉強会 - Azure Synapse Analyt...
Japan SQL Server Users Group - 第31回 SQL Server 2019勉強会 - Azure Synapse Analyt...Japan SQL Server Users Group - 第31回 SQL Server 2019勉強会 - Azure Synapse Analyt...
Japan SQL Server Users Group - 第31回 SQL Server 2019勉強会 - Azure Synapse Analyt...Daiyu Hatakeyama
 
Seas で語られたこととは?
Seas で語られたこととは?Seas で語られたこととは?
Seas で語られたこととは?Masayuki Ozawa
 
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザイン
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザインオープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザイン
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した WebシステムデザインDaisuke Masubuchi
 

Ähnlich wie Dat004 開発者に捧ぐ「sql server_2016_ (20)

[Japan Tech summit 2017] DAL 003
[Japan Tech summit 2017] DAL 003[Japan Tech summit 2017] DAL 003
[Japan Tech summit 2017] DAL 003
 
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
M20_Azure SQL Database 最新アップデートをまとめてキャッチアップ [Microsoft Japan Digital Days]
 
Snowflake Elastic Data Warehouse as a Service
Snowflake Elastic Data Warehouse as a ServiceSnowflake Elastic Data Warehouse as a Service
Snowflake Elastic Data Warehouse as a Service
 
SQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data PlatformSQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data Platform
 
Azure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL PoolベストプラクティスAzure Synapse Analytics 専用SQL Poolベストプラクティス
Azure Synapse Analytics 専用SQL Poolベストプラクティス
 
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
【ウェブ セミナー】AI 時代のクラウド データ ウェアハウス Azure SQL Data Warehouse [実践編]
 
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
 
AWSのデータベースサービス全体像
AWSのデータベースサービス全体像AWSのデータベースサービス全体像
AWSのデータベースサービス全体像
 
【ウェブ セミナー】AI / アナリティクスを支えるビッグデータ基盤 Azure Data Lake [実践編]
【ウェブ セミナー】AI / アナリティクスを支えるビッグデータ基盤 Azure Data Lake [実践編]【ウェブ セミナー】AI / アナリティクスを支えるビッグデータ基盤 Azure Data Lake [実践編]
【ウェブ セミナー】AI / アナリティクスを支えるビッグデータ基盤 Azure Data Lake [実践編]
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理
 
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
 
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
 
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
DXの加速化に力を与えるSQL Serverのモダナイズのオプションを一挙にご紹介
 
SQL Azure Management and Security
SQL Azure Management and SecuritySQL Azure Management and Security
SQL Azure Management and Security
 
Developers.IO 2019 Effective Datalake
Developers.IO 2019 Effective DatalakeDevelopers.IO 2019 Effective Datalake
Developers.IO 2019 Effective Datalake
 
Japan SQL Server Users Group - 第31回 SQL Server 2019勉強会 - Azure Synapse Analyt...
Japan SQL Server Users Group - 第31回 SQL Server 2019勉強会 - Azure Synapse Analyt...Japan SQL Server Users Group - 第31回 SQL Server 2019勉強会 - Azure Synapse Analyt...
Japan SQL Server Users Group - 第31回 SQL Server 2019勉強会 - Azure Synapse Analyt...
 
Seas で語られたこととは?
Seas で語られたこととは?Seas で語られたこととは?
Seas で語られたこととは?
 
Sql azure入門
Sql azure入門Sql azure入門
Sql azure入門
 
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザイン
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザインオープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザイン
オープンソーステクノロジー対応の App Service と Azure Database Servicesを活用した Webシステムデザイン
 
[Japan Tech summit 2017] DAL 001
[Japan Tech summit 2017]  DAL 001[Japan Tech summit 2017]  DAL 001
[Japan Tech summit 2017] DAL 001
 

Mehr von Tech Summit 2016

Microsoft tech summit_稟議書テンプレート
Microsoft tech summit_稟議書テンプレートMicrosoft tech summit_稟議書テンプレート
Microsoft tech summit_稟議書テンプレートTech Summit 2016
 
Prd001 イノベーションを生み出す組織へ!
Prd001 イノベーションを生み出す組織へ!Prd001 イノベーションを生み出す組織へ!
Prd001 イノベーションを生み出す組織へ!Tech Summit 2016
 
他社資格保有者割引
他社資格保有者割引他社資格保有者割引
他社資格保有者割引Tech Summit 2016
 
Tech summitの歩き方 開発者編
Tech summitの歩き方 開発者編Tech summitの歩き方 開発者編
Tech summitの歩き方 開発者編Tech Summit 2016
 
Tech summitの歩き方 データ分
Tech summitの歩き方 データ分Tech summitの歩き方 データ分
Tech summitの歩き方 データ分Tech Summit 2016
 
Tech summitの歩き方 セキュリ
Tech summitの歩き方 セキュリTech summitの歩き方 セキュリ
Tech summitの歩き方 セキュリTech Summit 2016
 
Tech summitの歩き方 クライア
Tech summitの歩き方 クライアTech summitの歩き方 クライア
Tech summitの歩き方 クライアTech Summit 2016
 
Tech summitの歩き方 dev-ops編
Tech summitの歩き方 dev-ops編Tech summitの歩き方 dev-ops編
Tech summitの歩き方 dev-ops編Tech Summit 2016
 
Tech summitの歩き方 azure編
Tech summitの歩き方 azure編Tech summitの歩き方 azure編
Tech summitの歩き方 azure編Tech Summit 2016
 
Spl006 mixed reality_の世界へようこ
Spl006 mixed reality_の世界へようこSpl006 mixed reality_の世界へようこ
Spl006 mixed reality_の世界へようこTech Summit 2016
 
Spl002 microsoft azure_の安全性と法的
Spl002 microsoft azure_の安全性と法的Spl002 microsoft azure_の安全性と法的
Spl002 microsoft azure_の安全性と法的Tech Summit 2016
 
Spl001 経営に効くitプロの
Spl001 経営に効くitプロのSpl001 経営に効くitプロの
Spl001 経営に効くitプロのTech Summit 2016
 
Snr007 red hat_×_azure_で開発と運用
Snr007 red hat_×_azure_で開発と運用Snr007 red hat_×_azure_で開発と運用
Snr007 red hat_×_azure_で開発と運用Tech Summit 2016
 
Snr006 ソフトバンクが考
Snr006 ソフトバンクが考Snr006 ソフトバンクが考
Snr006 ソフトバンクが考Tech Summit 2016
 
Snr005 レノボだから実現
Snr005 レノボだから実現Snr005 レノボだから実現
Snr005 レノボだから実現Tech Summit 2016
 
Snr004 windows server_2016とnvdimmで異次元の
Snr004 windows server_2016とnvdimmで異次元のSnr004 windows server_2016とnvdimmで異次元の
Snr004 windows server_2016とnvdimmで異次元のTech Summit 2016
 
Snr003 次世代型 crm_環境の構
Snr003 次世代型 crm_環境の構Snr003 次世代型 crm_環境の構
Snr003 次世代型 crm_環境の構Tech Summit 2016
 
Snr002 もうvdiだけではない
Snr002 もうvdiだけではないSnr002 もうvdiだけではない
Snr002 もうvdiだけではないTech Summit 2016
 
Snr001 azure iaa_s_応用編~実務で
Snr001 azure iaa_s_応用編~実務でSnr001 azure iaa_s_応用編~実務で
Snr001 azure iaa_s_応用編~実務でTech Summit 2016
 
Sec020 アイデンティティ
Sec020 アイデンティティSec020 アイデンティティ
Sec020 アイデンティティTech Summit 2016
 

Mehr von Tech Summit 2016 (20)

Microsoft tech summit_稟議書テンプレート
Microsoft tech summit_稟議書テンプレートMicrosoft tech summit_稟議書テンプレート
Microsoft tech summit_稟議書テンプレート
 
Prd001 イノベーションを生み出す組織へ!
Prd001 イノベーションを生み出す組織へ!Prd001 イノベーションを生み出す組織へ!
Prd001 イノベーションを生み出す組織へ!
 
他社資格保有者割引
他社資格保有者割引他社資格保有者割引
他社資格保有者割引
 
Tech summitの歩き方 開発者編
Tech summitの歩き方 開発者編Tech summitの歩き方 開発者編
Tech summitの歩き方 開発者編
 
Tech summitの歩き方 データ分
Tech summitの歩き方 データ分Tech summitの歩き方 データ分
Tech summitの歩き方 データ分
 
Tech summitの歩き方 セキュリ
Tech summitの歩き方 セキュリTech summitの歩き方 セキュリ
Tech summitの歩き方 セキュリ
 
Tech summitの歩き方 クライア
Tech summitの歩き方 クライアTech summitの歩き方 クライア
Tech summitの歩き方 クライア
 
Tech summitの歩き方 dev-ops編
Tech summitの歩き方 dev-ops編Tech summitの歩き方 dev-ops編
Tech summitの歩き方 dev-ops編
 
Tech summitの歩き方 azure編
Tech summitの歩き方 azure編Tech summitの歩き方 azure編
Tech summitの歩き方 azure編
 
Spl006 mixed reality_の世界へようこ
Spl006 mixed reality_の世界へようこSpl006 mixed reality_の世界へようこ
Spl006 mixed reality_の世界へようこ
 
Spl002 microsoft azure_の安全性と法的
Spl002 microsoft azure_の安全性と法的Spl002 microsoft azure_の安全性と法的
Spl002 microsoft azure_の安全性と法的
 
Spl001 経営に効くitプロの
Spl001 経営に効くitプロのSpl001 経営に効くitプロの
Spl001 経営に効くitプロの
 
Snr007 red hat_×_azure_で開発と運用
Snr007 red hat_×_azure_で開発と運用Snr007 red hat_×_azure_で開発と運用
Snr007 red hat_×_azure_で開発と運用
 
Snr006 ソフトバンクが考
Snr006 ソフトバンクが考Snr006 ソフトバンクが考
Snr006 ソフトバンクが考
 
Snr005 レノボだから実現
Snr005 レノボだから実現Snr005 レノボだから実現
Snr005 レノボだから実現
 
Snr004 windows server_2016とnvdimmで異次元の
Snr004 windows server_2016とnvdimmで異次元のSnr004 windows server_2016とnvdimmで異次元の
Snr004 windows server_2016とnvdimmで異次元の
 
Snr003 次世代型 crm_環境の構
Snr003 次世代型 crm_環境の構Snr003 次世代型 crm_環境の構
Snr003 次世代型 crm_環境の構
 
Snr002 もうvdiだけではない
Snr002 もうvdiだけではないSnr002 もうvdiだけではない
Snr002 もうvdiだけではない
 
Snr001 azure iaa_s_応用編~実務で
Snr001 azure iaa_s_応用編~実務でSnr001 azure iaa_s_応用編~実務で
Snr001 azure iaa_s_応用編~実務で
 
Sec020 アイデンティティ
Sec020 アイデンティティSec020 アイデンティティ
Sec020 アイデンティティ
 

Kürzlich hochgeladen

Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価sugiuralab
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールsugiuralab
 

Kürzlich hochgeladen (7)

Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価プレイマットのパターン生成支援ツールの評価
プレイマットのパターン生成支援ツールの評価
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
プレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツールプレイマットのパターン生成支援ツール
プレイマットのパターン生成支援ツール
 

Dat004 開発者に捧ぐ「sql server_2016_

  • 1. DAT-004 本情報の内容(添付文書、リンク先などを含む)は、Microsoft Tech Summit 開催日(2016年11月1-2日)時点のものであり、予告なく変更される場合があります。
  • 2. 4 Session Menu SQL Server vs. Azure SQL Database Operational Analytics Stretch DB Temporal Table Always-Encrypt T-SQL Enhancements JSON Support
  • 3.
  • 4. Microsoft SQL Server Continuum 6 Dedicated Higher Cost Shared Lower Cost Higher Administration Lower Administration Platform as a Service(PaaS) Azure SQL Database Virtualized Databases SQL Full Cloud SQL SQL Virtual SQL Server Private Cloud Virtualized Machines + Appliances Hybrid CloudSQL SQL SQL Physical SQL Server Physical Machines (raw iron) On PremisesSQL Infrastructure as a Service(IaaS) SQL Server on Azure VM Virtualized MachinesSQL SQL SQL SQL Server on Azure
  • 5. PaaS / IaaS Layer 7 データベース SQL Server ゲスト OS 仮想化 ホスト OS 容易な管理 Azure SQL Database VM上の SQL Server データベース SQL Server ゲスト OS ホスト OS 仮想化 フルコントロール Azure が管理 利用者が管理
  • 6. SQL Server vs. Azure SQL Database 8 オンプレ運用なら SQL Server SQL Server なら DB 以外の機能も多く搭載 既存システムをクラウドへ!なら、まず SQL Server on VM 管理運用は Azure SQL Database が便利 ……. "Versus" でなく "Together" でやりましょう!
  • 7.
  • 8. Clustered Column Store Index 列ごとのデータを格納することで 集計のパフォーマンスを向上させるテクノロジー • 列単位でのデータ格納と高い圧縮率により IO 量の削減 • これまでの行型のテーブルと比べて 10~100 倍高速な集計処理 • 既存テーブルのインデックスを付け替えるだけで OK 10 列ストア AAA BBB CCC DDD 22 33 44 55 F M M F 行ストア AAA 22 F BBB 33 M CCC 44 M DDD 55 F SQLServer2016 AzureSQLDatabase
  • 9. In-Memory OLTP v2 テーブルとストアドプロシージャをメモリに配置させることで高速化 • 複数ユーザーでの追加・更新・削除操作など同時実行性が極めて高い • カラム ストア インデックスにより集計操作も高速化 • V2 の追加機能 • カラム ストア インデックスのサポート • 最大サイズが 256 GB → 2TB に拡張 • BIN2 以外の照合順序のサポート • 並列プランへの対応 • 64 コア以上での性能向上に対応 • TDE(透過的なデータ暗号化)のサポート 11 ディスク メモリ SQLServer2016 AzureSQLDatabase SQLServer2016 AzureSQLDatabase
  • 10. Operational Analytics Operational と Analytics の双方のワークロードで 同時に両方のパフォーマンスを向上させる仕組み • データの2重持ちの回避および、同期処理・ETL処理・バッチ処理から解放 • Operational ワークロード = OLTP(オンライン トランザクション処理) • Analytics ワークロード = データ集計/分析処理、DWH、夜間バッチ 12 SQLServer2016 AzureSQLDatabase
  • 11. Operational Analytics ハイブリッド格納方式 • 実装パターン 1. インメモリテーブル + クラスター化カラム ストア インデックス 2. ディスクベーステーブル + 非クラスター化カラム ストア インデックス 3. ディスクベーステーブル + クラスター化カラム ストア インデック 13 SQLServer2016 AzureSQLDatabase
  • 12.
  • 13. Stretch Database SQL Server のデータをクラウドの Azure SQL Database に拡張して透過的に利用する仕組み • 同一のテーブルにほとんどアクセスしないデータ(Cold Data)が多く存在するが、 たまに集計などで利用するので別テーブルにはしたくない 15 HOT / Active データ Cold / Fixed データ アプリ HOT / Active データ アプリ • 冗長構成(3重化) • SLA 99.99% • バックアップ自動 • 暗号化サポート Cold / Fixed データ BEFORE AFTER フィルタ関数で 移動する行を指定 SQLServer2016 AzureSQLDatabase Remote Query
  • 14. Stretch Database • 嬉しい • ほとんど参照されない(しかし、たまに必要となる)膨大な過去データをクラウド 側で保持することで低コスト化 • アプリケーションからは透過的にアクセスできるので既存アプリの変更は不要 • 留意点 • Cold データへのアクセスは現状よりも遅くなる可能性があります • Azure SQL Stretch Database へ移動したデータは更新できません • 移動したデータによる UNIQE 制約は適用されません • 未サポート(Stretch Database Advisor で確認可能) • 列の数が1023個以上のテーブル • メモリ最適化テーブル • text, ntext, image, timestamp, XML, CLR データ型を含むテーブル 16 SQLServer2016 AzureSQLDatabase
  • 15.
  • 16. Temporal Table データに対する更新を自動的に履歴テーブルに 保存する仕組みでデータのバージョン管理を容易にする機能 • 過去の任意の時点におけるデータの状態をすぐに見たい(タイムトラベル) • 手間をかけずにデータの変更履歴をしっかりと残しておきたい 18 SQLServer2016 AzureSQLDatabase BEFORE SysStartTime SysEndTime Temporal Table(現在値) History Table(変更履歴) APP SysStartTime SysEndTime 従業員マスター AFTER マスターテーブル 履歴テーブル APP 従業員マスター 5年前って? 5年前って? 2つのテーブルから 複雑なクエリーで 取り出す マスターから 一発で取り出せる
  • 17. Temporal Table • CDC / Change Trackingとの違い • 履歴テーブルに対して別途、クエリーする 必要がない • SQL Server Audit(監査機能)との違い • SQL Server Audit は「監査」目的に特化 • ログインの成功/失敗、パスワード変更な ども監査対象 • クエリー式 • AS OF <date_time> • FROM<start_date_time>TO<end_date_time> • BETWEEN<start_date_time>AND<end_date_time> • CONTAINED IN (<start_date_time> , <end_date_time>) • ALL 19 SQLServer2016 AzureSQLDatabase ID Salary SysStartTime SysEndTime Genius 800 2010 2011 Genius 850 2011 2014 Genius 900 2014 9999 Tappi 1200 2010 2013 Tappi 1400 2013 9999 Shimomo 900 2011 2012 Shimomo 950 2014 2015 2010 2011 2012 2013 2014 2015 NOW2016 Genius Genius Genius Tappi Tappi Shimomo Shimomo
  • 19. Dynamic Data Masking テーブルと列レベルで定義されたポリシーに基づいて クエリー結果にリアルタイムでマスキングする機能 • アプリケーションレベルでなく、システムで処理したい • どのような接続からでも同じようにマスキング処理を施したい 21 SQLServer2016 AzureSQLDatabase ID Salary MyNumber Email Genius 900 3593-2742-2901 genius@microsoft.com Tappi 1400 1234-5678-9012 tappi@microsoft.com Shimomo 950 9876-5432-1098 shimomo@microsoft.com ID Salary MyNumber Email Genius 0 ****-****-**01 gXXX@XXXX.com Tappi 0 ****-****-**12 tXXX@XXXX.com Shimomo 0 ****-****-**98 sXXX@XXXX.com SELECT * FROM Employee [Salary] MASKED WITH (FUNCTION = 'default()'), [MyNumber] MASKED WITH (FUNCTION = 'partial(0, "****-****-**",2)') , [Email] MASKED WITH (FUNCTION = 'email()') テーブル定義で OK
  • 20. Row-Level Security 実行するユーザーの特性に基づいてテーブル行への アクセスを制御する仕組み • 部門単位でアクセス出来る行を絞り、他の行にアクセスさせたくない • 内部犯行の情報漏洩のリスクを最小限に抑えたい 22 SQLServer2016 AzureSQLDatabase ID Dept Salary Genius TOKYO 900 Tappi TOKYO 1400 Shimomo OSAKA 950 ID Dept Salary Genius TOKYO 900 Tappi TOKYO 1400 ID Dept Salary Shimomo OSAKA 950 TOKYOUser が実行した結果 OSAKAUser が実行した結果 RLSフィルタ CREATE FUNCTION Security.fn_dept(@Dept AS sysname) RETURNS TABLE WITH SCHEMABINDING AS RETURN SELECT 1 AS fn_dept_result WHERE @Dept+'User' = USER_NAME() OR USER_NAME() = 'Supervisor CREATE SECURITY POLICY RawFilter ADD FILTER PREDICATE Security.fn_dept(Dept) ON dbo.Employee WITH (STATE = ON)
  • 21. Always Encrypted ディスク上、メモリ上、ネットワーク上で 機密データを暗号化した状態で保護するテクノロジー • 徹底的に機密データを保護したい • データを閲覧できる人や端末を限定したい 23 SQLServer2016 AzureSQLDatabase SQL Server / Azure SQL DatabaseTrusted Client Enhanced ADO.NET Library Column Master KeyGenius Hirai Name SELECT Name FROM Employee WHERE MyNumber =@MyNum @MyNum=‘1234-5678-9012' 暗号化処理と復号化処理はクライアントライブラリ上 @MyNum=0x98ac57ef5568 0x77aa88bb99 Name SELECT Name FROM Employee WHERE MyNumber= 0x98ac57ef5568 Name MyNumber 0x15cc0db26cf 0x7fg655se2e85 0x77aa88bb99 0x98ac57ef5568 0x1d895b6cde7 0y8fj754ea2ccd1 Column Encryption Key メモリ内も暗号化 ストレージ内も暗号化 ネットワーク内も暗号化 Trusted Client Enhanced ADO.NET Library Column Master KeyGenius Hirai Name SELECT Name FROM Employee WHERE MyNumber =@MyNum @MyNum=‘1234-5678-9012' 暗号化処理と復号化処理はクライアントライブラリ上 @MyNum=0x98ac57ef5568 ネットワーク内も暗号化
  • 22.
  • 23. T-SQL Enhancement • DROP IF EXISTS • あれば削除、なければスルー • STRING_SPLIT, STRING_ESCAPE • 文字列操作関数 • SESSION_CONTEXT, sp_set_session_context • セッションレベルの変数 • COMPRESS, DECOMPRESS • GZIP アルゴリズムでの変換および解除 • ALTER TABLE …WITH (ONLINE = ON) • 使用中の状態で列変更を実行 • INSERT … SELECT… • INSERT もパラレル処理に対応 • sp_execute_external_script • 外部スクリプト(R)の実行 25 SQLServer2016 AzureSQLDatabase SQLServer2016 AzureSQLDatabase
  • 24. Tools • SQL Server Management Studio(SSMS) • SQL Server 2016 から個別インストール • Azure AD 認証 / MFA サポート • SQL Server Data Tools(SSDT) • Visual Studio 用の開発アドイン&テンプレート • BI 系のツール(SSDT-BI)も統合して一本化 • SQL Server サンプル データベース • 新サンプルデータベース Wide World Importers を提供 • Azure SQL Database 対応 • ドライバ • Microsoft ADO.NET for SQL Server • Microsoft JDBC Driver for SQL Server • Microsoft ODBC Driver for SQL Server • Node.js Driver for SQL Server • Python Driver for SQL Server • Ruby Driver for SQL Server 26 SQLServer2016 AzureSQLDatabase
  • 25. JSON in SQL REST Web サービス(Web API)で利用されている データ形式である JSON をネイティブにサポート • Web やモバイル アプリとのデータ交換(JSON ↔ Table)を簡略化したい • 半構造化データを RDBMS へ取り込みたい 27 SQLServer2016 AzureSQLDatabase TABLEJSON [ {"ID":"masath","Name":"Genius","Age":53}, {"ID":"tappi","Name":"Hayashi","Age":47}, {"ID":"shimo","Name":"Shimomoto","Age":39}, ] ID Name Age masath Genius 52 tappi Hayashi 47 shimo Shimomoto 39 SELECT * FROM OPENJSON(@json) WITH(…) SELECT * FROM Employee FOR JSON PATH
  • 26.
  • 27. 関連セッション • DAT-001 DAY1 14:00-14:50 クラウドデータウェアハウスは本当に使えるか?Azure SQL Data Warehouse 詳細解説 • DAT-009 DAY1 15:15-16:05 クラウドでビックデータを活用するために ~ 高速データロードについて • DAT-003 DAY2 10:50-11:40 伸縮自在!.NET × Azure SQL Database で実現できる RDBMS のスケールアウト • DAT-008 DAY2 13:10-14:00 進化した AlwaysOn! SQL Server 2016 の AlwaysOn 可用性グループの新機能 • DAT-006 DAY2 15:40-16:30 SQL Server 2016 はとにかく速い! • DAT-011 DAY2 16:55-17:45 HDInsight + Spark + R を活用した機械学習のためのスケーラブルなビッグ データ分析基盤 29
  • 28. まとめ - SQL Server 2016 & Azure SQL Database 30 Operational Analytics という概念 クラウドとのシームレスな連携 開発生産性をさらに追及 セキュリティ機能は最高峰