LakeFlow宣言型パイプラインのクラシックコンピュートの設定
このページでは、 LakeFlow 宣言型 パイプライン用のクラシックコンピュートを設定する手順について説明します。 JSON スキーマのリファレンスについては、パイプライン API リファレンスの clusters
定義を参照してください。
クラシックコンピュートで実行するパイプラインを作成するには、ユーザーはまず、クラシックコンピュートをデプロイする権限(無制限の作成権限またはコンピュートポリシーへのアクセス権)を持っている必要があります。 サーバレス パイプラインでは、コンピュート作成権限は必要ありません。 デフォルトでは、すべてのワークスペース ユーザがサーバレス パイプラインを使用できます。
LakeFlow 宣言型 パイプラインランタイムは、 パイプラインコンピュート のライフサイクルを管理し、 のカスタムバージョンのDatabricks Runtimeを実行するため、Sparkバージョン名やクラスタリング名など、一部のコンピュート設定をパイプラインコンピュート設定で手動で設定することはできません。ユーザーが設定できないクラスタリング属性を参照してください。
コンピュートポリシーを選択
ワークスペース管理者は、コンピュート ポリシーを構成して、ユーザーにLakeFlow宣言型パイプライン のクラシックコンピュート リソースへのアクセスを提供できます 。 コンピュートポリシーはオプションです。 LakeFlow宣言型パイプラインに必要なコンピュート権限がない場合は、ワークスペース管理者に確認してください。「LakeFlow 宣言型 パイプライン コンピュートの制限を定義する」を参照してください。
パイプラインAPIを使用する場合、コンピュート ポリシーのデフォルト値が正しく適用されるようにするには、clusters
定義で"apply_policy_default_values": true
次のように設定します。
{
"clusters": [
{
"label": "default",
"policy_id": "<policy-id>",
"apply_policy_default_values": true
}
]
}
コンピュートタグを構成する
パイプラインのクラシック・コンピュート・リソースにカスタム・タグを追加できます。タグを使用すると、コンピュート リソースのコストを監視できます さまざまなグループ 組織内。 Databricks は、これらのタグをクラウド リソースと、 使用状況システムテーブルに記録された使用状況ログに適用します。 タグを追加するには、 クラスタータグ UI 設定を使用するか、パイプラインの JSON 設定を編集します。
パイプラインを実行するインスタンスタイプを選択する
デフォルトでは、Lakeflow宣言型パイプラインがパイプラインのドライバーノードとワーカーノードのインスタンスタイプを選択します。 オプションで、インスタンスタイプを設定できます。 たとえば、インスタンスタイプを選択して、パイプラインのパフォーマンスを向上させたり、パイプラインの実行時にメモリの問題に対処したりします。
Lakeflow 宣言型パイプライン UI でパイプラインを作成または編集するときにインスタンスタイプを設定するには:
- 設定 ボタンをクリックします。
- パイプライン設定の 詳細設定 セクションの ワーカータイプ と ドライバータイプ ドロップダウンメニューで、パイプラインのインスタンスタイプを選択します。
アップデートとメンテナンスのクラスターに個別の設定を構成する
各宣言型パイプラインには、パイプラインの更新を処理する更新クラスターと、毎日のメンテナンスタスクを実行するメンテナンス クラスター ( 予測的最適化を含む) の 2 つの関連付けられたコンピュート リソースがあります。 デフォルトでは、コンピュート構成はこれらの両方に適用されます クラスター。 両方のクラスターに同じ設定を使用すると、ストレージの場所のデータ アクセス資格情報などの必要な構成がメンテナンス クラスターに適用されるため、メンテナンス実行の信頼性が向上します。
2 つのクラスターのうちの 1 つにのみ設定を適用するには、設定JSONオブジェクトに label
フィールドを追加します。label
フィールドには、次の 3 つの値があります。
maintenance
: メンテナンスクラスターにのみ設定を適用します。updates
: アップデートクラスターにのみ設定を適用します。default
: アップデートクラスターとメンテナンスクラスターの両方に設定を適用します。 これは、label
フィールドが省略されている場合のデフォルト値です。
競合する設定がある場合、 updates
または maintenance
ラベルを持つ設定は、 default
ラベルで定義された設定を上書きします。
日次メンテナンス クラスターは、特定の場合にのみ使用されます。
- Hive metastoreに格納されたパイプライン。
- サーバレス コンピュート サービス規約に同意していないワークスペース内のパイプライン。 条件への同意についてサポートが必要な場合は、Databricks の担当者にお問い合わせください。
例: アップデートクラスターの設定を定義する
次の例では、updates
クラスターの構成にのみ追加される Spark 構成パラメーターを定義しています。
{
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
},
{
"label": "updates",
"spark_conf": {
"key": "value"
}
}
]
}
例: アップデートクラスターのインスタンスタイプの構成
maintenance
クラスターに不要なリソースを割り当てないように、この例では updates
ラベルを使用して、updates
クラスターのみのインスタンスタイプを設定します。
{
"clusters": [
{
"label": "updates",
"node_type_id": "r6i.xlarge",
"driver_node_type_id": "i3.large",
"...": "..."
}
]
}
コンピュートシャットダウンの遅延
クラスターのシャットダウン動作を制御するには、開発モードまたは本番運用モードを使用するか、パイプライン構成の pipelines.clusterShutdown.delay
設定を使用します。 次の例では、 pipelines.clusterShutdown.delay
値を 60 秒に設定します。
{
"configuration": {
"pipelines.clusterShutdown.delay": "60s"
}
}
production
モードが有効になっている場合、pipelines.clusterShutdown.delay
のデフォルト値は 0 seconds
です。development
モードが有効になっている場合、デフォルト値は 2 hours
です。
LakeFlow 宣言型 パイプライン コンピュート リソースは使用しないときに自動的にシャットダウンされるため、 autotermination_minutes
を設定するコンピュート ポリシーを使用することはできません。これにより、エラーが発生します。
単一ノードコンピュートの作成
シングルノードコンピュートには、マスターとワーカーの両方として機能するドライバーノードがあります。これは、少量のデータを使用するワークロード、または分散されていないワークロードを対象としています。
単一ノードのコンピュートを作成するには、 num_workers
を0に設定します。例えば:
{
"clusters": [
{
"num_workers": 0
}
]
}