Unity Catalogにおける管理対象アセットと外部アセットの違い
Unity Catalogに登録するすべてのセキュリティ保護可能なオブジェクトは一元的に管理されます。 これは、 Unity Catalogオブジェクトのメタデータを管理し、アクセス、監査、リネージなどのガバナンスのすべての側面を制御できるようにすることを意味します。
しかし、テーブルやボリュームなどのデータ資産については、Unity Catalogはクラウドアカウント内の基となるデータファイルの保存場所とライフサイクルも制御できます。これには、データの整理方法、最適化方法、削除時期などが含まれます。この区別こそが、 管理対象 データ資産と 外部 データ資産を分けるものである。
- 管理対象アセット : Unity Catalog 、ガバナンス(アクセス制御、監査、リネージ)と基盤となるファイルストレージのライフサイクル(ファイルの最適化、整理方法、削除時期)の両方を制御します。
- 外部アセット : Unity Catalogガバナンスのみを管理します。 基盤となるファイルストレージのライフサイクルは、ユーザー自身または外部システムによって制御されます。
Unity Catalogで管理対象アセットを登録すると、データの所有権は完全に保持されます。 データファイルは常にクラウドアカウントに保存されます。Unity Catalogは、アカウント内のどこにデータが保存されるかを決定しますが、Databricksにデータを転送したり、データの所有権を保有したりすることはありません。
管理対象と外部対象の区別は、テーブルとボリュームにのみ適用されます。ビュー、モデル、関数など、 Unity Catalogセキュリティ保護可能なその他のオブジェクトには、マネージドバリアントと外部バリアントはありません。
相違点の概要
以下の表は、 Unity Catalogにおける管理対象アセットと外部アセットの違いをまとめたものです。
Unity Catalogマネージドテーブルまたはボリューム | 外部テーブルまたはボリューム | |
|---|---|---|
ストレージロケーション | Unity Catalogによって設定 (クラウド アカウント内) | あなたが設定します |
ファイルライフサイクル管理 | Unity Catalogによって管理されています(最適化、整理、削除)。 | 管理はあなた次第 |
ドロップ動作 | データファイルは8日間の保存期間後に完全に削除されます。 | データファイルはそのまま残ります |
データ所有権 | はい | はい |
Unity Catalog全体で使用されている「manage」という単語の使用例
Unity Catalog全体で、 「管理」という 言葉は複数の意味で使用されています。 このセクションでは、さまざまな文脈における 「管理する」 という言葉の意味を要約します。
オブジェクトが Unity Catalogによって管理されて いると言う場合、通常はUnity Catalogそのオブジェクトへのアクセスを管理していることを意味します。 これは、外部テーブルやボリュームを含む、登録されているすべてのUnity Catalogオブジェクトに適用されます。
「マネージドテーブル」または「管理対象ボリューム」の 管理対象という 言葉には、より具体的な意味があります。Unity Unity Catalog 、基盤となるデータ ファイルがクラウド アカウント内のどこに保存されるかを決定し、ファイルのライフサイクル (最適化、整理、削除) を制御します。 これは 管理対象ストレージの場所 と呼ばれます。お客様のデータは常にクラウドアカウント内に保存されます。Databricksは、お客様のデータを所有または保持していません。
MANAGEという単語は、 Unity Catalogオブジェクトに割り当てることができる権限としても表示されます。 一般的に、 MANAGE 、ユーザーが所有者でなくても、オブジェクトに対する権限の割り当てや取り消し、所有権の移転、および削除を行うことを可能にします。「管理」を参照してください。
次の表は、 manage の一般的な使用例をまとめたものです。
学期 | 意味 | 適用対象 |
|---|---|---|
「Unity Catalogによって管理されています」 | Unity Catalog 、オブジェクトへのアクセス、監査、およびリネージを管理します。 | 外部テーブルとボリュームを含む、登録されているすべてのUnity Catalogオブジェクト |
マネージドテーブル または 管理対象ボリューム | Unity Catalogは、クラウドアカウント内の基盤となるストレージの場所(管理対象ストレージの場所)とデータライフサイクルも制御します。 | 表と巻のみ |
管理対象ストレージの場所 | Unity Catalogマネージドテーブルとボリュームのデータ ファイルを保存するクラウド アカウント内の指定されたパス。 管理対象ストレージの場所は、メタストア、カタログ、またはスキーマのレベルで構成できます。Unity Catalogで管理ストレージの場所を指定する方法については、こちらをご覧ください。 | 表と巻のみ |
| ユーザーが所有者でなくても、オブジェクトに対する権限の割り当てや取り消し、所有権の移転、および削除を行うことができる権限。「管理」を参照してください。 | Unity Catalogセキュリティ保護可能なすべてのオブジェクト |
管理対象テーブルと外部テーブル
Unity Catalogマネージド テーブルは、 Unity Catalog基礎となるデータ ファイルの保存場所を決定するテーブルです。 Unity Catalogは、マネージドテーブルを、含まれるスキーマ、カタログ、またはメタストアで定義された管理されたストレージの場所に保存します。 マネージドテーブルをドロップすると、 Unity Catalog基礎となるデータ ファイルを削除します。 マネージドテーブルはDeltaまたはApache Iceberg形式を使用します。
外部テーブル とは、基となるデータファイルの保存場所を指定するテーブルのことです。外部テーブルを削除すると、Unity Catalogはメタストアからテーブルのメタデータを削除しますが、基となるデータファイルはそのまま残ります。外部テーブルは、Delta、CSV、JSON、Avro、Parquet、ORCなど、複数のフォーマットをサポートしています。
テーブルタイプに関する詳細については、 Databricks Unity Catalogテーブルタイプを参照してください。
マネージドと外部の両方のプラットフォームは、Unity REST APIやIceberg REST Catalog(IRC)などのオープンAPIsを介して、外部エンジンからの読み取り、書き込み、作成アクセスをサポートしています。 これは、マネージドテーブルがベンダーロックインを引き起こさないことを意味します。 これらのAPIsサポートするエンジンであれば、マネージドテーブルにアクセスできます。 外部システムを使用してDatabricksデータにアクセスする方法については、こちらをご覧ください。
管理ボリュームと外部ボリューム
Unity Catalog管理ボリューム とは、 Unity Catalogストレージの場所を決定するボリュームのことです。 Unity Catalogは、管理対象ボリュームを、クラウドアカウント内の包含スキーマの管理対象ストレージ場所に自動的に保存します。マネージドテーブルと同様に、基礎となるデータの完全な所有権はお客様に保持されます。 管理対象ボリュームを削除すると、Unity Catalog は基となるデータファイルを削除します。
外部ボリューム とは、保存場所を自分で指定できるボリュームのことです。この場所は、 Unity Catalog外部ロケーションでカバーされるパスである必要があります。 外部ボリュームを削除すると、Unity Catalog はボリューム定義を削除しますが、基となるデータファイルはそのまま残ります。
ボリュームに関する詳細については、 Unity Catalogボリュームとは?」を参照してください。