この記事には、Lakeflow ジョブのコンピューティングを構成するための推奨事項とリソースが含まれています。
重要
ジョブのサーバーレス コンピューティングには次のような制限事項があります。
- 継続的スケジューリングはサポートされません。
- 構造化ストリーミングでは、既定または時間ベースの間隔トリガーはサポートされません。
制限事項の詳細については、「サーバーレス コンピューティングの制限事項」を参照してください。
各ジョブには、1 つ以上のタスクを含めることができます。 各タスクのコンピューティング リソースを定義します。 同じジョブに対して定義された複数のタスクで、同じコンピューティング リソースを使用できます。
各タスクに推奨されるコンピューティングは何ですか?
次の表は、各タスクの種類に対して推奨されるコンピューティングの種類とサポートされているコンピューティングの種類を示しています。
注
ジョブのサーバーレス コンピューティングには制限があり、すべてのワークロードをサポートしているわけではありません。 「サーバーレス コンピューティングの制限事項」を参照してください。
| タスク | 推奨されるコンピューティング | サポートされているコンピューティング |
|---|---|---|
| Notebooks | サーバーレス ジョブ | サーバーレス ジョブ、クラシック ジョブ、クラシック汎用 |
| Python スクリプト | サーバーレス ジョブ | サーバーレス ジョブ、クラシック ジョブ、クラシック汎用 |
| Python ホイール | サーバーレス ジョブ | サーバーレス ジョブ、クラシック ジョブ、クラシック汎用 |
| SQL | サーバーレス SQL ウェアハウス | サーバーレス SQL ウェアハウス、プロ SQL ウェアハウス |
| Lakeflow 宣言型パイプライン | サーバーレス パイプライン | サーバーレス パイプライン、クラシック パイプライン |
| dbt | サーバーレス SQL ウェアハウス | サーバーレス SQL ウェアハウス、プロ SQL ウェアハウス |
| dbt CLI コマンド | サーバーレス ジョブ | サーバーレス ジョブ、クラシック ジョブ、クラシック汎用 |
| JAR | クラシック ジョブ | クラシック ジョブ、クラシック 汎用 |
| Spark Submit(スパークサブミット) | クラシック ジョブ | クラシック ジョブ |
Lakeflow ジョブの価格は、タスクの実行に使用されるコンピューティングに関連付けられています。 詳細については、「Databricks の価格」を参照してください。
ジョブのコンピューティングはどのように構成しますか?
クラシック ジョブ コンピューティングは Lakeflow ジョブ UI から直接構成され、これらの構成はジョブ定義の一部です。 その他の使用可能なコンピューティングの種類はすべて、その構成を他のワークスペース アセットと共に格納します。 次の表に詳細を示します。
| コンピューティングの種類 | 詳細 |
|---|---|
| クラシック ジョブ コンピューティング | 汎用コンピューティングで使用できるのと同じ UI と設定を使用して、クラシック ジョブのコンピューティングを構成します。 「コンピューティング構成リファレンス」を参照してください。 |
| ジョブのサーバーレス コンピューティング | サーバーレスコンピューティングは、対応するすべてのタスクにおいて既定の計算方法です。 Databricks がサーバーレス コンピューティングのコンピューティング設定を管理します。 ワークフローのサーバーレス コンピューティングを使用した Lakeflow ジョブの実行を参照してください。 |
| SQL ウェアハウス | サーバーレスおよびプロ SQL ウェアハウスは、無制限のクラスター作成特権を持つワークスペース管理者またはユーザーによって構成されます。 既存の SQL ウェアハウスに対して実行するタスクを構成します。 「SQL ウェアハウスに接続する」を参照してください。 |
| Lakeflow 宣言型パイプライン計算 | パイプラインの構成中に、Lakeflow 宣言パイプラインのコンピューティング設定を構成します。 「Lakeflow 宣言パイプラインのクラシック コンピューティングを構成する」を参照してください。 Azure Databricks は、サーバーレスの Lakeflow 宣言パイプラインのコンピューティング リソースを管理します。 サーバーレス パイプラインの構成を参照してください。 |
| All-Purpose Compute | 必要に応じて、クラシック汎用コンピューティングを使用してタスクを構成できます。 Databricks では、運用環境の場合、この構成はお勧めしません。 「コンピューティング構成リファレンス」と「ジョブには常に汎用コンピューティングを使用した方がよいでしょうか?」を参照してください。 |
タスク間でコンピューティングを共有する
複数のタスクのオーケストレーションを行うジョブでリソースの使用量を最適化するために、同じジョブ コンピューティング リソースを使用するようにタスクを構成します。 タスク間でコンピューティングを共有すると、起動時間に関連する待機時間を短縮できます。
1 つのジョブ コンピューティング リソースを使用して、ジョブの一部であるすべてのタスク、または特定のワークロード用に最適化された複数のジョブ リソースを実行できます。 ジョブの一部として構成されたジョブ コンピューティングは、ジョブ内の他のすべてのタスクで使用できます。
次の表は、1 つのタスク用に構成されたジョブ コンピューティングと、タスク間で共有されるジョブ コンピューティングの違いを示しています。
| 1 つのタスク | タスク間で共有 | |
|---|---|---|
| 始める | タスクの実行が開始されたとき。 | コンピューティング リソースを使用するように構成された最初のタスクの実行が開始されたとき。 |
| 終了する | タスクの実行後。 | コンピューティング リソースを使用するように構成された最後のタスクが実行された後。 |
| アイドル状態のコンピューティング | 該当なし。 | コンピューティング リソースを使用していないタスクの実行中も、コンピューティングはオンのままでアイドル状態になります。 |
共有ジョブ クラスターのスコープは 1 つのジョブ実行に設定され、同じジョブの他のジョブまたは実行では使用できません。
ライブラリを共有ジョブ クラスター構成で宣言することはできません。 依存ライブラリはタスク設定に追加する必要があります。
ジョブ コンピューティングを確認、構成、およびスワップする
[ジョブの詳細] パネルの [コンピューティング] セクションには、現在のジョブのタスク用に構成されているすべてのコンピューティングが一覧表示されます。
コンピューティング仕様にマウス ポインターを合わせると、コンピューティング リソースを使用するように構成されたタスクがタスク グラフで強調表示されます。
[スワップ] ボタンを使用して、コンピューティング リソースに関連付けられているすべてのタスクのコンピューティングを変更します。
クラシック ジョブ コンピューティング リソースには、構成オプションがあります。 その他のコンピューティング リソースには、コンピューティング構成の詳細を表示および変更するためのオプションがあります。
詳細情報
Azure Databricks クラシック ジョブの構成の詳細については、「 クラシック Lakeflow ジョブを構成するためのベスト プラクティス」を参照してください。