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

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

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

注記

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

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

Lakeflow pipelines は、3 層の識別子解決セマンティクスをサポートしています。Databricks では、パイプライン用に構成された default 以外のデータセットをターゲットとするクエリーとステートメントには、完全修飾識別子を使用することをお勧めします。「Unity Catalog 識別子の解決」を参照してください。たとえば、パイプラインの default ではない 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 Pipelinesを使用してデータセットの読み取り、書き込み、および作成を行うには、十分な権限が必要です。要件を参照してください。