ジョブの継続的な実行
連続モードを使用して、ワークロードを継続的に実行するようにスケジュールします。 Databricks では、常時オンのストリーミング ワークロードに連続モードを使用することをお勧めします。
Continuous モードは、構造化ストリーミング ワークロードの従来の推奨事項を置き換えて、無制限の再試行ポリシー と最大 1 つの並列実行を使用してジョブを構成します。
重要
サーバレス ジョブ for ジョブは、連続モードをサポートしていません。
連続モードで実行するようにジョブを構成する
ジョブを連続モードで実行するように構成するには、次の操作を行います。
サイドバーで、「 ワークフロー」をクリックします。
[ジョブ] タブの [名前] 列でジョブ名をクリックします。
[ジョブの詳細] パネルで [トリガーの追加] をクリックし、[トリガーの種類] で [連続] を選択して、[保存] をクリックします。
連続したジョブを停止するには、「 一時停止 」ボタンをクリックします。 「再開」をクリックして、ジョブを連続モードで再開します。
注:
連続ジョブの実行中のインスタンスは 1 つだけです。
実行の終了と新しい実行の開始の間には遅延があります。 この遅延は 60 秒未満にする必要があります。
タスク依存関係は、連続ジョブでは使用できません。
再試行ポリシーは、連続ジョブでは使用できません。代わりに、連続ジョブはタスク レベルとジョブ レベルで構成され、 指数関数的バックオフ アルゴリズムを使用して自動的に再試行されます。
[ 今すぐ実行 ] を選択して、停止する continuous ジョブで新しいジョブの実行をトリガーします。
継続的なジョブで新しい構成を選択するには、既存の実行をキャンセルします。 新しい実行が自動的に開始されます。 「実行の再開」をクリックして、更新された構成でジョブの実行を再開することもできます。
連続ジョブの障害はどのように処理されるか
タスク・レベルおよびジョブ・レベルでの障害は、 エクスポネンシャル・バックオフ ・アルゴリズムを使用して管理されます。
失敗したタスクは、許容される再試行の最大数に達するまで、指数関数的に増加する遅延で再試行されます。 最大再試行回数に達すると、実行はキャンセルされ、新しい実行がトリガーされます。
ジョブレベルでの連続した失敗も指数バックオフを使用して管理されるため、連続したジョブを一時停止せずに実行し、回復可能な障害が発生したときに正常な状態に戻ることができます。
連続ジョブが連続失敗の許容しきい値を超えた場合、後続のジョブ実行の管理方法について以下で説明します。
ジョブは、システムによって設定された再試行期間が経過すると再開されます。
次のジョブ実行が失敗した場合、再試行期間は延長され、この新しい再試行期間の後にジョブが再開されます。
後続のジョブ実行が失敗するたびに、再試行期間は、システムによって設定された最大再試行期間まで延長されます。 最大再試行期間に達した後も、ジョブは最大再試行期間を使用して再試行され続けます。 連続ジョブの再試行回数に制限はありません。
ジョブの実行が正常に完了して新しい実行が開始された場合、または実行が失敗せずにしきい値を超えた場合、ジョブは正常であると見なされ、バックオフ シーケンスはリセットされます。
連続ジョブは、ジョブ UI でエクスポネンシャル バックオフ状態で再開するか、ジョブ ID を POST /api/2.1/ジョブ/実行-now に渡して再開できます ジョブ 2.1 API または POST /api/2.0/ジョブ/実行-now のリクエスト Jobs 2.0 API のリクエスト。