Databricks Lakehouse and Data Mesh, Part 1 - The Databricks Blogの翻訳です。
本書は抄訳であり内容の正確性を保証するものではありません。正確な内容に関しては原文を参照ください。
本書は2パートのシリーズの1つ目となります。この記事では、データメッシュのコンセプトと、データメッシュを実装するために活用できるDatabricksの機能をご紹介します。2つ目の記事では、異なるデータメッシュの選択肢を検証し、Databricksレイクハウスをベースとしたデータメッシュの実装に関する詳細を説明します。
データメッシュとは、スケールするデータ分析プラットフォームに対する一連の原則と論理的アーキテクチャを表現するパラダイムです。大規模にデータからさらなる価値を資産として導出することを目的としています。データメッシュという用語は2019年にZhamak Dehghaniによて導入され、彼女の2020年の記事のData Mesh Principles and Logical Architectureで拡張されました。
データメッシュの論理的アーキテクチャのコアには4つの原則があります:
- ドメインオーナーシップ: 複数のドメインチーム、データ生成者がキャプチャからキュレーション、分析、再利用に至るライフサイクルを通じて自身のデータに完全な席んを持つ、分散アーキテクチャを導入します。
- 製品としてのデータ: データ分析ライフサイクルに製品管理原則を適用し、データ生成者の領域内外にいるであろうデータ利用者に提供されるデータの品質を保証します。
- セルフサービスのインフラストラクチャプラットフォーム: 相互運用可能なデータ製品を構築、実行、維持するための共通ツールと方法論を用いて、データ分析ライフサイクルにデータ不可知のアプローチを適用します。
- 統合されたガバナンス: 標準化を通じて組織のルールや業界の規制に準拠するデータエコシステムを確立します。
データメッシュにおいて、データ製品(data products)は重要なコンセプトとなります。これらはデータセット単体を意味するのではなく、製品のように取り扱われるデータとなります:これらは発見可能で、信頼でき、自己記述性があり、処理可能で相互運用可能なものである必要があります。データとデータメッシュに加えて、データ製品の作成、維持に必要なコード、ダッシュボード、特徴量、モデル、その他のリソースを含めることが可能です。
多くのお客様はこう質問します。「Databricksレイクハウスでデータメッシュを構築することはできますか?」回答はYESです!Databricksを利用されているいくつかの大企業では、技術的基盤としてレイクハウスを活用してデータメッシュを導入しています。
Databricksレイクハウスは、データウェアハウスのパフォーマンスと機能と、モダンデータレイクの低コスト、柔軟性、スケーラビリティを組み合わせた、クラウドネイティブのデータ、分析、AIプラットフォームです。導入としては、レイクハウスとは何か?をお読みください。
レイクハウスは、データメッシュの原則に関連するデータレイクの根本的な懸念に取り組みます。一枚岩のデータレイクは、管理不能なデータスワンプ(沼)になり得ます。Databricksレイクハウスは、すべてのデータと分析ワークロードに対して統合された管理インフラストラクチャを提供しつつも、データがどのように整理、構造化されるのかにおける柔軟性を提供するオープンアーキテクチャです。
データメッシュの領域のコンセプトにマッピングされるDatabricksレイクハウスプラットフォームの主要なユニットは、ワークスペースとなります。Databricksレイクハウスでは、1つ以上のワークスペースを作成することができ、それぞれのワークスペースでローカルなデータのオーナーシップとアクセスコントロールを実現することができます。
図1: データメッシュを実現するDatabricksレイクハウスの機能
それぞれのワークスペースは1つ以上のドメインをカプセル化し、共通のセルフサービスかつドメイン不可知のインフラストラクチャを活用してデータ製品を管理するドメインを実現し、コラボレーションの場として機能します。これには、Databricksワークフローのようなビルトインサービスを用いてデータパイプラインのオーケストレーションや環境構築の自動化、Databricks Terraformプロバイダーを用いたデプロイの自動化を含めることができます。Unity Catalogは、Databricksが稼働する組織のアカウントレベルの集中サービスとして、統合されたガバナンス、ディスカバリー、リネージを提供します。(図1の左側)。
多くの組織においては、どのようにガバナンスの境界を超えて外部の組織とセキュアにデータを共有できるのかを検討する必要があります。これは、別のクラウドプロバイダーやリージョンにホストされている内部のドメインにも適用されます。DatabricksレイクハウスはDelta Sharing(図1の右側)の形態でソリューションを提供しています。Delta Sharingを用いることで、計算プラットフォームに関係なく外部パーティにセキュアにデータを共有できるようになります。データを複製する必要はなく、アクセスは自動で監査され記録されます。
また、Delta Sharingはより広範な外部データ共有アクティビティの基盤を提供します。これには、Databricks Marketplaceのようなデータマーケットプレースを通じたデータの公開や取得、Databricksクリーンルーム内で実現される企業横断、技術境界を越えたデータに対するセキュアなコラボレーションが含まれます。
Unity CatalogとDelta Sharingの組み合わせは、Databricksレイクハウスプラットフォームは、複数のクラウドプロバイダー、異なる地理的位置にまたがるデプロイメント、外部エンティティとデータセットを共有する能力を必要とするデプロイメントを含み、どのように大規模データ分析とデータを整理、管理するために組織がどのような選択肢を取るのかに関して柔軟性を提供することを意味します。Databricksレイクハウスを活用することで、データはデータメッシュで整理されますが、完全なる集中管理から完全なる分散管理に至る任意の適切なアーキテクチャを用いて整理することが可能です。
このブログ記事の2つ目では、異なるデータメッシュのオプションを検証し、Databricksレイクハウスをベースとしてどのようにデータメッシュを実装するのかを説明します。
本記事で言及されたDatabricksレイクハウスの能力に関しては以下をご覧ください。
- レイクハウスとは
- Databricksレイクハウスとは何か?
- Databricks Unity Catalogのご紹介:レイクハウスにおけるデータとAIに対するきめ細かいガバナンス
- Delta Sharingのご紹介 : セキュアなデータ共有のためのオープンプロトコル
- レイクハウスのデータクリーンルームのご紹介
- Introducing Databricks Marketplace
- Databricks Terraformプロバイダー