Slide 1

Slide 1 text

Azure Databricks Learning Series ~ #2: Databricks SQL ~

Slide 2

Slide 2 text

スピーカー Hiroyuki Nakazato 中里 浩之 日本マイクロソフト株式会社 カスタマー サクセス事業本部 クラウド ソリューション アーキテクト Yici Chen 陳 いつ 日本マイクロソフト株式会社 カスタマー サクセス事業本部 カスタマー エンジニア

Slide 3

Slide 3 text

アジェンダ 1. Databricks SQL (DB SQL) の概要 2. DB SQL の特長 3. DB SQL の最新情報 4. DB SQL の価格の考え方 5. DB SQL と Azure サービスを組み合わせた ノーコード ETL とデータ分析の アーキテクチャー紹介 & デモ

Slide 4

Slide 4 text

Databricks SQL の概要 • レイクハウス プラットフォームとは • Databricks SQL とは

Slide 5

Slide 5 text

データと分析に関する現在のユーザー ニーズ 生データ 整理されたデータ あらゆるユース ケース向けの コラボレーション プラットフォーム • データ エンジニア、データ サイエンティスト、アナリスト 向けのネイティブ サポート • 主要な言語とフレームワークの利用 すべてのデータに対する専用のデータ レイク • 低コストで耐久性の高いクラウド ストレージ • あらゆるデータの種類に対するネイティブ サポート • データはユーザー アカウント内に保持 レイク上の構造化された トランザクション レイヤー • バッチとストリーミングのサポート • ロックインなしのデータ レイク上のオープン形式 • ガバナンス、系列、セキュリティ データ サイエンスと 機械学習 分析、 BI、AI データ エンジニアリングと ストリーミング 大規模/小規模 高頻度/低頻度 構造化/半構造化 /非構造化

Slide 6

Slide 6 text

データ ウェアハウス データ レイク レイクハウス あらゆるデータ、分析、AI ワークロードを 統合する単一のプラットフォーム パラダイム シフト: レイクハウス

Slide 7

Slide 7 text

Microsoft Azure 上でのレイクハウス プラットフォーム Delta Lake Azure Data Lake Storage Gen 2 構造化データ 半構造化データ 非構造化データ 生データ 整理されたデータ BI・ダッシュボード ノーコード/ローコード データ パイプライン SQL ベースの分析 機械学習 データ エンジニアリング データ サイエンス レイク ハウス Microsoft Azure ストリーミング データ

Slide 8

Slide 8 text

Databricks SQL データ レイクを標準的な SQL で分析し リッチなダッシュボードで可視化できる機能 Unity Catalog SQL ウェアハウス Photon エンジン キャッシュ (クエリ結果 / ディスク / UI) Curated data 整理されたデータ SQL エディター ダッシュボード アナリスト エクスペリエンス 管理者エクスペリエンス ✓ アナリストと管理者向けの優れた UI/UX ✓ マルチ クラスターの高性能なコンピューティング (Photon エンジン & 豊富なキャッシュ) ✓ データ アクセスとメタデータを一元管理できる データ ガバナンス ソリューション ✓ オープンで高性能、ACID を実現する 最新のデータ マネジメント・テクノロジー ✓ Premium レベルのワークスペースで利用可能

Slide 9

Slide 9 text

Databricks SQL の歴史  2020 年 4 月 Databricks 社が Redash 社を買収  2020 年 11 月 Databricks SQL のパブリック プレビューを開始  2021 年 12 月 Databricks SQL の一般提供を開始 OSS のメジャーなダッシュボード ツール 多くのデータ ソースへの接続、クエリでの分析、 リッチなダッシュボードによる可視化

Slide 10

Slide 10 text

Databricks SQL の主要機能 SQL 分析やダッシュボードやアラート機能に加えて主要 BI ツールと JDBC/ODBC 接続に対応 機能 概要 SQL 分析 Azure Data Lake Storage Gen2 や Amazon S3 などのクラウド ストレージに 格納されているデータを ANSI 標準 SQL 準拠の SQL で分析 ダッシュボード SQL の実行結果をリッチなダッシュボードで可視化 アラート SQL をスケジュール実行し、特定のフィールドが事前定義した閾値を 超えたらアラートによって通知 BI ツール サポート Power BI, Tableau, Looker, Qlik Sense, MicroStrategy などの 主要な BI ツールから接続可能 (一覧は Databricks パートナー を参照) JDBC/ODBC ドライバー サポート JDBC/ODBC ドライバーを利用して任意のプログラムから接続可能

Slide 11

Slide 11 text

アナリスト エクスペリエンス ✓ データベースとテーブルを簡単に探索し、 使い慣れた ANSI SQL でデータを 分析する ✓ インタラクティブなビジュアライゼーション で結果をすばやく理解する ✓ クエリを保存・共有・再利用して、 より迅速に結果を得られる 新しいインサイトをすばやく見つける

Slide 12

Slide 12 text

SQL ウェアハウス ✓ SQL 分析と BI に最適化された 計算リソースを素早くセットアップ ✓ 自動スケールによる高いコンカレンシー ✓ 自動停止やスポット インスタンスの 活用によるコスト最適化 ✓ サーバーレス (プレビュー) で利用可能 高性能かつスケーラブル、ストレージと完全に分離された計算リソース

Slide 13

Slide 13 text

管理者エクスペリエンス ✓ ウェアハウスごとに処理クエリ数や クラスター数の増減の推移を監視 ✓ 使用状況の適切な理解とサイジングの 最適化に役立てられる SQL ウェアハウスの監視とサイジング

Slide 14

Slide 14 text

管理者エクスペリエンス ✓ SQL ウェアハウスで実行した全クエリが クエリ履歴に記録される ✓ クエリごとの実行時間や処理データ量、 返却行数や I/O パフォーマンスを確認 ✓ クエリ プロファイル (クエリ実行の詳細の 視覚化) や Spark Web UI による 詳細なトレース ✓ ボトルネックやコストのかかる操作を特定 してクエリを改善 クエリの理解と最適化

Slide 15

Slide 15 text

管理者エクスペリエンス ✓ 新しいユーザーの利用開始、データの検 出・保護・管理を確実に実行 ✓ ウェアハウスの監視とクエリ履歴により コストと使用状況を効率的に管理 ✓ 組込の監査証跡によりコンプライアンスの ニーズに対応 セルフ サービス分析のガバナンスを容易に行える

Slide 16

Slide 16 text

• 高性能 • 高スケーラビリティ • 高コスト性能 Databricks SQL の特長

Slide 17

Slide 17 text

Databricks SQL の 3 つの特長 1 高スケーラビリティ 2 高性能 3 高コスト性能 • ストレージとコンピュートの 完全な分離 • マルチ クラスター • 自動スケール • Photon エンジン • 複数のキャッシュ • Delta Lake に最適化 • スポット VM の活用 • 自動停止 • DBU の事前購入割引 • サーバーレス (プレビュー)

Slide 18

Slide 18 text

Databricks SQL のアーキテクチャー ✓ Azure Databricks ワークスペース内に 複数の SQL ウェアハウスを作成可能 ✓ ウェアハウスは 1 つ以上のクラスターで構成 ✓ ウェアハウスを構成するクラスター数を増やす ことでクエリの同時実行性能を向上 ✓ クラスター サイズを上げることで処理性能が 向上し、クエリの待機時間を短縮 ✓ 自動スケールを設定することでクエリの処理 状況に応じてクラスター数が自動的に増減 ストレージとコンピューティングが完全に分離、高いスケーラビリティを持つ SQL Warehouse #1 Cluster #N Driver Node … SQL Warehouse #N Cluster #N Driver Node … … … Cluster #1 Driver Node … Worker Nodes Worker Nodes Worker Nodes ADLS Gen2 などのクラウド オブジェクト ストレージ Application or User connection Application or User connection

Slide 19

Slide 19 text

クラスター サイズと仮想マシン (VM) の対応  クラスター サイズ: 2X-Small から 4X-Large (T シャツ サイジングと表現)  ドライバー ノード: クラスター サイズに応じて VM のスペックが変動、台数は 1 固定  ワーカー ノード: クラスター サイズに応じて VM の台数が変動、スペックは Standard_E8ds_v4 固定 クラスター サイズ ドライバー ノード スペック ドライバー ノード 台数 ワーカー ノード スペック ワーカー ノード 台数 DBU 2X-Small Standard_E8ds_v4 1 Standard_E8ds_v4 1 4 X-Small Standard_E8ds_v4 1 Standard_E8ds_v4 2 6 Small Standard_E16ds_v4 1 Standard_E8ds_v4 4 12 Medium Standard_E32ds_v4 1 Standard_E8ds_v4 8 24 Large Standard_E32ds_v4 1 Standard_E8ds_v4 16 40 X-Large Standard_E64ds_v4 1 Standard_E8ds_v4 32 80 2X-Large Standard_E64ds_v4 1 Standard_E8ds_v4 64 144 3X-Large Standard_E64ds_v4 1 Standard_E8ds_v4 128 272 4X-Large Standard_E64ds_v4 1 Standard_E8ds_v4 256 528

Slide 20

Slide 20 text

マルチ クラスターのクエリ割り当てに関する仕様 ✔ 1 クラスターに割り当てられるクエリ数  以前は Docs に 10 クエリ / クラスターの記載があったが、現在はクエリの計算コストに基づく割り当てに変更 ✔ クエリのルーティング  新しいセッション:最も負荷が低いクラスターにルーティング  既存のセッション:そのセッションの前のクエリを実行したクラスターにルーティング (そのクラスターが利用 できない場合は最も負荷が低いクラスターにルーティング) ✔ クエリのキューイング  ウェアハウスが STARTING 状態または、すべてのクラスターが処理能力の限界までクエリを実行しているとき、 クエリはキューに登録される ※ ウェアハウスが STARTING 状態の場合を除き、メタデータ クエリ (DESCRIBE table など) や 状態の変更クエリ (SET など) はキューに登録されない Databricks SQL ウェアハウスとは - Azure Databricks - Databricks SQL | Microsoft Learn

Slide 21

Slide 21 text

クラスター数の自動スケールの仕様 ✔ 自動スケール アウトの仕様  実行中のクエリ & キュー内のクエリ & 次の 2 分間に予想される受信クエリの予測処理時間を元に判定する  上記にかかわらず、キュー内で 5 分以上待機しているクエリが存在する場合、クラスターを追加する ✔ 自動スケール インの仕様  低負荷の状態が 15 分間続いた場合にクラスターを縮小する  この場合、過去 15 分間のピーク負荷を処理するのに十分なクラスターが維持される  例:ピーク負荷が 25 の同時クエリの場合、3 つのクラスターが維持される Databricks SQL ウェアハウスとは - Azure Databricks - Databricks SQL | Microsoft Learn 予測処理時間 自動スケール アウトの仕様 2 分未満の場合 クラスターを追加しない 2 分から 6 分の場合 1 クラスターを追加 6 分から 12 分の場合 2 クラスターを追加 12 分から 22 分の場合 3 クラスターを追加 上記以外の場合 3 クラスター + 予測処理時間が 15 分増加するごとに 1 クラスターを追加

Slide 22

Slide 22 text

SQL ウェアハウスのクラスター サイズとクラスター数の増加 クラスター #1 ドライバー: Standard_E16ds_v4 × 1 ワーカー: Standard_E8ds_v4 × 4 SQL ウェアハウス サイズ: Small, クラスター数: 1 クラスター #1 ドライバー: Standard_E32ds_v4 × 1 ワーカー: Standard_E8ds_v4 × 8 サイズ: Medium, クラスター数: 1 クラスター サイズ アップ ドライバーのスペック アップとワーカー台数増加 ✔ 性能アップによりクエリの待機時間が短縮 ✔ ディスク キャッシュの容量が増加 サイズ: Small, クラスター数: 2 クラスター #1 ドライバー: Standard_E16ds_v4 × 1 ワーカー: Standard_E8ds_v4 × 4 クラスター #2 ドライバー: Standard_E16ds_v4 × 1 ワーカー: Standard_E8ds_v4 × 4 クラスター数 増加 同じ構成のクラスターが追加 ✔ クエリの同時実行性能が向上

Slide 23

Slide 23 text

Databricks SQL が TPC-DS 100TB での世界記録を更新 2021 年 11 月の発表 - TPC-DS 100TB クラスで他社 DWH と比較して 2.7 倍高速、価格性能において 12 倍優れているとの結果を公式に公開 (出典) Databricks が DWH パフォーマンスの公式記録を更新 - Databricks ブログ

Slide 24

Slide 24 text

Photon エンジン ✓ Databricks 社がネイティブ コード (C++) で 新しく開発したベクトル化クエリ エンジン ✓ Apache Spark と 100% の互換性を持つ ✓ 生データと列指向形式の構造化データの 両者に対して優れた性能を発揮 ✓ 以前の Databricks ランタイムから 2 倍 以上の高速化 ✓ Databricks SQL は Photon エンジンが デフォルトで有効化 レイクハウス プラットフォームのための次世代高速クエリ エンジン

Slide 25

Slide 25 text

SQL ウェアハウスのキャッシュ 複数のキャッシュが自動的に適用され、大幅な性能向上に寄与 User BI Application / SQL Connection SQL Warehouse #1 Cluster #1 Driver Node Worker Nodes Worker Nodes ディスク キャッシュ (旧称 Delta キャッシュ) クラウド ストレージの Delta Lake & Parquet のデータを ワーカー ノードのローカル SSD にキャッシュ 同一のデータの 2 回目以降の読み取りを大幅に高速化 クエリ結果のキャッシュ SQL ウェアハウスを介した全クエリの結果セット キャッシュ • 小さな結果セット (1MB 未満) → On Cluster (Driver Node) • 大きな結果セット (1MB 以上) → On Cloud Storage 同一のクエリの 2 回目の結果返却を大幅に高速化 Databricks SQL UI キャッシュ クエリとダッシュボードのユーザーごとのキャッシュ (on DBFS) SQL ウェアハウスを停止していてもダッシュボード表示が可能 Delta Table クエリキャッシュ-Azure Databricks - Databricks SQL | Microsoft Docs How to Extract Large Query Results Through Cloud Object Stores - The Databricks Blog

Slide 26

Slide 26 text

ディスク キャッシュ クラウド ストレージ上の Delta Lake および Parquet 形式のデータの最初の読み取り時に ワーカー ノードのローカル SSD にキャッシュ、2 回目以降の読み取りを大幅に高速化 項目 説明 キャッシュ対象のデータ クエリで処理するデータ (クエリ結果キャッシュではない) キャッシュ対象のデータ形式 Delta Lake および Parquet 形式のデータ キャッシュのトリガー 最初の読み取り時に自動的に実行 キャッシュの強制 CACHE SELECT コマンドでデータをキャッシュに事前に読み込める パフォーマンス インメモリの Spark キャッシュよりも高速に読み取り可能:高速な中間データ形式で格納 & 効率的な アルゴリズムで展開 キャッシュの一貫性 ディスク キャッシュがデータ ファイルの作成・削除・更新を自動的に検知しキャッシュに反映:ユーザーが 明示的にキャッシュの無効化や更新を行う必要はない キャッシュの削除 LRU (Least Recently Used; 最後の使用から最も時間が経過した) データを自動的に削除 クラスターの再起動によってもキャッシュは削除される キャッシュの容量 ワーカー ノードのローカル SSD の使用可能な領域の半分を利用 (Standard_E8ds_v4 のローカル SSD は 300 GiB = 150 GiB をディスク キャッシュに利用) Azure Databricks でキャッシュを使用してパフォーマンスを最適化する - Azure Databricks | Microsoft Learn

Slide 27

Slide 27 text

ディスク キャッシュ クラウド ストレージ上の Delta Lake および Parquet 形式のデータの最初の読み取り時に ワーカー ノードのローカル SSD にキャッシュ、2 回目以降の読み取りを大幅に高速化 項目 説明 キャッシュ対象のデータ クエリで処理するデータ (クエリ結果キャッシュではない) キャッシュ対象のデータ形式 Delta Lake および Parquet 形式のデータ キャッシュのトリガー 最初の読み取り時に自動的に実行 キャッシュの強制 CACHE SELECT コマンドでデータをキャッシュに事前に読み込める パフォーマンス インメモリの Spark キャッシュよりも高速に読み取り可能:高速な中間データ形式で格納 & 効率的な アルゴリズムで展開 キャッシュの一貫性 ディスク キャッシュがデータ ファイルの作成・削除・更新を自動的に検知しキャッシュに反映:ユーザーが 明示的にキャッシュの無効化や更新を行う必要はない キャッシュの削除 LRU (Least Recently Used; 最後の使用から最も時間が経過した) データを自動的に削除 クラスターの再起動によってもキャッシュは削除される キャッシュの容量 ワーカー ノードのローカル SSD の使用可能な領域の半分を利用 (Standard_E8ds_v4 のローカル SSD は 300 GiB = 150 GiB をディスク キャッシュに利用) Medium サイズのクラスターの場合、 ワーカー ノード × 8 台 = 計 1.2TiB のローカル SSD を ディスク キャッシュに利用可能 Azure Databricks でキャッシュを使用してパフォーマンスを最適化する - Azure Databricks | Microsoft Learn

Slide 28

Slide 28 text

SQL ウェアハウスの分け方のアイディア  複数チームでウェアハウスを活用する場合、単一の巨大なウェアハウスを運用するよりも 用途や利用者などの観点でウェアハウスを分ける方が管理が容易  異なるウェアハウスでも同一のデータにアクセス可能なのがポイント  メリット:負荷の集中回避、タグによる課金の明確化、停止などの調整が容易 全社ダッシュボード用ウェアハウス (Small, Min=1, Max=2) データ アナリスト チーム用ウェアハウス (Medium, Min=1, Max=4) BI チーム用ウェアハウス (Large, Min=1, Max=2) ADLS Gen2 などのクラウド オブジェクト ストレージ

Slide 29

Slide 29 text

• Databricks SQL サーバーレス (プレビュー) • Unity Catalog Databricks SQL の最新情報

Slide 30

Slide 30 text

SQL ウェアハウスのタイプと提供機能 SQL ウェアハウス 機能概要 提供機能 Classic Self managed, introductory SKU, compute in your account Pro Self managed, advanced SKU, compute in your account Serverless* Fully managed, elastic, best value アドホック SQL クエリ SQL エディタ ● ● ● ANSI SQL ● ● ● データ マネジメント ガバナンス クエリ履歴 & クエリプロファイル ● ● ● Unity Catalog 向け Data Explorer ● ● ● Managed Data Sharing ● ● ● 接続性 Partner Connect ● ● ● SQL Rest API, Python, Node.js, Go* ● ● ● パフォーマンス Photon ● ● ● Predictive I/O ● ● SQL ETL/ELT Query フェデレーション* ● ● Materialized View * ● ● Workflows 統合* ● ● データ サイエンス ML Geospatial 関数 ● ● Python UDF* ● ● Notebook Integration* ● ● サーバーレス SQL データ ウェアハウス フル マネージド コンピュート ● Intelligent Workload Management* ● Serverless Query Result Caching* ● What are the SQL warehouse types? - Azure Databricks - Databricks SQL | Microsoft Learn Databricks SQL Azure Pricing - Databricks * プレビュー機能

Slide 31

Slide 31 text

Databricks SQL サーバーレスの特長 1 高い生産性 2 フル マネージド 3 コスト削減 • ユーザーのクエリはすぐに開始、 クラスタ起動を待つ必要なし • 即時のクラスタ スケーリングで 更なる同時利用ユーザーに対応 • 構成不要 • パフォーマンス チューニング不要 • キャパシティ管理不要 • 自動アップグレード / パッチ適用 • 使った分だけの支払い; クラスタのアイドル時間を削減 • リソースの過剰プロビジョニングを 抑止 • 最終クエリ実行から 10 分の アイドル待ち容量を削除

Slide 32

Slide 32 text

なぜ Databricks SQL サーバーレスが作られたのか? クラスターの起動時間を短縮したいという多数のユーザー要望に応えるため Quicker cluster startup times · Community (azure.com)

Slide 33

Slide 33 text

Databricks SQL サーバーレスで何が変わるのか? マネージドなサーバー群 常時起動しているサーバー群は、自動的にパッチ適用 / アップグレードされる ... 最適化されたキャパシティ デフォルトでは最後のクエリから 10 分経過したアイドル クラスタは 除去される Serverless SQL Compute セキュア データ暗号化を含めた 3 レイヤーの分離 即時のコンピュート ユーザーはクラスターの起動 / スケール アップ時に 10 秒以内に 計算リソースが割り当てられるため待ち時間がほぼない

Slide 34

Slide 34 text

従来の Databricks SQL のコンピューティング リソースの配置 データ プレーンはユーザーが管理する Azure サブスクリプションに配置 Azure Databricks ワークスペース VNET ワークスペース ワークスペース Customers Account ユーザー管理の Azure サブスクリプション Azure Databricks サービス ユーザー管理のクラウド ストレージ データ プレーン (クラスターを構成する VM 群と周辺リソース) コントロール プレーン

Slide 35

Slide 35 text

Databricks SQL サーバーレスのコンピューティング リソースの配置 データ プレーンは Azure Databricks が管理するサブスクリプションに配置 Azure Databricks ワークスペース ワークスペース ワークスペース Customers Account ユーザー管理の Azure サブスクリプション Azure Databricks サービス ユーザー管理のクラウド ストレージ Databricks SQL サーバーレス用データ プレーン コントロール プレーン

Slide 36

Slide 36 text

従来のクラスターとサーバーレスの初回応答までの時間比較 ✓ Classic または Pro の場合、 クラスターの起動完了まで (VM の台数 によるが) 5-7 分程度待つ必要がある ✓ サーバーレスはユーザー リクエストを受けて 概ね 10 秒以内にコンピューティング リソースの準備が完了 ✓ さらなる時間短縮 (2-4 秒まで短縮) を 目標に開発が進行中 サーバーレスは初回のクエリ応答速度が大幅に向上 ~10s ~2-4s ~7m

Slide 37

Slide 37 text

Databricks SQL サーバーレスは Azure ストレージ アカウントの 仮想ネットワーク サービス エンドポイントに対応 サービス エンドポイント: Azure リソースへのアクセスを特定の Vnet のサブネットからの通信に 限定できる機能、通信は常に Azure のバックボーン ネットワークを通るなどの特長を持つ サーバーレスが利用する VNet とサブネットの一覧が以下 Docs で公開されており、それらを ストレージ アカウントのファイア ウォールで許可する形 Configure Azure storage firewalls to allow access from serverless SQL warehouses https://learn.microsoft.com/ja-jp/azure/databricks/sql/admin/serverless-firewall NW セキュリティが必須の組織でもサーバーレスを安心して利用できる

Slide 38

Slide 38 text

Databricks SQL サーバーレスの利用開始にあたっての考慮点 2023 年 1 月現在の情報  パブリック プレビューのステータス  利用可能なリージョンは米国東部、米国東部 2、西ヨーロッパ  利用開始にあたって申請が必要 (申請フォームについても以下 URL に記載あり) 最新の情報については以下 URL を参照 https://learn.microsoft.com/ja-jp/azure/databricks/serverless-compute/

Slide 39

Slide 39 text

Unity Catalog: メタデータとユーザーの一元管理 データ エステートの統一ビューを作成 Unity Catalog なし Databricks Workspace 2 Databricks Workspace 1 User Management Metastore Clusters SQL Warehouses User Management Metastore Clusters SQL Warehouses Access Controls Access Controls ワークスペース単位で ユーザーとメタデータを管理 Databricks Workspace Databricks Workspace Unity Catalog User Management Metastore Clusters SQL Warehouses Clusters SQL Warehouses Access Controls Unity Catalog あり ユーザーとメタデータ管理が Unity Catalog に一元化

Slide 40

Slide 40 text

Unity Catalog によるデータ ガバナンス 以下の 4 つの分野をカバー 分野 概要 データ アクセス コントロール 誰がどのデータにアクセスするかをコントロール データのリネージ 上流のデータソースと下流データソースを追跡する データ ディスカバリー 資産を検索して発見する機能 データ アクセス監査 データへのすべてのアクセスを捕捉し、記録する

Slide 41

Slide 41 text

3 階層のネーム スペース 既存のメタストアへのシームレスなアクセス 41 SELECT * FROM main.paul.red_wine; -- .. SELECT * FROM hive_metastore.default.customers; Unity Catalog Catalog 2 Catalog 1 Database 2 Database 1 External Table Views External Tables Managed Tables hive_metastore (legacy) default (database) customers (table)

Slide 42

Slide 42 text

データ アクセス コントロールの一元管理 アクセス許可の承諾 (Grant) と管理を Unity Catalog で一元的に行える 42 GRANT ON TO `` GRANT SELECT ON iot.events TO engineers Choose permission level Sync groups from your identity provider ‘Table’= collection of files in ADLS/S3 Using ANSI SQL DCL Using UI

Slide 43

Slide 43 text

• Azure Databricks の価格 • サーバーレス以外 (Classic と Pro) • サーバーレス • コスト削減 Databricks SQL の価格の考え方

Slide 44

Slide 44 text

Azure Databricks の構成 ⚫ ソフトウェア レイヤー : Databricks Unit (DBU) 単位による時間課金 ⚫ インフラ レイヤー : Azure リソース課金

Slide 45

Slide 45 text

Azure VM コスト ⚫ サーバーレス 以外のインフラ課金は 9 割が VM 課金 ⚫ VM 課金は使用量関係なく、利用時間で算出 計算式 : VM コスト = VM 単価 × インスタンス数 × 稼働時間 注: ➢ インフラ リソース : VM 、マネージド ディスク、 Blob Storage 、パブリック IP アドレスなど ➢ サーバーレスのコンピューティングは Azure ではなく Databricks サブスクリプションに存在し、 インフラ レイヤーの VM 課金は発生せず、ソフトウェア レイヤー課金に包含

Slide 46

Slide 46 text

Azure Databricks の課金 課金額全体 タイプ • VM • マネージド ディスク • Blob Storage • パブリック IP アドレス ソフトウェア レイヤー : Databricks インフラ レイヤー : Azure Data Science & Engineering SQL • Classic • Pro • サーバーレス

Slide 47

Slide 47 text

DBU コスト ⚫ サーバーレス以外の DBU コストは使用量関係なく、経過時間で算出 ⚫ クラスター立ち上げ後ノータッチでも、経過時間で費用が発生 計算式: DBU コスト = クラスターの DBU 数 × クラスター数 × DBU の料金 × 稼働時間 注: ➢ クラスターの DBU 数はクラスター サイズによる ➢ クラスター数はスケーリングで最大最小を指定 ➢ DBU の料金はリージョン、ワークロード、価格レベルによる ➢ Classic と Pro の価格レベルは Premium のみ

Slide 48

Slide 48 text

Databricks SQL のクラスター

Slide 49

Slide 49 text

DBU の料金 (東日本リージョン) https://azure.microsoft.com/ja-jp/pricing/details/databricks/ (2023 年 1 月 10 日時点の情報) (Type: Classic ) (Type: Pro)

Slide 50

Slide 50 text

DBU コスト (計算例) 計算式 : (東日本の場合) DBU コスト = クラスターの DBU 数 × クラスター数 × DBU の料金 × 稼働時間 24 1 0.22 5.28 $/hour =

Slide 51

Slide 51 text

DBU コスト ⚫ サーバーレスの DBU コストは使用量で算出 ⚫ クラスターはクエリ後 10 秒以内に起動 ⚫ デフォルトで最終クエリ 10 分経過でクラスター除去 計算式 : DBU コスト = クラスターの DBU 数 × クラスター数 × DBU の料金 × 稼働時間 稼働時間 =クエリ時間 + アイドル時間 注: ➢ クラスターの DBU 数は全ワークロード共通 ➢ サーバーレス対応 (パブリック プレビュー) リージョン : 米国東部 (eastus)、米国東部 2 (eastus2)、西ヨーロッパ (westeurope) (2023 年 1 月 10 日時点) ➢ DBU の料金はワークロードと価格レベルによる ➢ 価格レベルはワークスペース作成時指定 ➢ サーバーレスの価格レベルは Premium のみ

Slide 52

Slide 52 text

DBU の料金 (東日本リージョン) 注: ➢ https://azure.microsoft.com/ja-jp/pricing/details/databricks/ (2023 年 1 月 10 日時点の情報) ➢ 東日本・西日本リージョンではサーバーレスは未対応 (Type: Classic) (Type: Pro)

Slide 53

Slide 53 text

方法 1 : DBU の事前購入 ⚫ DBU の料金は事前購入でコスト削減可能 ⚫ 1 年か 3 年の事前購入で最大 37% 節約 DBU コストの計算式 : DBU コスト = クラスターの DBU 数 × クラスター数 × DBU の料金 × 稼働時間

Slide 54

Slide 54 text

事前購入プラン https://azure.microsoft.com/ja-jp/pricing/details/databricks/ (2023 年 1 月 10 日時点情報) 1 年間プラン 3 年間プラン

Slide 55

Slide 55 text

方法 2 : 自動スケール (サーバーレス以外の場合) ⚫ スケーリング設定でクラスターの最大・最小を指定 ⚫ 負荷が低い状態が続くとクラスターを自動削減 ⚫ 無駄なリソースを減らしコスト削減が可能 サーバーレス以外の DBU コストの計算式 : DBU コスト = クラスターの DBU 数 × クラスター数 × DBU の料金 × 稼働時間

Slide 56

Slide 56 text

方法 3 : スポット インスタンス ポリシー (サーバレス以外の場合) ・ コスト最適化 (既定)  ワーカー ノードをスポット VM で起動 ( ドライバーはオンデマンド )  スポット VM はオンデマンドの 80%+ のコスト節約  考慮事項  起動時にリージョンに余剰の VM がない場合、オンデマンドで起動  起動している際にリージョンに余剰の VM がなくなった場合、オンデマンドで再起動 ・ 信頼性最適化  ドライバー、ワーカーをオンデマンドで起動  クラスターを確実に起動したい場合や、 VM の予約容量適用の際はこちらを選択

Slide 57

Slide 57 text

Azure Databricks の課金 (再掲) 課金額全体 Type • VM • マネージド ディスク • Blob Storage • パブリック IP アドレス ソフトウェア レイヤー : Databricks インフラ レイヤー : Azure Data Science & Engineering SQL • Classic • Pro サーバーレス

Slide 58

Slide 58 text

Databricks SQL と Azure サービスを組み合わせた ノーコード ETL とデータ分析 アーキテクチャー紹介 & デモ

Slide 59

Slide 59 text

Azure Databricks を中心としたデータ パイプライン Azure Data Lake Storage Gen2 Azure Databricks ゴールド ブロンズ シルバー ノートブック Azure Databricks プログラミングを用いたデータ加工 1 Databricks で満たせるニーズ SQL を用いたデータ分析・可視化 2 クラウド ストレージへの生データ格納 1 チャレンジ ノー コードのデータ加工のニーズへの対応 2 セルフ サービス BI のニーズへの対応 3 Python, JAR etc. Databricks SQL データ加工 データ分析 オンプレミス クラウド データ ? 生データ 1 ? 2 ? 3

Slide 60

Slide 60 text

Databricks + Azure サービスを組み合わせたデータ パイプライン Azure Data Lake Storage Gen2 Azure Databricks ゴールド ブロンズ シルバー ノートブック Azure Databricks Python, JAR etc. Databricks SQL データ加工 データ分析 Azure Data Factory Synapse パイプライン マッピング データ フロー Power BI PBI Desktop PBI Services オンプレミス クラウド データ コピー アクティビティ 生データ Azure Data Factory Synapse パイプライン プログラミングを用いたデータ加工 1 Databricks で満たせるニーズ SQL を用いたデータ分析・可視化 2 クラウド ストレージへの生データ格納 1 チャレンジ ノー コードのデータ加工のニーズへの対応 2 セルフ サービス BI のニーズへの対応 3 利用する Azure サービス Azure Data Factory / Azure Synapse Analytics の パイプライン機能 Microsoft Power BI

Slide 61

Slide 61 text

Databricks + Azure サービスを組み合わせたデータ パイプライン Azure Data Lake Storage Gen2 Azure Databricks ゴールド ブロンズ シルバー ノートブック Azure Databricks Python, JAR etc. Databricks SQL データ加工 データ分析 Azure Data Factory Synapse パイプライン マッピング データ フロー Power BI PBI Desktop PBI Services オンプレミス クラウド データ コピー アクティビティ 生データ Azure Data Factory Synapse パイプライン Azure Databricks で 専門のデータ エンジニア のニーズを充足できる Azure サービスを組み合わせることで 市民データ エンジニア のニーズを充足できる

Slide 62

Slide 62 text

Azure Data Factory / Synapse パイプライン データのコピーや ETL 処理をスケジュールやイベント ベースのトリガーで実行する PaaS 型サービス • 100 以上の組み込みのコネクター、Azure 内外を問わず対応 • オンプレミスや外部クラウドとのハイブリッド接続に対応 • パイプラインのオーケストレーション: コピーやデータ フロー、 各種 Azure サービスの実行、分岐や繰り返しなどの制御 • 直感的な実行モニタリング

Slide 63

Slide 63 text

マッピング データ フロー • 変換 (Transformation) と呼ばれるパーツを組み合わせてノーコードで ETL 処理を作成 • Spark クラスター上で 処理が実行されるため大規模なデータに対応可能 和名 英名 説明 集約 Aggregate 既存の列または計算列によってグループ化される、SUM、 MIN、MAX、COUNT などのさまざまな種類の集計を 定義できます。 派生列 Derived column データ フローの言語を使用して、新しい列を生成するか、 既存のフィールドを変更します。 フラット化 Flatten JSON などの階層構造体の中で配列値を取得し、それ らを個々の行に展開します。 結合 Join 2 つのソースまたはストリームのデータを結合します。 選択 Select 別名列とストリーム名、列のドロップまたは並べ替え シンク Sink お使いのデータの最終受信先 ソース Source データ フローのデータ ソース 和集合 Union 複数のデータ ストリームを垂直方向に結合する (代表的な変換の例) (変換の一覧) https://docs.microsoft.com/ja-jp/azure/data-factory/data-flow-transformation-overview

Slide 64

Slide 64 text

Power BI プラットフォーム データの取得・加工・可視化まで 一貫したデスクトップツール Power BI コンテンツを 共有・管理する基盤環境 Power BI コンテンツを Web / モバイルデバイスで参照/分析 Power BI サービス Power BI Desktop ブラウザ Power BI モバイル

Slide 65

Slide 65 text

デモ シナリオ CSV 注文 CSV 注文明細 Zip 小売 データセット Delta Lake 注文 Delta Lake 注文明細 Delta Lake 注文サマリー Azure Data Lake Storage Gen2 Azure Databricks Power BI Desktop Databricks SQL ウェアハウス レポート Synapse パイプライン コピー & Zip 展開 CSV から Delta Lake に変換 注文を日別に 集計 データ フロー #2 データ フロー #1 コピー アクティビティ GitHub (匿名 HTTPS アクセスが可能な パブリック リポジトリに格納) Synapse パイプラインのコピー アクティビティ 1 Synapse パイプラインのマッピング データ フロー 2 Databricks SQL ウェアハウスによる分析 3 Power BI Desktop のレポートによる分析 4

Slide 66

Slide 66 text

デモ シナリオ Synapse パイプラインのコピー アクティビティ 1 Synapse パイプラインのマッピング データ フロー 2 Databricks SQL ウェアハウスによる分析 3 Power BI Desktop のレポートによる分析 4 CSV 注文 CSV 注文明細 Zip 小売 データセット Delta Lake 注文 Delta Lake 注文明細 Delta Lake 注文サマリー Azure Data Lake Storage Gen2 Azure Databricks Power BI Desktop Databricks SQL ウェアハウス レポート Synapse パイプライン コピー & Zip 展開 CSV から Delta Lake に変換 注文を日別に 集計 データ フロー #2 データ フロー #1 コピー アクティビティ GitHub (匿名 HTTPS アクセスが可能な パブリック リポジトリに格納)

Slide 67

Slide 67 text

デモ シナリオ Synapse パイプラインのコピー アクティビティ 1 Synapse パイプラインのマッピング データ フロー 2 Databricks SQL ウェアハウスによる分析 3 Power BI Desktop のレポートによる分析 4 CSV 注文 CSV 注文明細 Zip 小売 データセット Delta Lake 注文 Delta Lake 注文明細 Delta Lake 注文サマリー Azure Data Lake Storage Gen2 Azure Databricks Power BI Desktop Databricks SQL ウェアハウス レポート Synapse パイプライン コピー & Zip 展開 CSV から Delta Lake に変換 注文を日別に 集計 データ フロー #2 データ フロー #1 コピー アクティビティ GitHub (匿名 HTTPS アクセスが可能な パブリック リポジトリに格納)

Slide 68

Slide 68 text

デモ シナリオ Synapse パイプラインのコピー アクティビティ 1 Synapse パイプラインのマッピング データ フロー 2 Databricks SQL ウェアハウスによる分析 3 Power BI Desktop のレポートによる分析 4 CSV 注文 CSV 注文明細 Zip 小売 データセット Delta Lake 注文 Delta Lake 注文明細 Delta Lake 注文サマリー Azure Data Lake Storage Gen2 Azure Databricks Power BI Desktop Databricks SQL ウェアハウス レポート Synapse パイプライン コピー & Zip 展開 CSV から Delta Lake に変換 注文を日別に 集計 データ フロー #2 データ フロー #1 コピー アクティビティ GitHub (匿名 HTTPS アクセスが可能な パブリック リポジトリに格納)

Slide 69

Slide 69 text

Databricks SQL on Azure ワークショップ https://microsoft.github.io/azure-databricks-sql-workshop-ja/

Slide 70

Slide 70 text

Thank You お忙しいところ最後までご視聴いただき、 誠に有難うございました。 本ウェビナーへのご感想を是非お聞かせください。 こちらの QR コードよりアンケートにアクセスできます。 次回以降のウェビナー内容改善の参考とさせていただきたく、 ご協力のほどよろしくお願いいたします。

Slide 71

Slide 71 text

© Copyright Microsoft Corporation. All rights reserved.