メインコンテンツまでスキップ

高レベルのアーキテクチャ

この記事では、エンタープライズ アーキテクチャを含む Databricks アーキテクチャの概要を Google クラウドと組み合わせて説明します。

Databricksオブジェクト

Databricks アカウントは 、組織全体で Databricks を管理するために使用する最上位レベルの構成要素です。アカウント レベルでは、次のものを管理します。

  • ID とアクセス: ユーザー、グループ、サービスプリンシパル、 SCIMプロビジョニング、およびSSO構成。

  • ワークスペース管理: 複数のリージョンにわたるワークスペースを作成、更新、削除します。

  • Unity Catalogメタストア管理: メタストアを作成してワークスペースにアタッチします。

  • 使用状況管理: 課金、コンプライアンス、ポリシー。

アカウントには複数のワークスペースと Unity Catalog メタストアを含めることができます。

  • ワークスペース は、ユーザーが取り込み、インタラクティブな探索、スケジュールされたジョブ、 MLトレーニングなどのワークロードを実行できるコラボレーション環境です。

  • Unity Catalog メタストアは、 テーブルや ML モデルなどのデータ資産の中心的なガバナンス システムです。メタストア内のデータは、次の 3 レベルの名前空間で整理されます。

<catalog-name>.<schema-name>.<object-name>

メタストアはワークスペースにアタッチされます。1 つのメタストアを同じリージョン内の複数のDatabricksワークスペースにリンクし、各ワークスペースに同じデータ ビューを与えることができます。 データ アクセス制御は、リンクされたすべてのワークスペースにわたって管理できます。

図: Databricks オブジェクト階層

ワークスペースアーキテクチャ

Databricks は、 コントロールプレーンコンピュートプレーン から動作します。

  • コントロールプレーン には、DatabricksアカウントでDatabricksが管理するバックエンドサービスが含まれます。 Webアプリケーションはコントロールプレーンにあります。

  • コンピュートプレーン は、データが処理される場所です。 使用するコンピュートに応じた2 種類のコンピュートプレーンが存在します。

    • サーバレスコンピュートの場合、サーバレスコンピュートリソースはDatabricksアカウントの サーバレスコンピュートプレーン で実行されます。
    • クラシック Databricks コンピュートの場合、コンピュート リソースは Google Cloud リソース内の クラシック コンピュートプレーン 内にあります。 これは、Google Cloud リソースとそのリソース内のネットワークを指します。

    classic コンピュートとサーバレス コンピュートの詳細については、「 コンピュート」を参照してください。

各 Databricks ワークスペースには、 ワークスペース ストレージ バケット と呼ばれる 2 つのバケット アカウントが関連付けられています。 ワークスペースのストレージ バケットは、Google Cloud アカウントにあります。

次の図は、Databricks アーキテクチャ全体を示しています。

図: Databricks アーキテクチャ

サーバレス コンピュート プレーン

サーバレス コンピュート プレーンで、Databricks アカウント内のコンピュート レイヤーでコンピュート リソースDatabricks実行します。Databricks は、ワークスペースの従来のコンピュートプレーンと同じ Google Cloud リージョンにサーバレス コンピュートプレーンを作成します。 このリージョンは、ワークスペースの作成時に選択します。

サーバーレスコンピュートプレーン内の顧客データを保護するために、サーバーレスコンピュートはワークスペースのネットワーク境界内で実行され、さまざまなセキュリティレイヤーを使用して、同じ顧客のクラスター間で異なるDatabricksワークスペースと追加のネットワーク制御を分離します。

サーバレス コンピュート プレーンでのネットワークの詳細については、 サーバレス コンピュート プレーン ネットワークを参照してください

クラシックコンピュートプレーン

従来のコンピュートプレーンでは、Google Cloud アカウントでDatabricksコンピュート リソースを実行 します。 新しいコンピュート リソースは、各ワークスペースの仮想ネットワーク内の顧客の Google Cloud アカウント内に作成されます。

従来のコンピュートプレーンは、各顧客自身のGoogle Cloudアカウントで実行されるため、自然に分離されています。 クラシック コンピュート プレーンでのネットワークの詳細については、「 クラシック コンピュート プレーン ネットワーク」を参照してください。

リージョンのサポートについては、「 Databricks のクラウドとリージョン」を参照してください。

ワークスペースストレージ

ワークスペースを作成すると、 Databricks Google クラウドアカウントに 3 つのバケットを作成し、ワークスペース ストレージバケットとして使用します。

  • 1 つのワークスペース ストレージ バケットには、ノートブックの作成など、さまざまな Databricks 機能を使用するときに生成される ワークスペース システム データ が格納されます。 このバケットには、ノートブックのリビジョン、ジョブ実行の詳細、コマンド結果、Spark ログが含まれます。
  • もう 1 つのワークスペース ストレージ バケットは、ワークスペースの DBFS のルート ストレージです。これはレガシーであり、ワークスペースで無効になっている可能性があります。DBFS (Databricks ファイル システム) は、 dbfs:/名前空間でアクセスできる Databricks 環境の分散ファイル システムです。DBFSルートとDBFSマウントは両方ともdbfs:/名前空間にあります。 DBFSルートまたはDBFSマウントを使用してデータを保存およびアクセスすることは非推奨のパターンであり、 Databricksでは推奨されていません。 詳細については、 DBFSとは何ですか?」を参照してください。 。
  • ワークスペースが自動的にUnity Catalogを有効にしている場合、3 番目のワークスペース ストレージ バケットには、デフォルト Unity Catalog ワークスペース カタログ が含まれます。ワークスペース内のすべてのユーザーは、このカタログのデフォルトスキーマでアセットを作成できます。「 Unity Catalog の概要」を参照してください。

ワークスペース ストレージ バケットへのアクセスを制限するには、「 プロジェクト内のワークスペースの GCS バケットを保護する」を参照してください。