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

ターゲットカタログとスキーマを設定する

パイプライン構成 UI の 確実なデータ資産の場所 セクションでは、パイプラインの確実なカタログとスキーマを設定します。 このデフォルトのカタログとスキーマは、クエリ内で上書きされない限り、すべてのデータセット定義とテーブル読み取りに使用されます。

注記

従来の公開モードでは、同様の動作を実現するためにLIVE仮想スキーマが使用されます。デフォルトの公開モード (すべての新しいパイプラインで使用される) では、 LIVEキーワードは無視されます。LIVE スキーマ (レガシー)を参照してください。

別のカタログまたはスキーマ内のデータセットをターゲットにする

Lakeflow Spark宣言型パイプラインは、3 層の識別子解決セマンティクスをサポートします。 Databricks では、パイプラインに構成されているデフォルト以外のデータセットを対象とするクエリとステートメントには、完全修飾識別子を使用することをお勧めします。Unity Catalog識別子の解決を参照してください。 たとえば、パイプラインではないmainカタログとstoresスキーマにregional_salesというマテリアライズドビューを作成するには、名前をmain.stores.regional_salesのように完全修飾します。

Python
from pyspark import pipelines as dp

@dp.materialized_view(name="main.stores.regional_sales")
def func():
return spark.read.table("partners");

パイプラインは SQL コマンドUSE CATALOG catalog_nameUSE SCHEMA schema_nameをサポートします。これらのコマンドを実行して、現在のカタログとスキーマのスコープを、これらのコマンドを含むファイルまたはノートブックに設定します。ソース コード ファイル内でこれらのコマンドに続き、修飾されていない識別子または部分的に修飾された識別子を使用する操作は、パイプライン構成で設定されたデフォルト値ではなく、現在のカタログとスキーマに解決されます。「現在のカタログとスキーマとは何ですか?」を参照してください。

データセットが存在しない場合はどうなりますか?

次の表は、パイプラインのソース コードが存在しないデータセットを参照する場合の動作を示しています。

オペレーション

結果

読み取り

指定された識別子にテーブル、マテリアライズドビュー、ストリーミングテーブル、またはビューが存在しない場合、更新は失敗します。

書き込み

指定された識別子にマテリアライズドビュー、ストリーミング テーブル、ビュー、またはシンクが存在しない場合、更新ではデータセットの作成が試行されます。 必要に応じて、更新によって指定されたスキーマも作成されます。

重要

データセットを表示するのに十分な権限がない場合は、データセットが存在しないことを示すエラー メッセージが表示されることがあります。

Lakeflow Spark宣言型パイプラインを使用してデータセットを読み取り、書き込み、作成するには十分な権限が必要です。 要件を参照してください。