レイクハウスのリファレンスアーキテクチャをダウンロードする
この記事では、データソース、インジェスト、変換、クエリと処理、サービング、分析/出力、およびストレージの観点から、レイクハウスのアーキテクチャガイダンスについて説明します。
各リファレンスアーキテクチャは、11 x 17(A3)フォーマットのPDFをダウンロードできます。
リファレンスアーキテクチャの構成
リファレンスアーキテクチャは、ソース、インジェスト、変換、クエリと処理、サーブ、分析、ストレージというスイムレーンに沿って構成されています。
ソース
このアーキテクチャでは、半構造化データ、非構造化データ(センサーとIoT、メディア、ファイル/ログ)と構造化データ(RDBMS、ビジネスアプリケーション)を区別します。SQLソース(RDBMS)は、レイクハウスフェデレーションによってETLなしでレイクハウスとUnity Catalogに統合することもできます。さらに、他のクラウドプロバイダーからデータがロードされる場合もあります。
インジェスト
データはバッチまたはストリーミング経由でレイクハウスに取り込むことができます。
クラウドストレージに配信されたファイルは、Databricks Auto Loaderを使用して直接読み込むことができます。
エンタープライズアプリケーションから Delta Lakeへのデータのバッチインジェストの場合、 Databricksレイクハウスは、これらの記録システムに特化したアダプターを備えた パートナーインジェストツールに依存しています。
ストリーミングイベントは、Databricks構造化ストリーミングを使用して、Kafkaなどのイベントストリーミングシステムから直接取り込むことができます。ストリーミングソースは、センサー、IoT、またはチェンジデータキャプチャプロセスです。
ストレージ
データは通常クラウドストレージシステムに保存され、ETLパイプラインはメダリオンアーキテクチャを使用して、データをデルタファイル/テーブルとしてキュレーションされた方法で保存します。
変換およびクエリと処理
Databricksレイクハウスは、すべての変換とクエリに Apache SparkとPhotonのエンジンを使用します。
宣言型フレームワークDLT(Delta Live Tables)は、そのシンプルさから、信頼性が高く、保守しやすく、テスト可能なデータ処理パイプラインの構築に適しています。
Apache SparkとPhotonを搭載したDatabricksデータインテリジェンスプラットフォームは、SQLウェアハウス経由のSQLクエリと、ワークスペースクラスタリング経由のSQL、Python、Scalaワークロードという両方のタイプのワークロードをサポートします。
データサイエンス(機械学習モデリングとGen AI)の場合、Databricks AIおよび機械学習プラットフォームは、AutoML学習と機械学習ジョブのコーディングに特化した機械学習ランタイムを提供します。すべてのデータサイエンスとMLOpsワークフローは、MLflowによって最適なサポートを受けます。
サーブ
DWH と BI のユースケースでは、Databricks レイクハウスは、Databricks SQL と、SQL ウェアハウスを利用したデータウェアハウス、そしてサーバーレス SQL ウェアハウスを提供します。
分析
最終的なビジネスアプリケーションはこのスイムレーンにあります。例えば、レイクハウスから運用データベースにプッシュされたデータにアクセスするカスタムクライアントなどがあります。
BIのユースケースでは、アナリストは通常、BIツールを使用してデータウェアハウスにアクセスします。SQL開発者は、クエリやダッシュボード作成にDatabricks SQLエディタ(図には示されていません)を使用することもできます。
また、データインテリジェンスプラットフォームは、データを視覚化して知見を共有するためのダッシュボードも提供します。
ワークロードの機能
さらに、Databricksレイクハウスには、すべてのワークロードをサポートする管理機能が付属しています。
データとAIのガバナンス
Databricks Data Intelligence Platformの中心となるデータおよびAIガバナンスシステムがUnity Catalogです。Unity Catalogは、すべてのワークスペースに適用されるデータアクセスポリシーを管理する単一の場所を提供し、テーブル、ボリューム、フィーチャー(Feature Store)、モデル(モデルレジストリ)など、レイクハウスで作成または使用されるすべてのアセットをサポートします。Unity Catalogは、Databricks上で実行されたクエリ間のランタイムデータリネージをキャプチャするためにも使用できます。
オブザーバビリティを確保するためのシステムテーブルは、Databricks がホストするアカウントの運用データの分析ストアです。システムテーブルは、アカウント全体の履歴の確認に使用できます。
データインテリジェンスエンジン
Databricks Data Intelligence Platformは、組織全体でデータとAIを活用することを可能にします。DatabricksIQを搭載し、生成AIとレイクハウスの統合の利点を組み合わせて、データのユニークなセマンティクスを理解します。
Databricks Assistantは、開発者向けのコンテキスト認識AIアシスタントとして、Databricksノートブック、SQLエディター、およびファイルエディターで利用できます。
オーケストレーション
Databricks Workflowsは、Databricksデータインテリジェンスプラットフォームでデータ処理、機械学習、アナリティクスのパイプラインを調整します。ワークフローには、Databricksワークスペースで非対話型コードを実行するためのDatabricksジョブや、信頼性と保守性に優れたETLパイプラインを構築するためのDelta Live Tablesなど、Databricksプラットフォームと統合されたフルマネージドオーケストレーションサービスがあります。
Google Cloudのデータインテリジェンスプラットフォームのリファレンスアーキテクチャ
GCPリファレンスアーキテクチャは、ソース、インジェスト、サーバー、分析/出力、およびストレージの各要素にGCP固有のサービスを追加することで、ジェネリックリファレンスアーキテクチャから派生したものです。
![Databricks on Google Cloudレイクハウスのリファレンスアーキテクチャ](../_images/ref-arch-overview-gcp.png)
ダウンロード:GCP上のDatabricksレイクハウスのリファレンスアーキテクチャ
GCPのリファレンスアーキテクチャには、取り込み、ストレージ、サーブ、分析/出力に関する次のGCP固有のサービスが示されています。
レイクハウスフェデレーションのソースシステムとしてのBigQuery
ストリーミング取り込み用のPub/Subとデータストリーム
バッチ取り込み用のCクラウドフュージョンとストレージ転送サービス
オブジェクトストレージとしてのクラウドストレージ
運用データベースとしてのCloud Big Table、Cloud SQL、Data Store
BIツールとしてのLooker
注:
このリファレンスアーキテクチャのビューでは、Google CloudサービスとDatabricksレイクハウスにのみ焦点を当てています。Databricksのレイクハウスは、パートナーツールの大規模なエコシステムと統合するオープンプラットフォームです。
掲載されているクラウドプロバイダーのサービスは、すべてを網羅しているわけではありません。これらはコンセプトを説明するために選ばれたものです。
ユースケース:バッチETL
![Databricks on GCPでのバッチETLのリファレンスアーキテクチャ](../_images/gcp-ref-arch-batch.png)
ダウンロード:Databricks on Google CloudのバッチETLリファレンスアーキテクチャ
インジェストツールは、ソース固有のアダプターを使用してソースからデータを読み取り、Auto Loaderがデータを読み取ることができるクラウドストレージに保存するか、Databricksを直接呼び出します(たとえば、Databricksレイクハウスに統合されたパートナーインジェストツールを使用)。データをロードするために、DatabricksのETLおよび処理エンジンがDLTを介してクエリを実行します。シングルまたはマルチタスクのジョブはDatabricksによってオーケストレーションされ、Unity Catalogによって管理されます(アクセス制御、監査、リネージなど)。低レイテンシの運用システムで特定のゴールデンテーブルへのアクセスが必要な場合、ETLパイプラインの最後で、それらのテーブルをRDBMSやキーバリューストアなどの運用データベースにエクスポートすることができます。
ユースケース:ストリーミングと変更データキャプチャ(CDC)
![Databricks on Google CloudのSpark構造化ストリーミングアーキテクチャ](../_images/gcp-ref-arch-streaming-cdc.png)
ダウンロード:Databricks on Google CloudのSpark構造化ストリーミングアーキテクチャ
Databricks ETLエンジンは、Spark構造化ストリーミングを使用して、Apache KafkaやPub/Subなどのイベントキューから読み取ります。下流のステップは、上記のバッチのユースケースのアプローチに従います。
リアルタイム変更データキャプチャ(CDC)は通常、イベントキューを使用して抽出されたイベントを保存します。そこから、ユースケースはストリーミングのユースケースに従います。
CDCがバッチで実行され、ずクラウドストレージに保存される場合、Databricks Autoloaderはそれらを読み込むことができ、ユースケースはバッチETLに従います。
ユースケース:機械学習とAI
![Databricks on Google Cloudの機械学習およびAIリファレンスアーキテクチャ](../_images/gcp-ref-arch-ai.png)
ダウンロード:Databricks on Google Cloudの機械学習およびAIリファレンスアーキテクチャ
機械学習のために、Databricks Data Intelligence Platformは、最先端の機械学習とディープラーニングのライブラリを備えたMosaic AIを提供します。これは、Feature Storeやモデルレジストリ(いずれもUnity Catalogに統合)、AutoMLによるローコード機能、データサイエンスライフサイクルへのMLflow統合などの機能を提供します。
すべてのデータサイエンス関連アセット(テーブル、フィーチャー、モデル)はUnity Catalogによって管理され、データサイエンティストはDatabricks Workflowsを使用してジョブをオーケストレーションできます。
ユースケース:BIとSQL分析
![Databricks on Google CloudのBIおよびSQL分析リファレンスアーキテクチャ](../_images/gcp-ref-arch-bi.png)
ダウンロード:Databricks on Google CloudのBIおよびSQLアナリティクスのリファレンスアーキテクチャ
BIのユースケースでは、ビジネスアナリストはDatabricks SQLエディターか、TableauやLookerなどの特定のBIツールを使用できます。どちらの場合も、エンジンはDatabricks SQL(サーバレスまたは非サーバレス)であり、データディスカバリー、探索、アクセス制御はUnity Catalogによって提供されます。
ユースケース:レイクハウスフェデレーション
![Databricks on Google Cloudのレイクハウスフェデレーションリファレンスアーキテクチャ](../_images/gcp-ref-arch-federation.png)
ダウンロード: Databricks on Google Cloudのレイクハウスフェデレーションリファレンスアーキテクチャ
レイクハウスフェデレーションでは、外部のデータSQLデータベース(MySQLやPostgresなど)をDatabricksと統合できます。
最初にデータをオブジェクトストレージにETLする必要がなく、すべてのワークロード (AI、DWH、BI) がこのメリットを享受できます。外部ソースカタログはUnity Catalogにマッピングされ、Databricksプラットフォーム経由のアクセスにきめ細かいアクセス制御を適用できます。
ユースケース:エンタープライズデータ共有
![Databricks on GCPのエンタープライズデータ共有リファレンスアーキテクチャ](../_images/gcp-ref-arch-collaboration.png)
ダウンロード:Databricks on Google Cloudのエンタープライズデータ共有リファレンスアーキテクチャ
エンタープライズグレードのデータ共有は、Delta Sharingによって提供されます。Unity Catalogで保護されたオブジェクトストア内のデータに直接アクセスでき、Databricks Marketplaceはデータ製品を交換するためのオープンフォーラムです。