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

パイプラインプロパティリファレンス

パイプライン JSON 構成設定とテーブル プロパティのリファレンス。これらのプロパティと構成の使用方法に関する詳細については、次の記事を参照してください。

LakeFlow Pipelinesの構成とApache Spark™ 宣言型パイプライン

Lakeflowパイプラインは、Apache Spark™ Declarative Pipelines (SDP) をベースとしています。パイプラインの構成は、SDPプロジェクト仕様のスーパーセットにほぼ該当します。SDPとLakeFlow Pipelines間のプロパティ使用法の違いについて記載されています。LakeFlow Pipelinesと SDP が共有する機能の比較については、Apache Spark宣言型パイプラインを参照してください。

パイプライン構成

  • id

    タイプ: string

    このパイプラインのグローバルに一意の識別子。識別子はシステムによって割り当てられ、変更することはできません。

    Lakeflow pipelines のみです。SDP はパイプライン識別子を割り当てません。

  • name

    タイプ: string

    このパイプラインのユーザーフレンドリな名前。この名前は、UI でパイプライン ジョブを識別するために使用できます。

    SDP で必須の name フィールドとして利用可能

  • configuration

    タイプ: object

    パイプラインを実行するクラスターのSpark構成に追加するオプションの設定リスト。これらの設定はパイプラインのランタイムによって読み込まれ、Spark構成を通じてパイプラインのクエリーから利用可能です。

    要素はkey:valueペアとしてフォーマットする必要があります。

    SDPで利用可能 configuration

  • parameters

    タイプ: object

備考

ベータ版

この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。

パイプライン ソース コードが名前付きパラメーター構文を使用して参照できる、キーと値のペアのオプションのマップです(例: :source_catalog)。パラメーターを活用することで、ソースを編集することなく、複数の環境やデータセットにわたって同じパイプラインのソースコードを再利用できます。

_``-``.キーには英数字、アンダースコア、ハイフン、ピリオドを含めることができます。値は常に文字列です。

これらのデフォルトは、更新開始時に、ジョブ内のパイプライン タスクで、またはプッシュダウンされたジョブ パラメーターを使用して上書きできます。パイプラインパラメーターはSQLソースコードからのみ参照できます。パイプラインでのパラメーターの使用を参照してください。

LakeFlow Pipelines のみです。

  • libraries

    タイプ: array of objects

    パイプライン コードと必要なアーティファクトを含むコード ファイルの配列。

    SDPではlibrariesとして利用可能で、コードファイルオブジェクトの配列ではなく、ソースファイルグロブパターンのリストとして指定されます。

  • clusters

    タイプ: array of objects

    パイプラインを実行するためのクラスターの仕様の配列。

    これが指定されていない場合、パイプラインはパイプラインのdefaultクラスター構成を自動的に選択します。

    LakeFlow Pipelinesのみ。SDPはコンピュートを管理しません。

  • development

    タイプ: boolean

    パイプラインを実行するかどうかを示すフラグ developmentまたはproductionモード。

    デフォルト値はfalseです。

    LakeFlow Pipelines のみです。

  • notifications

    タイプ: array of objects

    パイプラインの更新が完了したとき、再試行可能なエラーで失敗したとき、再試行不可能なエラーで失敗したとき、またはフローが失敗したときの電子メール通知のオプションの仕様の配列。

    LakeFlow Pipelines のみです。

  • continuous

    タイプ: boolean

    パイプラインを継続的に実行するかどうかを示すフラグ。

    デフォルト値はfalseです。

    LakeFlow Pipelines のみです。

  • catalog

    タイプ: string

    パイプラインのすべてのデータセットとメタデータが公開される、パイプラインのデフォルト カタログの名前。この値を設定すると、パイプラインのUnity Catalog有効になります。

    設定しない場合、パイプラインは、 storageで指定された場所を使用して従来のHive metastoreに公開します。

    従来の公開モードでは、現在のパイプラインのすべてのデータセットが公開されるターゲット スキーマを含むカタログを指定します。LIVE スキーマ (レガシー)を参照してください。

    SDPで利用可能 catalog

  • schema

    タイプ: string

    パイプラインのデフォルト スキーマの名前。パイプラインのすべてのデータセットとメタデータがデフォルトで公開されます。「ターゲット カタログとスキーマを設定する」を参照してください。

    SDP で、エイリアスも受け付ける database として利用可能です schema

  • target (レガシー)。

    タイプ: string

    パイプラインのdefaultスキーマ名。ここでは、パイプラインのすべてのデータセットとメタデータがdefaultで公開されます。targetの代わりにschemaを使用することが推奨されます。

    LakeFlow Pipelines のみです。

  • storage (レガシー)。

    タイプ: string

    パイプライン実行に必要な出力データとメタデータが保存される DBFS またはクラウド ストレージ上の場所。テーブルとメタデータはこの場所のサブディレクトリに保存されます。

    storage設定が指定されていない場合、システムはdbfs:/pipelines/の場所にdefaultされます。

    パイプラインの作成後は、 storage設定を変更できません。

    必要なstorageフィールドとしてSDPで利用可能です。LakeFlow Pipelinesでは、storageはレガシー設定です。

  • channel

    タイプ: string

    使用するパイプラインのランタイムのバージョン。サポートされる値は次のとおりです。

    • preview ランタイムバージョンに対する今後の変更を使用してパイプラインをテストします。
    • current をクリックして、現在のランタイムバージョンを使用します。

    channelフィールドはオプションです。デフォルト値は current 。Databricks 、本番運用ワークロードには現在のランタイム バージョンを使用することをお勧めします。

    LakeFlow Pipelines のみです。

  • edition

    Type string

    パイプラインを実行するための製品エディション。この設定により、パイプラインの要件に基づいて最適な製品エディションを選択できます:

    • CORE を使用して、ストリーミング取り込みワークロードを実行します。
    • PRO 実行ストリーミング取り込みおよびデータキャプチャ ( CDC ) ワークロードに適用されます。
    • ADVANCED ストリーミング取り込みワークロード、CDC ワークロード、およびデータ品質制約の適用が期待されるワークロードを実行します。

    editionフィールドはオプションです。デフォルト値は ADVANCED

    LakeFlow Pipelines のみです。

  • photon

    タイプ: boolean

    パイプラインの実行で Photon を使用するかどうかを示すフラグ。 Photon は、Databricks のハイパフォーマンス Spark エンジンです。 Photon 対応パイプラインは、非 Photon パイプラインとは異なるレートで請求されます。

    photonフィールドはオプションです。デフォルト値はfalseです。

    LakeFlow Pipelines のみです。

  • serverless

    タイプ: boolean

    パイプラインがServerlessコンピュートを使用するかどうかを示すフラグ。「Serverlessパイプラインの構成」を参照してください。

    LakeFlow Pipelines のみです。

  • event_log

    タイプ: object

    パイプラインのイベントログ宛先の設定。これは、イベントログをUnity Catalogテーブルに公開するnamecatalog、およびschemaのフィールドを持つオブジェクトです。パイプライン イベント logを参照してください。

    LakeFlow Pipelines のみです。

  • tags

    タイプ: object

    パイプラインのユーザー定義タグのオプションのマップ。最大25個のタグを追加できます。

    LakeFlow Pipelines のみです。

  • budget_policy_id

    タイプ: string

    このパイプラインに適用するサーバレス予算ポリシーのID。コスト追跡のためのサーバレス使用状況を割り当てるために使用されます。このフィールドは、ポリシーを明示的に設定した場合にのみJSONまたはYAML設定に表示されます。設定されていない場合、Databricksは自動的にdefaultポリシーを解決します。解決されたポリシーはパイプライン設定UIに表示されますが、JSONまたはYAML設定には書き込まれません。

    LakeFlow Pipelines のみです。

  • root_path

    タイプ: string

    パイプラインのルートパスです。設定すると、このディレクトリは Python ソースファイルの実行時に sys.path に追加されるため、モジュールを相対的にインポートできます。

    LakeFlow Pipelines のみです。

  • environment

    タイプ: object

    パイプラインのPython依存関係をインストールするために使用される環境仕様。

    LakeFlow Pipelines のみです。

  • pipelines.maxFlowRetryAttempts

    タイプ: int

    パイプラインの更新中に再試行可能な障害が発生した場合、パイプラインの更新が失敗と判断される前にフローを再試行できる最大回数です。

    これを使用して、再試行可能な失敗が発生しやすい単一のフローに対する再試行回数を制限し、更新全体が停止しないようにします。

    default: 再試行2回。再試行可能なエラーが発生した場合、パイプラインランタイムは、最初の試行を含め、フローを3回実行しようとします。

    LakeFlow Pipelines のみです。

  • pipelines.numUpdateRetryAttempts

    タイプ: int

    更新中に再試行可能な障害が発生した場合、更新が永続的に失敗するまでに更新を再試行する最大回数です。再試行は完全な更新として実行されます。

    これを使用すると、更新全体に対する再試行回数を制限できます。これにより、更新が停止した場合に、無期限に再試行するのではなく、完全に失敗させることができます。

    この問題は、自動再試行および再起動動作を使用するパイプラインにのみ適用されます。 エディタから実行されるアドホック更新、またはValidate更新を実行する場合、再試行は行われません。

    デフォルト:

    • トリガーされたパイプラインの場合は 5 つ。
    • 継続的なパイプラインの場合は無制限。

    LakeFlow Pipelines のみです。

パイプラインテーブルのプロパティ

Delta Lakeでサポートされているテーブル プロパティに加えて、次のテーブル プロパティを設定できます。

  • pipelines.autoOptimize.zOrderCols

    デフォルト: なし

    このテーブルを Z-order する列名のコンマ区切りリストを含むオプションの文字列。 例えば pipelines.autoOptimize.zOrderCols = "year,month"

    Databricks は、パイプラインテーブルのデータレイアウトを最適化するために、Z-Ordering の代わりにリキッドクラスタリングをお勧めします。Databricks がクラスタリング列を自動的に選択および維持するようにするには、CLUSTER BY AUTO を使用してください(cluster_by_auto=True は Python の場合)。「テーブルにリキッドクラスタリングを使用する」を参照してください。

    LakeFlow Pipelines のみです。

  • pipelines.reset.allowed

    デフォルト: true

    このテーブルに対して完全な更新が許可されるかどうかを制御します。

    SDPで利用可能 pipelines.reset.allowed

  • pipelines.autoOptimize.managed

    デフォルト: true

    このテーブルの自動的にスケジュールされた最適化を有効または無効にします。

    予測的最適化で管理されるパイプラインでは、このプロパティは使用されません。

    LakeFlow Pipelines のみです。

パイプラインのトリガー間隔

パイプライントリガー間隔は、パイプライン全体に対して指定することも、データセット宣言の一部として指定することもできます。連続パイプラインのトリガー間隔の設定を参照してください。

  • 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 Pipelines のみです。

ユーザーが設定できないクラスター属性

パイプラインはクラスターのライフサイクルを管理するため、多くのクラスター設定はシステムによって設定され、パイプライン設定またはパイプラインで使用されるクラスターポリシーのいずれにおいても、ユーザーが手動で構成することはできません。次の表に、これらの設定と手動で設定できない理由を示します。

Lakeflow pipelines のみです。SDPはコンピュートを管理しないため、これらのクラスター属性は適用されません。

  • cluster_name

    SDP は、パイプラインの更新を実行するために使用されるクラスターの名前を設定します。これらの名前は上書きできません。

  • data_security_mode

    access_mode

    これらの値はシステムによって自動的に設定されます。

  • spark_version

    SDP クラスターは、最新の機能が含まれるように継続的に更新される Databricks Runtime のカスタム バージョンで実行されます。Spark のバージョンは Databricks Runtime バージョンにバンドルされており、オーバーライドすることはできません。

  • autotermination_minutes

    SDP はクラスターの自動終了と再利用ロジックを管理するため、クラスターの自動終了時間をオーバーライドすることはできません。

  • runtime_engine

    パイプラインで Photon を有効にすることでこのフィールドを制御することはできますが、この値を直接設定することはできません。

  • effective_spark_version

    この値はシステムによって自動的に設定されます。

  • cluster_source

    このフィールドはシステムによって設定され、読み取り専用です。

  • docker_image

    SDP はクラスターのライフサイクルを管理するため、パイプライン クラスターではカスタム コンテナーを使用できません。

  • workload_type

    この値はシステムによって設定され、上書きすることはできません。

ソースとクエリーのオプション

一部のデータ取り込みと処理の動作は、パイプラインプロパティとしてではなく、データソースまたはクエリーで構成されます。これらには、スキーマ進化、スキーマヒントと推論、取り込みレート制限、ファイルフィルタリングが含まれます。これらを構成するには、read_filesAuto Loaderのオプションを使用します。from_jsonを使用したスキーマ進化については、パイプラインでfrom_jsonを使用してスキーマを推論および進化させるを参照してください。