Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Azure Databricks Learning Series #2 - Databricks SQL

Azure Databricks Learning Series #2 - Databricks SQL

More Decks by Hiroyuki Nakazato / 中里 浩之

Other Decks in Technology

Transcript

  1. Azure Databricks Learning Series
    ~ #2: Databricks SQL ~

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  10. 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 ドライバーを利用して任意のプログラムから接続可能

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  18. 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

    View full-size slide

  19. クラスター サイズと仮想マシン (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

    View full-size slide

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

    View full-size slide

  21. クラスター数の自動スケールの仕様
    ✔ 自動スケール アウトの仕様
     実行中のクエリ & キュー内のクエリ & 次の 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 クラスターを追加

    View full-size slide

  22. 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
    クラスター数
    増加
    同じ構成のクラスターが追加
    ✔ クエリの同時実行性能が向上

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  25. 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

    View full-size slide

  26. ディスク キャッシュ
    クラウド ストレージ上の 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

    View full-size slide

  27. ディスク キャッシュ
    クラウド ストレージ上の 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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  30. 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
    * プレビュー機能

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  37. 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 セキュリティが必須の組織でもサーバーレスを安心して利用できる

    View full-size slide

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

    View full-size slide

  39. 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 に一元化

    View full-size slide

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

    View full-size slide

  41. 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)

    View full-size slide

  42. データ アクセス コントロールの一元管理
    アクセス許可の承諾 (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

    View full-size slide

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

    View full-size slide

  44. Azure Databricks の構成

    ソフトウェア レイヤー : Databricks Unit (DBU) 単位による時間課金

    インフラ レイヤー : Azure リソース課金

    View full-size slide

  45. Azure VM コスト

    サーバーレス 以外のインフラ課金は 9 割が VM 課金

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

    View full-size slide

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

    View full-size slide

  47. DBU コスト

    サーバーレス以外の DBU コストは使用量関係なく、経過時間で算出

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

    View full-size slide

  48. Databricks SQL のクラスター

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  51. DBU コスト

    サーバーレスの DBU コストは使用量で算出

    クラスターはクエリ後 10 秒以内に起動

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

    View full-size slide

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

    View full-size slide

  53. 方法 1 : DBU の事前購入

    DBU の料金は事前購入でコスト削減可能

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

    View full-size slide

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

    View full-size slide

  55. 方法 2 : 自動スケール (サーバーレス以外の場合)

    スケーリング設定でクラスターの最大・最小を指定

    負荷が低い状態が続くとクラスターを自動削減

    無駄なリソースを減らしコスト削減が可能
    サーバーレス以外の DBU コストの計算式 :
    DBU コスト = クラスターの DBU 数 × クラスター数 × DBU の料金 × 稼働時間

    View full-size slide

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

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  59. 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

    View full-size slide

  60. 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

    View full-size slide

  61. 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 サービスを組み合わせることで
    市民データ エンジニア
    のニーズを充足できる

    View full-size slide

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

    View full-size slide

  63. マッピング データ フロー
    • 変換 (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

    View full-size slide

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

    View full-size slide

  65. デモ シナリオ
    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

    View full-size slide

  66. デモ シナリオ
    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 アクセスが可能な
    パブリック リポジトリに格納)

    View full-size slide

  67. デモ シナリオ
    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 アクセスが可能な
    パブリック リポジトリに格納)

    View full-size slide

  68. デモ シナリオ
    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 アクセスが可能な
    パブリック リポジトリに格納)

    View full-size slide

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

    View full-size slide

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

    View full-size slide

  71. © Copyright Microsoft Corporation. All rights reserved.

    View full-size slide