この記事では、Unity Catalog でテーブルを作成する方法について説明します。 ビューの説明を参照してください。
必要なアクセス許可
ビューを作成するには:
- 親カタログに対する
USE CATALOGのアクセス許可と、親スキーマに対するUSE SCHEMAおよびCREATE TABLEのアクセス許可が必要です。 メタストア管理者またはカタログ所有者は、これらすべての権限を許可できます。MANAGE権限を持つスキーマ所有者またはユーザーは、スキーマに対するUSE SCHEMA権限とCREATE TABLE権限を付与できます。 - ビューで参照されるテーブルとビューの読み取りができる必要があります (テーブルまたはビューでの
SELECT、カタログでのUSE CATALOG、スキーマでのUSE SCHEMA)。 - ビューがワークスペース ローカルの Hive メタストア内のテーブルを参照している場合、そのビューにアクセスできるのは、ワークスペース ローカル テーブルが含まれるワークスペースからに限られます。 このため、Databricks では、Unity Catalog メタストア内にあるテーブルまたはビューからのみビューを作成することをお勧めします。
ビューを読み取るために必要なアクセス許可は、コンピューティングの種類、Databricks Runtime のバージョン、アクセス モードによって異なります。 ビューのクエリの要件を参照してください。
ビューの定義または説明を更新するには、ビューの所有者である必要があります。
MANAGE特権を持つことは不十分です。 詳細については、 ALTER VIEW および COMMENT ON のリファレンス ページを参照してください。
ビューの作成
ビューを作成するには、次の SQL コマンドを実行します。 角かっこ内の項目は省略可能です。 プレースホルダー値を次のように置き換えます。
-
<catalog-name>: カタログの名前。 -
<schema-name>: スキーマの名前。 -
<view-name>: ビューの名前。 -
<query>: ビューの作成に使用されるクエリ、列、テーブル、ビュー。
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;
たとえば、sales_redacted テーブルの列から sales_raw という名前のビューを作成するには:
CREATE VIEW sales_metastore.sales.sales_redacted AS
SELECT
user_id,
email,
country,
product,
total
FROM sales_metastore.sales.sales_raw;
また、Databricks Terraform プロバイダーと databricks_table を使用してビューを作成することもできます。 databricks_views を使用して、ビューのフル ネームのリストを取得できます。
ビューを削除する
ビューを削除するには、ビューの所有者であるか、ビューに対する MANAGE 権限が必要です。 ビューを削除するには、次の SQL コマンドを実行します。
DROP VIEW IF EXISTS catalog_name.schema_name.view_name;