Lakehouse リファレンスアーキテクチャ (ダウンロード)
この記事では、データ ソース、インジェスト、変換、クエリとプロセス、提供、分析、ストレージという観点からレイクハウスのアーキテクチャ ガイダンスについて説明します。
各リファレンス アーキテクチャには、11 x 17 (A3) 形式のダウンロード可能な PDF があります。
Databricks 上の lakehouse はパートナー ツールからなる大規模なエコシステムと統合されたオープン プラットフォームですが、リファレンス アーキテクチャは Azure サービスと Databricks lakehouse のみに焦点を当てています。 画像内のクラウド プロバイダー サービスは、概念を示すために選択されており、すべてを網羅しているわけではありません。
ダウンロード: Azure Databricks レイクハウスのリファレンス アーキテクチャ
Azure リファレンス アーキテクチャには、インジェスト、ストレージ、提供、分析のための次の Azure 固有のサービスが示されています。
- Lakehouse Federation のソース システムとしての Azure Synapse と SQL Server
- ストリーミング取り込み用の Azure IoT Hub と Azure Event Hubs
- バッチ インジェスト用の Azure Data Factory
- オブジェクト ストレージとしての Azure Data Lake Storage Gen 2 (ADLS)
- オペレーション データベースとしての Azure SQL DB と Azure Cosmos DB
- UC がスキーマと系列情報をエクスポートするエンタープライズ カタログとしての Azure Purview
- BI ツールとしての Power BI
リファレンス アーキテクチャの編成
参照アーキテクチャは、スイム レーン ソース、インジェスト、トランスフォーム、クエリ/プロセス、提供、分析、そして ストレージに沿って構成されています。
ソース
このアーキテクチャでは、半構造化および非構造化データ (センサーと IoT、メディア、ファイルとログ) と構造化データ (RDBMS、ビジネス アプリケーション) が区別されています。 SQL ソース (RDBMS) は、レイクハウス フェデレーションを介して、ETL なしでレイクハウスと Unity Catalog に統合することもできます。 さらに、他のクラウド プロバイダーからデータを読み込むこともできます。
取り込み
データはバッチまたはストリーミングを使ってレイクハウスに取り込むことができます。
- Databricks LakeFlow Connect には、エンタープライズ アプリケーションやデータベースから取り込むための組み込みのコネクタが用意されています。 結果として生成されるインジェスト パイプラインは Unity Catalog によって管理され、サーバーレス コンピューティングと Delta Live Tables を利用します。
- クラウド ストレージに配信されたファイルは、Databricks Auto Loader を使って直接読み込むことができます。
- エンタープライズ アプリケーションから Delta Lake へのデータのバッチ インジェストの場合、Databricks レイクハウスは、このような記録システムに対応する特定のアダプターを備えたパートナーのインジェスト ツールを利用しています。
- ストリーミング イベントは、Databricks の構造化ストリーミングを使って、Kafka などのイベント ストリーミング システムから直接取り込むことができます。 ストリーミング ソースは、センサー、IoT、または変更データ キャプチャ プロセスの場合があります。
Storage
通常、データはクラウド ストレージ システムに保存され、ETL パイプラインはそこでメダリオン アーキテクチャを使い、整理された方法で差分ファイルまたはテーブルとしてデータを保存しています。
変換とクエリ/プロセス
Databricks レイクハウスは、すべての変換とクエリにエンジン Apache Spark と Photon を使っています。
DLT (Delta Live Tables) は、信頼性、保守性、テスト可能性に優れたデータ処理パイプラインを簡素化し、最適化するための宣言型フレームワークです。
Apache Spark と Photon を活用した Databricks Data Intelligence Platform は、2 種類のワークロードをサポートしています。SQL ウェアハウスを介した SQL クエリと、ワークスペース クラスターを介した SQL、Python、Scala のワークロードです。
データ サイエンス (ML モデリングと Gen AI) の場合、Databricks の AI および機械学習プラットフォームには、AutoML と ML ジョブのコーディングに特化した ML ランタイムが用意されています。 すべてのデータ サイエンスと MLOps ワークフローは MLflow によって最適にサポートされます。
サービング
DWH と BI のユース ケースの場合、Databricks レイクハウスには Databricks SQL が用意されています。これは、SQL ウェアハウスとサーバーレス SQL ウェアハウスを活用したデータ ウェアハウスです。
機械学習の場合、モデル提供は、Databricks コントロール プレーンでホストされる、スケーラブルでリアルタイムのエンタープライズレベルのモデル提供機能です。 Mosaic AI Gateway は、サポートされている生成 AI モデルとそれに関連する Model Serving エンドポイントへのアクセスを管理および監視するための Databricks ソリューションです。
オペレーション データベース: オペレーション データベースなどの外部システムを使って、最終的なデータ製品を保存し、ユーザー アプリケーションに提供することができます。
コラボレーション: ビジネス パートナーは、Delta Sharing を介して、セキュリティで保護された方法で必要なデータにアクセスできます。 Delta Sharing に基づいた Databricks Marketplace は、データ製品を交換するためのオープン フォーラムです。
分析
最終的なビジネス アプリケーションはこのスイム レーンにあります。 たとえば、リアルタイム推論のために Mosaic AI Model Serving に接続された AI アプリケーションや、レイクハウスからオペレーション データベースにプッシュされたデータにアクセスするアプリケーションなどのカスタム クライアントなどがあります。
BI のユース ケースでは、通常、アナリストは BI ツールを使ってデータ ウェアハウスにアクセスします。 SQL 開発者は、クエリとダッシュボードのためにさらに Databricks SQL Editor (図には示されていません) を使用できます。
Data Intelligence Platform には、データの視覚化を構築して分析情報を共有できるダッシュボードも用意されています。
統合
Databricks プラットフォームは、ユーザー管理とシングル サインオン (SSO) のために標準 ID プロバイダーと統合されます。
OpenAI、LangChain、HuggingFace などの外部 AI サービスは、Databricks Intelligence Platform 内から直接使用できます。
外部オーケストレーターでは、包括的な REST API を使用することも、Apache Airflow など、外部オーケストレーション ツール専用コネクタを使用することもできます。
Unity Catalog は、Databricks Intelligence Platform 内のすべてのデータおよび AI ガバナンスに使用され、Lakehouse Federation を介して他のデータベースをそのガバナンスに統合できます。
さらに、Unity カタログは、他のエンタープライズ カタログ、例えば Purview
などと統合できます。 詳細については、エンタープライズ カタログ ベンダーにお問い合わせください。
すべてのワークロードに共通する機能
さらに、Databricks レイクハウスには、すべてのワークロードをサポートする管理機能が付属しています。
データと AI ガバナンス
Databricks Data Intelligence Platform の中心となるデータと AI のガバナンス システムは Unity Catalog です。 Unity Catalog は、1 つの場所ですべてのワークスペースに適用されるデータ アクセス ポリシーを管理できます。また、テーブル、ボリューム、特徴量 (特徴量ストア)、モデル (モデル レジストリ) など、レイクハウスで作成または使用されるすべての資産をサポートします。 Unity Catalog を使って、Databricks 上で実行されたクエリ全体のランタイム データ系列を取り込むこともできます。
Databricks レイクハウスモニタリング を使用することで、アカウント内のすべてのテーブルのデータ品質を監視できます。 また、機械学習モデルとモデル提供エンドポイントのパフォーマンスを追跡することもできます。
監視の場合、システム テーブルは、Databricks がホストするアカウントのオペレーショナル データの分析ストアです。 システム テーブルは、アカウント全体の履歴監視に使用できます。
データ インテリジェンス エンジン
Databricks Data Intelligence Platform を使うと、組織全体でデータと AI を使用できるようになります。 また、DatabricksIQ を活用し、生成 AI とレイクハウスの統一の利点を組み合わせて、データの固有のセマンティクスを理解することができます。
Databricks アシスタントは、開発者向けのコンテキスト対応 AI アシスタントとして、Databricks ノートブック、SQL エディター、ファイル エディターで使用できます。
オートメーション & オーケストレーション
Databricks Jobs では、Databricks Data Intelligence Platform でデータ処理、機械学習、分析のパイプラインが調整されます。 Delta Live Tables を使用すると、宣言構文を使用して信頼性と保守性に優れた ETL パイプラインを構築できます。 このプラットフォームでは、CI/CD と MLOps もサポートされています
Azure 上の Data Intelligence Platform のハイレベルなユース ケース
Databricks LakeFlow Connect には、エンタープライズ アプリケーションやデータベースから取り込むための組み込みのコネクタが用意されています。 結果として生成されるインジェスト パイプラインは Unity Catalog によって管理され、サーバーレス コンピューティングと Delta Live Tables を利用します。 LakeFlow Connect は効率的な増分読み取りと書き込みを利用して、データインジェストを高速化し、スケーラブルでコスト効率を高めます。また、データは下流での利用のために常に最新の状態を維持します。
ユース ケース: Lakeflow Connect でのインジェスト:
Azure Databricks で Lakeflow Connect を使用してデータを取り込む
ダウンロード: Azure Databricks 用のバッチ ETL リファレンス アーキテクチャ。
ユース ケース: Batch ETL
ダウンロード: Azure Databricks 用のバッチ ETL リファレンス アーキテクチャ
インジェスト ツールは、ソース固有のアダプターを使ってソースからデータを読み取り、次に Auto Loader で読み取ることができるクラウド ストレージに保存するか、Databricks を直接呼び出します (たとえば、Databricks レイクハウスに統合されたパートナー インジェスト ツールを使います)。 データを読み込むには、Databricks ETL と処理エンジンから (DLT 経由で) クエリを実行します。 単一またはマルチタスクのワークフローは、Databricks Jobs を使って調整し、Unity Catalog (アクセス制御、監査、系列など) を使って管理することができます。 低待機時間の運用システムから特定のゴールデン テーブルにアクセスする必要がある場合、ETL パイプラインの最後にある RDBMS やキー値ストアなどのオペレーション データベースにエクスポートできます。
ユース ケース: ストリーミングと変更データ キャプチャ (CDC)
ダウンロード: Azure Databricks 用の Spark 構造化ストリーミング アーキテクチャ
Databricks ETL エンジンは、Spark Structured Streaming を使って、Apache Kafka や Azure Event Hub などのイベント キューから読み取ります。 ダウンストリームの手順は、上記の Batch ユース ケースのアプローチに従います。
通常、リアルタイム変更データ キャプチャ (CDC) は、抽出されたイベントを保存するためにイベント キューを使います。 以降、ユース ケースはストリーミングのユース ケースに従います。
CDC がバッチで実行され、抽出されたレコードが最初にクラウド ストレージに保存される場合、Databricks Autoloader はそれらを読み取ることができます。また、ユース ケースは Batch ETL に従います。
ユース ケース: 機械学習と AI
ダウンロード: Azure Databricks 用の機械学習と AI リファレンス アーキテクチャ
機械学習の場合、Databricks Data Intelligence Platform には、最先端の機械学習ライブラリとディープ ラーニングライブラリを備えた Mosaic AI が用意されています。 また、特徴量ストアやモデル レジストリ (両方とも Unity Catalog に統合されます)、AutoML によるローコード機能、データ サイエンス ライフサイクルへの MLflow 統合などの機能を備えています。
すべてのデータ サイエンス関連の資産 (テーブル、特徴量、モデル) は Unity Catalog によって管理され、データ科学者は Databricks Jobs を使ってジョブを調整できます。
スケーラブルなエンタープライズレベルの方法でモデルをデプロイするには、MLOps 機能を使ってモデル提供でモデルを公開します。
ユースケース: 生成系AI (Gen AI) エージェント アプリケーション
ダウンロード: Azure Databricks の Gen AI アプリケーションリファレンス アーキテクチャ
生成型 AI のユース ケースでは、Mosaic AI には最新のライブラリと、プロンプト エンジニアリングから既存のモデルの微調整、ゼロからの事前トレーニングまでの特定の Gen AI 機能が付属しています。 上記のアーキテクチャは、ベクター検索を統合して RAG (取得拡張生成) を使用して Gen AI アプリケーションを作成する方法の例を示しています。
スケーラブルなエンタープライズレベルの方法でモデルをデプロイするには、MLOps 機能を使ってモデル提供でモデルを公開します。
ユース ケース: BI と SQL 分析
azure Databricks の
ダウンロード: Azure Databricks 用の BI および SQL 分析リファレンス アーキテクチャ
BI のユース ケースの場合、ビジネス アナリストはダッシュボード、Databricks SQL エディター、または特定の BI ツール (Tableau や Power BI など) を使用できます。 いずれの場合も、エンジンは Databricks SQL (サーバーレスまたは非サーバーレス) であり、データの検出、探索、アクセス制御は Unity Catalog によって提供されます。
ユース ケース: Lakehouse フェデレーション
ダウンロード: Azure Databricks 用の Lakehouse フェデレーション リファレンス アーキテクチャ
Lakehouse フェデレーションにより、外部データ SQL データベース (MySQL、Postgres、SQL Server、Azure Synapse など) を Databricks と統合できます。
最初にデータをオブジェクト ストレージに ETL することなく、すべてのワークロード (AI、DWH、BI) がこの恩恵を受けられます。 外部ソース カタログは Unity カタログにマップされ、Databricks プラットフォーム経由のアクセスにきめ細かいアクセス制御を適用できます。
ユース ケース: エンタープライズ データ共有
ダウンロード: Azure Databricks 用のエンタープライズ データ共有リファレンス アーキテクチャ
エンタープライズレベルのデータ共有は Delta Sharing によって提供されます。 これにより、Unity Catalog で保護されたオブジェクト ストア内のデータに対して直接アクセスできます。また、Databricks Marketplace は、データ製品を交換するためのオープン フォーラムです。