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

ビューの作成と管理

このページでは、Unity Catalog でビューを作成する方法を説明します。「ビューとは」を参照してください。

必要な権限

ビューを作成するには:

  • 親カタログに対するUSE CATALOG権限および親スキーマに対するUSE SCHEMA権限とCREATE TABLE権限を持っている必要があります。メタストア管理者またはカタログ所有者は、これらのすべての権限を付与できます。スキーマ所有者、またはMANAGE権限を持つユーザーは、スキーマに対するUSE SCHEMAおよびCREATE TABLE権限を付与できます。
  • ビューで参照されるテーブルとビューを読み取るには、テーブルまたはビューに対するSELECT、カタログに対するUSE CATALOG、およびスキーマに対するUSE SCHEMAが必要です。
  • ビューがワークスペースローカルのHive metastoreにあるテーブルを参照する場合、ワークスペースローカルのテーブルを含むワークスペースからのみ、そのビューにアクセスできます。このため、Databricks は、Unity Catalog メタストア内にあるテーブルまたはビューからのみビューを作成することをおすすめします。

ビューを読み取るために必要な権限は、コンピュートの種類、 Databricks Runtime バージョン、およびアクセス モードによって異なります。 ビューのクエリの要件を参照してください。

ビューの定義または説明を更新するには、ビューの所有者である必要があります。MANAGE権限だけでは不十分です。詳細については、 ALTER VIEWおよびCOMMENT ON のリファレンス ページを参照してください。

ビューの作成

ビューを作成するには、SQLエディターまたはコンピュートにアタッチされたノートブックで次のSQLコマンドを実行します。括弧内の項目はオプションです。プレースホルダーの値を置き換えます。

  • <catalog-name>:カタログの名前。
  • <schema-name>:スキーマの名前。
  • <view-name>: ビューの名前。
  • <query>: ビューの構成に使用されるクエリ、列、テーブル、およびビュー。
SQL
CREATE VIEW <catalog-name>.<schema-name>.<view-name> AS
SELECT <query>;

たとえば、sales_raw テーブルの列から sales_redacted という名前のビューを作成するには、次のようにします。

SQL
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 コマンドを実行します。

SQL
DROP VIEW IF EXISTS catalog_name.schema_name.view_name;