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

ビューへの外部アクセス

備考

ベータ版

Iceberg REST カタログを介したビューへの外部アクセスは、 ベータ版です。Unity REST APIを介したビューへのアクセスは一般的に利用可能です。

外部エンジンは、次の APIs を使用して Unity Catalog ビューをクエリーできます。

外部エンジンはビューのSQLをランし、基になるテーブルを読み取ります。リーダーは、ビューおよび参照されるすべてのビューまたはテーブルにアクセスできる必要があります。

要件​

  • メタストアの 外部データ アクセス を有効にします。「Unity Catalog への外部データ アクセスを有効にする」を参照してください。
  • 親カタログとスキーマにUSE CATALOGとUSE SCHEMAを付与し、ビューと参照されるすべてのビューまたはテーブルにSELECTを付与し、それらのテーブルを含むスキーマにEXTERNAL USE SCHEMAを付与します。
  • Databricks個人アクセストークンまたはOAuthトークンで認証します。
  • 外部エンジンと互換性のあるビューSQLを使用します。

Apache Spark からのビューのクエリー​

Sparkの例の最小バージョン:

  • Apache Spark 4.0.
  • Deltaビューの場合:Unity Catalog Sparkコネクタ 0.6.0 および Delta Lake 4.3.0。
  • Iceberg ビューの場合: Apache Iceberg 1.10.0。

ビューによって参照されるカタログを含め、Unity Catalog カタログ名を Spark カタログ名として使用します。

Deltaテーブル上のビュー​

上記のSpark、Unity Catalogコネクタ、Delta Lakeバージョンを使用して、DeltaクライアントからDatabricksテーブルにアクセスするようにSparkを構成します。

ビューをクエリーするには、<catalog>、<schema>、および<view>をカタログ、スキーマ、およびビュー名に置き換え、Sparkで次のSQLを実行します。

SQL
SELECT * FROM <catalog>.<schema>.<view>;

Iceberg テーブル上のビュー​

Spark と Iceberg のバージョンを上記のように指定して、Apache Iceberg クライアントから Databricks テーブルにアクセスするを使用して Spark を構成します。

ビューをクエリーするには、<catalog>、<schema>、および<view>をカタログ、スキーマ、およびビュー名に置き換え、Sparkで次のSQLを実行します。

SQL
SELECT * FROM <catalog>.<schema>.<view>;

制限事項​

  • 外部コンピュートからビューを作成および変更することはサポートされていません。
  • 外部エンジンは、Spark SQL 言語のビュー定義をサポートしている必要があります。ビューを参照するクエリーは、外部エンジンのSQL言語を使用します。

Iceberg RESTカタログアクセスの場合:

  • きめ細かなアクセス制御ポリシー、カスタム解像度パス、またはユーザー定義関数を持つビューはサポートされていません。
  • 履歴ビューバージョンはサポートされていません。
  • Spark はリーダーの SQL 設定を使用します。結果またはエラーは、Databricks Runtime と異なる場合があります。