Lakeflow 宣言型パイプラインのプロパティリファレンス
この記事では、 JSONで仕様とDatabricksテーブルのプロパティを設定するLakeflow 宣言型パイプライン のリファレンスを提供します。これらのさまざまなプロパティと構成の使用の詳細については、次の記事を参照してください。
Lakeflow 宣言型パイプラインの構成
-
id
タイプ:
string
このパイプラインのグローバルに一意の識別子。識別子はシステムによって割り当てられ、変更することはできません。
-
name
タイプ:
string
このパイプラインのユーザーフレンドリな名前。この名前は、UI でパイプライン ジョブを識別するために使用できます。
-
configuration
タイプ:
object
パイプラインを実行するクラスターの Spark 構成に追加する設定のオプションの一覧。 これらの設定は、 Lakeflow 宣言型パイプライン ランタイムによって読み取られ、 Spark 構成を通じてパイプライン クエリで使用できます。
要素は
key:value
ペアとしてフォーマットする必要があります。 -
libraries
タイプ:
array of objects
パイプライン コードと必要なアーティファクトを含むコード ファイルの配列。
-
clusters
タイプ:
array of objects
パイプラインを実行するためのクラスターの仕様の配列。
これが指定されていない場合、パイプラインはパイプラインのデフォルト クラスター構成を自動的に選択します。
-
development
タイプ:
boolean
パイプラインを実行するかどうかを示すフラグ
development
またはproduction
モード。デフォルト値は
true
-
notifications
タイプ:
array of objects
パイプラインの更新が完了したとき、再試行可能なエラーで失敗したとき、再試行不可能なエラーで失敗したとき、またはフローが失敗したときの電子メール通知のオプションの仕様の配列。
-
continuous
タイプ:
boolean
パイプラインを継続的に実行するかどうかを示すフラグ。
デフォルト値は
false
です。 -
catalog
タイプ:
string
パイプラインのすべてのデータセットとメタデータが公開される、パイプラインのデフォルト カタログの名前。この値を設定すると、パイプラインのUnity Catalog有効になります。
設定しない場合、パイプラインは、
storage
で指定された場所を使用して従来のHive metastoreに公開します。従来の公開モードでは、現在のパイプラインのすべてのデータセットが公開されるターゲット スキーマを含むカタログを指定します。LIVE スキーマ (レガシー)を参照してください。
-
schema
タイプ:
string
パイプラインのデフォルト スキーマの名前。パイプラインのすべてのデータセットとメタデータがデフォルトで公開されます。「ターゲット カタログとスキーマを設定する」を参照してください。
-
target
(レガシー)。タイプ:
string
現在のパイプラインで定義されているすべてのデータセットが公開されるターゲット スキーマの名前。
schema
の代わりにtarget
を設定すると、パイプラインは従来の公開モードを使用するように構成されます。LIVE スキーマ (レガシー)を参照してください。 -
storage
(レガシー)。タイプ:
string
パイプライン実行に必要な出力データとメタデータが保存される DBFS またはクラウド ストレージ上の場所。テーブルとメタデータはこの場所のサブディレクトリに保存されます。
storage
設定が指定されていない場合、システムはデフォルトでdbfs:/pipelines/
内の場所を使用します。パイプラインの作成後は、
storage
設定を変更できません。 -
channel
タイプ:
string
使用する Lakeflow 宣言型パイプライン ランタイムのバージョン。 サポートされている値は次のとおりです。
preview
ランタイムバージョンに対する今後の変更を使用してパイプラインをテストします。current
をクリックして、現在のランタイムバージョンを使用します。
channel
フィールドはオプションです。デフォルト値はcurrent
。Databricks 、本番運用ワークロードには現在のランタイム バージョンを使用することをお勧めします。 -
edition
Type
string
パイプラインを実行するLakeflow 宣言型パイプライン 製品エディション。 この設定により、パイプラインの要件に基づいて最適な製品エディションを選択できます。
CORE
を使用して、ストリーミング取り込みワークロードを実行します。PRO
実行ストリーミング取り込みおよびデータキャプチャ ( CDC ) ワークロードに適用されます。ADVANCED
ストリーミングを実行するには、ワークロード、 CDCワークロード、およびデータ品質制約を強制するためにLakeFlow宣言型パイプラインの期待を必要とするワークロードを取り込みます。
edition
フィールドはオプションです。デフォルト値はADVANCED
。 -
photon
タイプ:
boolean
パイプラインの実行で Photon を使用するかどうかを示すフラグ。 Photon は、Databricks のハイパフォーマンス Spark エンジンです。 Photon 対応パイプラインは、非 Photon パイプラインとは異なるレートで請求されます。
photon
フィールドはオプションです。デフォルト値はfalse
です。 -
pipelines.maxFlowRetryAttempts
タイプ:
int
パイプラインの更新中に再試行可能な障害が発生した場合、これはパイプラインの更新が失敗するまでにフローを再試行する最大回数です。
デフォルト: 再試行回数は 2 回です。再試行可能なエラーが発生すると、 Lakeflow 宣言型パイプライン ランタイムは、元の試行を含めてフローの実行を 3 回試行します。
-
pipelines.numUpdateRetryAttempts
タイプ:
int
更新中に再試行可能な障害が発生した場合、更新が永続的に失敗するまでに更新を再試行する最大回数です。再試行は完全な更新として実行されます。
この問題は、本番運用モードで実行されているパイプラインにのみ適用されます。 開発モードでパイプラインを実行する場合、または
Validate
更新を実行する場合、再試行は試行されません。デフォルト:
- トリガーされたパイプラインの場合は 5 つ。
- 継続的なパイプラインの場合は無制限。
Lakeflow 宣言型パイプライン テーブルのプロパティ
Delta Lakeでサポートされているテーブル プロパティに加えて、次のテーブル プロパティを設定できます。
-
pipelines.autoOptimize.zOrderCols
デフォルト: なし
このテーブルを Z-order する列名のコンマ区切りリストを含むオプションの文字列。 例えば
pipelines.autoOptimize.zOrderCols = "year,month"
-
pipelines.reset.allowed
デフォルト:
true
このテーブルに対して完全な更新が許可されるかどうかを制御します。
-
pipelines.autoOptimize.managed
デフォルト:
true
このテーブルの自動的にスケジュールされた最適化を有効または無効にします。
予測的最適化で管理されるパイプラインでは、このプロパティは使用されません。
パイプラインのトリガー間隔
パイプライントリガー間隔は、パイプライン全体に対して指定することも、データセット宣言の一部として指定することもできます。連続パイプラインのトリガー間隔の設定を参照してください。
-
pipelines.trigger.interval
デフォルトはフローの種類によって異なります。
- ストリーミング クエリの場合は 5 秒。
- すべての入力データが Delta ソースからのものである場合、クエリを完了するには 1 分かかります。
- 一部のデータ ソースがデルタでない場合は、完全なクエリに 10 分かかります。
値は数値と時間単位を加えたものです。有効な時間単位は次のとおりです。
second
,seconds
minute
,minutes
hour
,hours
day
,days
値を定義するときは、単数または複数の単位を使用できます。次に例を示します。
{"pipelines.trigger.interval" : "1 hour"}
{"pipelines.trigger.interval" : "10 seconds"}
{"pipelines.trigger.interval" : "30 second"}
{"pipelines.trigger.interval" : "1 minute"}
{"pipelines.trigger.interval" : "10 minutes"}
{"pipelines.trigger.interval" : "10 minute"}
ユーザーが設定できない属性のクラスター
Lakeflow宣言型パイプラインはクラスターのライフサイクルを管理するため、多くのクラスター設定は宣言型パイプラインによって設定され Lakeflow パイプライン構成またはパイプラインで使用されるクラスターポリシー でユーザーが手動で構成することはできません。 次の表に、これらの設定と、手動で設定できない理由を示します。
-
cluster_name
Lakeflow 宣言型パイプラインは、パイプラインの更新を実行するために使用されるクラスターの名前を設定します。 これらの名前は上書きできません。
-
data_security_mode
access_mode
これらの値はシステムによって自動的に設定されます。
-
spark_version
Lakeflow 宣言型パイプライン クラスターは、最新の機能を含むように継続的に更新される Databricks Runtime のカスタム バージョンで実行されます。 Spark のバージョンは Databricks Runtime バージョンにバンドルされており、オーバーライドすることはできません。
-
autotermination_minutes
Lakeflow宣言型パイプラインがクラスターの自動終了と再利用ロジックを管理するため、クラスターの自動終了時間をオーバーライドすることはできません。
-
runtime_engine
パイプラインで Photon を有効にすることでこのフィールドを制御することはできますが、この値を直接設定することはできません。
-
effective_spark_version
この値はシステムによって自動的に設定されます。
-
cluster_source
このフィールドはシステムによって設定され、読み取り専用です。
-
docker_image
Lakeflow宣言型パイプラインがクラスターのライフサイクルを管理するため、パイプライン クラスターでカスタム コンテナを使用することはできません。
-
workload_type
この値はシステムによって設定され、上書きすることはできません。