SAP Databricks のデータベースオブジェクト
SAP Databricks では、2 つの主要なセキュリティ保護可能なオブジェクトを使用して、データの格納とアクセスを行います。
- テーブル は、表形式のデータへのアクセスを制御します。
- ボリューム は、表形式以外のデータへのアクセスを制御します。
この記事では、これらのデータベース オブジェクトが SAP Databricks のカタログ、スキーマ、ビュー、およびその他のデータベース オブジェクトとどのように関連しているかについて説明します。この記事では、プラットフォーム アーキテクチャ全体のコンテキストでデータベース オブジェクトがどのように機能するかについて、概要についても説明します。
SAP Databricks のデータベースオブジェクトとは何ですか?
データベース・オブジェクトは、データの編成、アクセス、および管理を支援するエンティティです。SAP Databricks では、次の 3 層の階層を使用してデータベース オブジェクトを整理します。
- カタログ : 最上位のコンテナーには、スキーマが含まれています。
- スキーマ またはデータベース: データ・オブジェクトが含まれます。
- スキーマに含めることができるデータオブジェクト:
- ボリューム : クラウドオブジェクトストレージ内の非表形式データの論理ボリューム。
- テーブル : 行と列で整理されたデータのコレクション。
- 表示 : 1 つ以上のテーブルに対して保存されたクエリ。
- 関数 : スカラー値または行のセットを返す保存されたロジック。
- モデル : MLflow にパッケージ化された機械学習モデル。
カタログは、アカウント レベルで管理されるメタストアに登録されます。
SAP Databricks には、データを操作するための追加のアセットが用意されており、これらはすべてワークスペースレベルのアクセス制御または Databricks データガバナンスソリューションである Unity Catalog を使用して制御できます。
- ワークスペース レベルのデータ資産 (ノートブック、ジョブ、クエリなど)。
- ストレージ資格情報や Delta Sharing 共有などの Unity Catalog のセキュリティ保護可能なオブジェクト。これらは主にストレージへのアクセスやセキュリティで保護された共有を制御します。
Unity Catalog を使用したデータベース オブジェクトへのアクセスの管理
データベース オブジェクトへのアクセスは、メタストア自体を含め、階層内の任意のレベルで許可および取り消すことができます。オブジェクトへのアクセスは、アクセスが取り消されない限り、そのオブジェクトのすべての子に同じアクセスを暗黙的に付与します。
一般的な ANSI SQL コマンドを使用して、Unity Catalog 内のオブジェクトへのアクセスを許可および取り消すことができます。また、Catalog Explorer を使用して、データ オブジェクト特権を UI 主導で管理することもできます。
Unity Catalog のデフォルトのオブジェクト権限
ユーザーは、 ワークスペースカタログ (<workspace-name>
) など、自動的にプロビジョニングされたカタログに対するデフォルトの権限を持っています。このカタログには、ワークスペース内のすべてのユーザーがアクセスできる default
という名前のスキーマが含まれています。
データベースオブジェクトとワークスペースのセキュリティ保護可能なデータ資産
SAP Databricks では、データベースオブジェクトとともに、複数のデータエンジニアリング、アナリティクス、 ML、および AI アセットを管理できます。 これらのデータ資産を Unity Catalogに登録することはありません。 代わりに、これらのアセットはワークスペース レベルで管理され、コントロール リストを使用してアクセス許可を制御します。これらのデータ資産には、次のものが含まれます。
- ノートブック
- ワークスペース ファイル
- SQL クエリ
- エクスペリメント
ほとんどのデータ資産には、データベースオブジェクトと対話してデータをクエリしたり、関数を使用したり、モデルを登録したり、その他の一般的なタスクを行うロジックが含まれています。
管理されたボリュームとテーブルの管理されたストレージの場所
SAP Databricks でテーブルとボリュームを作成するときは、 それらを管理 または 外部 にすることができます。Unity Catalog は、SAP Databricks から外部テーブルとボリュームへのアクセスを管理しますが、基になるファイルやフルマネージド ファイルのストレージ場所は制御しません。 一方、マネージドテーブルとボリュームは、 Unity Catalog によってフルマネージドであり、含まれているスキーマに関連付けられた 管理されたストレージの場所 に格納されます。
Databricks では、ほとんどのワークロードでマネージド ボリュームとマネージド テーブルを推奨しています。これは、構成、最適化、ガバナンスが簡略化されるためです。