Session ID: DAT001
本情報の内容(添付文書、リンク先などを含む)は、Microsoft Tech Summit 開催日(2016年11月1-2日)時点のものであり、予告なく変更される場合があります。
2
3
4
• 短期導入
• 低コスト
• フルマネージド
インターネット
回線
5
既存のデータウェアハウス ソリューションにおける課題は? (複数回答)
ある調査によると。。。
0% 5% 10% 15% 20% 25% 30% 35% 40% 45% 50%
43%
38%
37%
37%
33%
32%
30%
19%
3%
柔軟に拡張(スケール)できない
メンテナンス/運用コストが高い
初期投資が高い
教育コストが高い
パフォーマンスが遅い
技術者が少ない
システム導入工数が多い
非構造化データを扱えない
課題は特にない
[Source] “State of the Data Warehouse” survey conducted for Snowflake by Dimensional Research in March 2015 6
どのようにスケーラビリティを高めるのか?
データウェアハウスのワークロードが実行可能?
?
?
○
○
○
7
大量のデータの
投入方法は?
クラウドで
セキュリティは
大丈夫?
8
9
数百テラバイト、数ペタバイトクラスの容量を実現
10
IoT Hub
Data
Catalog
Data
Factory
Event
Hub
SQL Data
Warehouse
Data Lake
Store
HDInsight
Stream
Analytics
Data Lake
Analysis
Machine
Learning
Cortana
Bot
Framework
Cognitive
Service
インテリジェンス
可視化
Power
BI
11
Document
DB
SQL Server テクノロジーを活用した「データウエアハウス」 のPaaSサービス
AzureAzure
Saas
Azure
Public
Cloud
Office 365Office 365
12
どのようにスケーラビリティを高めるのか??
データウェアハウスのワークロードが実行可能??
○
○
○
13
14
大量のデータの
投入方法は?
クラウドで
セキュリティは
大丈夫?
どのように
スケーラビリティ
を高めるのか?
データウェアハウスの
ワークロードが
実行可能?
15
16
大量のデータの
投入方法は?
クラウドで
セキュリティは
大丈夫?
どのように
スケーラビリティ
を高めるのか?
データウェアハウスの
ワークロードが
実行可能?
17
時 間
制御ノード
コンピュート コンピュート
制御ノード
コンピュート コンピュート
追加中
コンピュート
制御ノード
コンピュート コンピュートコンピュート
18
コンピュート
ノード
コンピュート
ノード
コンピュート
ノード
コンピュート
ノード
コントロールノード
ユーザーからの接続と
コンピュートとストレージの調整
Premium ストレージ
D51
D52
D53
D60
…
D41
D42
D43
D50
…
D31
D32
D33
D40
…D21
D22
D23
D30
…
D11
D12
D13
D20
…
D1
D2
D3
D10
…
Azure SQL Data Warehouse は「コントロールノード」、「コンピュートノード」、「ストレージ」の
3層が分離しているので、コンピュートリソースが伸縮自在なのでコストの低減に役立ちます。
最高クラスの
Premium
Storage
(SSD)
コントロール
ノード
19
C1 C1 C2 C1 C2 C3
C1 C2 C3 C4 C5 C6
コンピュートとストレージの割当変更するだけ
20
コンピュートノード数の
指定方法は?
クエリ性能のパワーを表す指標
DWH において最も重要な以下の 3 要素を数値化
• 行のスキャン性能
• ロード性能
• ノード間のコピー性能
スキャン性能 3.36M row/sec
ロード性能 130K row/sec
ノード間のコピー
性能
350K row/sec
100 DWU あたりの参考性能
※参考値であり今後変更される可能性があります
100 DWU= 1 コンピュートノード
21
22
コントロール
ノード
コンピュート
ノード
コンピュート
ノード
Premium ストレージ
D51
D52
D53
D60
…
D41
D42
D43
D50
…
D31
D32
D33
D40
…
D21
D22
D23
D30
…
D11
D12
D13
D20
…
D1
D2
D3
D10
…
23
コントロール
ノード
コンピュート
ノード
コンピュート
ノード
D51
D52
D53
D60…
D41
D42
D43
D50
…
D31
D32
D33
D40
…
D21
D22
D23
D30
…
D11
D12
D13
D20
…
D1
D2
D3
D10
…
コンピュート
ノード
コンピュート
ノード
コンピュート
ノード
コンピュート
ノード
Microsoft Tech Summit
DWU
100
DWU
200
DWU
300
DWU
400
DWU
500
DWU
600
DWU
1000
DWU
1200
DWU
1500
DWU
2000
DWU
3000
DWU
6000
コントロールノード数 1
コンピュートノード数 1 2 3 4 5 6 10 12 15 20 30 60
ストレージ数 60
1 コンピュートノード当りの
ストレージ数 60 30 20 15 12 10 6 5 4 3 2 1
25
26
コントロール
ノード
コンピュート
ノード
コンピュート
ノード
D51
D52
D53
D60
…
D41
D42
D43
D50
…
D31
D32
D33
D40
…
D21
D22
D23
D30
…
D11
D12
D13
D20
…
D1
D2
D3
D10
…
コンピュート
ノード
コンピュート
ノード
コンピュート
ノード
コンピュート
ノード
Azure 最高クラスの Premium Storage (SSD)
27
データ分散方式
均一に全てのストレージに配置 指定されたキーのハッシュ値で分散
同じキーは同じストレージに配置
ROUND_ROBIN
HASH(UserID)
28
ラウンドロビン分散(デフォルト) ハッシュ分散
• 全てのストレージにできるだけ
均等に分散
• ランダムに分散
• 指定した列のハッシュ値に
基づいて分散
• 同じ値は同じストレージに配置
• 小さなディメンション表向き
• 大きなファクト表には適さない
• ローディングは最も高速
• まずハッシュ分散を検討
• 大規模ファクト表向き
• 小さなディメンション表も
可能であれば検討
29
• データの偏りを回避すること
• カーディナリティが高いこと
→ 不向き:都道府県コード、地域コードなど
• 値の偏りが大きい列でないこと(均等に分散させるため)
• NULL 値は 1 つのストレージに集中するので、Null値が
多い列は避ける
• データのノード間の移動を最小化すること
• JOIN, GROUP BY, DISTINCT, HAVING で使用される列
• 結合する両テーブルのキーのデータ型を一致させる
• WHERE 句で使われていない列であること
〇 ×
30
均等に分散
値の偏り
大きい
31
https://azure.microsoft.com/ja-jp/documentation/articles/sql-data-warehouse-overview-what-is/
32
大量のデータの
投入方法は?
クラウドで
セキュリティは
大丈夫?
どのように
スケーラビリティ
を高めるのか?
データウェアハウスの
ワークロードが
実行可能?
33
https://azure.microsoft.com/ja-jp/documentation/articles/storage-import-export-service/
ハードディスク
SATA II/III
Export / Import
サービス
ロード
34
Express Route
お客様のオンプレミス環境と Microsoft Azure 間を接続する高速専用線ネットワークサービスです。
大規模データウェアハウス環境に必要な初期構築、定期的なデータのロード処理を
「高速で安全なネットワーク環境」で実現致します。
35
大量のデータの
投入方法は?
クラウドで
セキュリティは
大丈夫?
どのように
スケーラビリティ
を高めるのか?
データウェアハウスの
ワークロードが
実行可能?
Azureの各国コンプライアンスへの適合状況
(2016年 10月 12日 現在)
https://www.microsoft.com/en-us/TrustCenter/Compliance/default.aspx
ISO
27001
PCI DSS
Level 1
SOC 1
Type 2
SOC 2
Type 2
ISO
27018
Cloud Controls
Matrix v3.0.1
Content Delivery and
Security Association
Shared
Assessments
SOC 3 MPAA
Singapore
MTCS Level 3
United Kingdom
G-Cloud
Australian Signals
Directorate
New Zealand
GCIO
China GB
18030
European Union
Model Clauses
Argentine Data
Protection Act
25.326
China
TRUCS
Canadian
Privacy Laws
FISMAHIPAA /
HITECH
FIPS
140-2
DISA
Level 2
(DIACAP)
FERPAFedRAMP
P-ATO
21 CFR
Part 11
IRS
1075
Section
508
VPATs
NIST
800-171
MARS-E GxP DIACAP
Japan My
Number Act
Japan
Financial
Services
ENISA
IAF
Cloud Security
Mark Gold
Spain ENS FACT EU-US Privacy
Shield
ISO/IEC
27017
China Multi Layer
Protection Scheme
ISO 22301
Germany IT
Grundschutz
workbook 36
クラウドセキュリティ (CS) ゴールドマーク
http://jcispa.jasa.jp/cs_mark_co/cs_gold_mark_co/
37
38
データウェアハウスには重要で機密性の高い情報が含まれています。
Azure SQL Data Warehouse の認証、暗号化、監査機能に加えて、異常な操作を検知して
通知する機構により、重要なデータの流出を防止します。
39
暗号化と監査/脅威検出の設定
40
暗号化の
設定
Transparent Data Encryption
41
監査/脅威
検出の設定
42
大量のデータの
投入方法は?
クラウドで
セキュリティは
大丈夫?
どのように
スケーラビリティ
を高めるのか?
データウェアハウスの
ワークロードが
実行可能?
43
44
Azure SQL Data Warehouseで試してみました
customer
c_custkey bigint
c_name varchar 25
c_address varchar 40
c_nationkey int
c_phone char 15
c_acctbal float
c_mktsegment char 10
c_comment varchar 117
nation
n_nationkey int
n_name char 25
n_regionkey int
n_comment varchar 152
region
r_regionkey int
r_name char 25
r_comment varchar 152
Lineitem
l_orderkey bigint
l_partkey bigint
l_suppkey bigint
l_linenumber bigint
l_quantity float
l_extendedprice float
l_discount float
l_tax float
l_returnflag char 1
l_linestatus char 1
l_shipdate date
l_commitdate date
l_receiptdate date
l_shipinstruct char 25
l_shipmode char 10
l_comment varchar 44
orders
o_orderkey bigint
o_custkey bigint
o_orderstatus char 1
o_totalprice float
o_orderdate date
o_orderpriority char 15
o_clerk char 15
o_shippriority int
o_comment varchar 79
part
p_partkey bigint
p_name varchar 55
p_mfgr char 25
p_brand char 10
p_type varchar 25
p_size int
p_container char 10
p_retailprice float
p_comment varchar 23
partsupp
ps_partkey bigint
ps_suppkey bigint
ps_availqty int
ps_supplycost float
ps_comment varchar 199
supplier
s_suppkey bigint
s_name char 25
s_address varchar 40
s_nationkey int
s_phone char 15
s_acctbal float
s_comment varchar 101
TPC-H(売上分析データウェアハウス)のデータモデル
http://www.tpc.org/tpch/default.asp
45
テーブル名 件数 ファイルサイズ(MB) DB内サイズ(MB)
Supplier 10,000,000 1,382 950
Region 5 0 1
Nation 25 0 1
Part 200,000,000 23,778 9,931
PartSupp 800,000,000 118,724 78,301
Customer 150,000,000 23,782 16,379
Orders 1,500,000,000 173,979 90,316
Line Item
5,999,989,709
(約60億行)
781,771 315,059
46
47
0.00
0.50
1.00
1 5 6 10 15 20
クエリ実行時間相対比率
DWU500 DWU1000 DWU2000 DWU3000
Q Q Q Q Q Q
48
Azure SQL Data Warehouseは、データウェアハウスの分析クエリを高速に処理する
カラムストアインデックスを標準で採用しています。
19.7
10.9 1.8
CI PAGE CCSI
テーブル&インデックス 19.7 GB
ページ圧縮 10.9 GB
クラスタ化カラムストア
インデックス
1.8GB
1/10 以下に圧縮
Microsoft Tech Summit
50
11月1日 15:15 - 16:05 @ Pegasus C
DAT009:
クラウドでビックデータを活用するために
~高速データロードについて
セッションの一部で、Azure SQL Data Warehouse へのデータロードの
パフォーマンスについて説明致します。
51
SQL
Azure SQL
Data
Warehouse
業務 データ
同時実行数
データロード
処理能力
データ蓄積容量
Azure SQL Data Warehouseを初期導入する際には、以下の3つのポイントでどのくらいの
処理性能(DWU)を設定するか見積もることができます。
52
>160 TB
80-160 TB
60-80 TB
48-60 TB
36-48 TB
20-36 TB
16-20 TB
12-16 TB
8-12 TB
4-8 TB
0-4 TB
DWU 100 200 300 400 500 600 1000 1200 1500 2000 3000 6000
データベースに格納するデータ容量のサイズを目安に、おおよその DWU を選択します。以下の図の
ガイドラインの最小 DWU からはじめて実際の負荷とパフォーマンスにあわせて DWU を調整します。
例えば10TBのデータを蓄積して
処理を行いたい場合は、
300~600DWUの値を
初期設定として推奨します。
53
データロード後の圧縮後のサイズ*1
*1: カラムストアベース圧縮前提サイズ。もし行ストアベースで見積る場合は上記表の5倍の値をご利用ください
データロード処理能力
データロードの処理性能は、Polybase を利用する前提(並列データロード)で、1時間あたりのロード可能な
データ量を目安にDWUを選択します。
113 225 338 450 563 675
1125 1350
1688
2250
3375
6750
0
1,000
2,000
3,000
4,000
5,000
6,000
7,000
8,000
100 200 300 400 500 600 1000 1200 1500 2000 3000 6000
GB/Hour
DWU
例えば1時間に500GBのデータロードを
完了したい場合は、500DWU以上の
設定を推奨します。
データサイズで決定したDWUと
比較して大きい方を採用します。
54
GB/時間
4 8 12 16 20 24
40 48
60
80
120
240
0
50
100
150
200
250
300
100 200 300 400 500 600 1000 1200 1500 2000 3000 6000
割り当てられる同時実行スロット数
同時実行の要件があれば、同時実行数(実行スロット)を目安にDWUを選択することができます。
例えば同時実行数が40の場合は、
1000DWU以上を推奨します。
サイズとデータロードで決定した
DWUと比較して大きい方を採用します。
55
※実行可能リクエスト数は上記のDWUで決定されますが、実際の同時アクティブ実行数はリソース制御の観点から
32を上限に設定されていて、瞬間的にこの値を超えるリクエストは実行リクエストキューにキューイングされます。
どのようにスケーラビリティを高めるのか?
データウェアハウスのワークロードが実行可能?
?
?
○
○
56
○ 高拡張性:コンピュートとストレージが分離構造
○ 分析クエリに最適:カラムストアインデックス
+ 高セキュリティ、大量データの投入が可能な専用線サービス
○
57
ぜひお試し下さい!
1 か月間 無償で Azure SQL Data Warehouse(200DWU / 2TB) をお試しいただけます。
期間限定の特別オファーとなりますので、是非ご活用ください。
① 下記 URL にアクセス
http://www.azure.com/SQLDWFreeTrial
② フォームに必要事項を入力
(注意事項)
・利用できるリージョンは以下となります。(日本リージョンは含まれません)
米国西部、米国西部 2、米国中西部、北ヨーロッパ、西ヨーロッパ、東南アジア
・ご利用いただけるリソースおよびデータ量の上限は 200 DWU (Data Warehouse Unit)、2 TB となります。
・Submit をクリックすると、次のステップについて記載されたメールが送られます。
・2016 年 12 月 31 日までにサインアップが必要です。
・1 か月の無償トライアルが終了すると、正規の料金が課金されます。
・インスタンスを削除することでいつでも無償トライアルを終了することができます。
・その他 注意事項については FAQ をご参照ください。
(※) Referral code は、マイクロソフト担当営業にお尋ねください
・・・(※)
③ Submit request
をクリック
58
https://aka.ms/dpb2
https://blogs.msdn.microsoft.com/jpsql/
https://blogs.msdn.microsoft.com/data-platform/
https://azure.microsoft.com/en-us/blog/topics/data-warehouse/
59
Dat001 クラウドデータウ

Dat001 クラウドデータウ