Jobs API 2.0
重要
この記事では、Jobs API の 2.0 バージョンについて説明します。 ただし、Databricks では、新規と既存のクライアントとスクリプトには Jobs API 2.1 を使うことが推奨されます。 2.0 から 2.1 バージョンへの変更について詳しくは、「Jobs API 2.0 から 2.1 への更新」をご覧ください。
Jobs API を使用すると、ジョブを作成、編集、および削除できます。 Jobs API に対する要求の最大許容サイズは 10 MB です。
Azure Databricks ジョブでの複数タスクのオーケストレーションをサポートする Jobs API への更新について詳しくは、「JJobs API 2.0 から 2.1 への更新」をご覧ください。
警告
シークレットをハード コーディングしたり、プレーンテキストとして保存したりしないでください。 Secrets API は、Databricks CLI でシークレットを管理するために使用できます。 ノートブックおよびジョブでシークレットを参照するには、シークレット ユーティリティ (dbutils.secrets) を使用します。
注意
Jobs API 要求を行っているときに 500 番台のエラーを受け取る場合、Databricks では、(30 秒以上の再試行間隔で) 最大 10 分間、要求を再試行することを推奨しています。
重要
Databricks REST API にアクセスするには、認証する必要があります。
作成
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/create |
POST |
新しいジョブを作成します。
例
この例では、毎晩 10:15 に JAR タスクを実行するジョブを作成します。
Request
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/create \
--data @create-job.json \
| jq .
create-job.json
:
{
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 3600,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。create-job.json
の内容を、ソリューションに適したフィールドにします。
Response
{
"job_id": 1
}
要求の構造
重要
- 新しいジョブ クラスターでジョブを実行すると、そのジョブは、Jobs Compute 価格の対象となる Jobs Compute (自動) ワークロードとして扱われます。
- 既存の汎用クラスターでジョブを実行すると、All-Purpose Compute 価格の対象となる All-Purpose Compute (対話型) ワークロードとして扱われます。
フィールド名 | Type | 説明 |
---|---|---|
existing_cluster_id またはnew_cluster |
STRING または NewCluster |
existing_cluster_id の場合、このジョブのすべての実行に使用される既存のクラスターの ID。 既存のクラスターでジョブを実行しているときは、クラスターが応答を停止した場合、手動で再起動することが必要な場合があります。 信頼性を高めるために、新しいクラスターでジョブを実行することをお勧めします。 new_cluster の場合、各実行に対して作成されるクラスターの説明。 PipelineTask を指定する場合、このフィールドは空にできます。 |
notebook_task または spark_jar_task またはspark_python_task または spark_submit_task またはpipeline_task またはrun_job_task |
NotebookTask または SparkJarTask または SparkPythonTask または SparkSubmitTask または PipelineTask または RunJobTask | notebook_task の場合は、このジョブでノートブックを実行する必要があることを示します。 このフィールドは、spark_jar_task と組み合わせて指定できません。 spark_jar_task の場合は、このジョブで JAR を実行する必要があることを示します。 spark_python_task の場合は、このジョブで Python ファイルを実行する必要があることを示します。 spark_submit_task の場合は、spark submit スクリプトでこのジョブを起動する必要があることを示します。 pipeline_task の場合は、このジョブで Delta Live Tables パイプラインを実行する必要があることを示します。 run_job_task の場合は、このジョブが別のジョブを実行する必要があることを示します。 |
name |
STRING |
ジョブの省略可能な名前。 既定値は Untitled です。 |
libraries |
Library の配列 | ジョブを実行するクラスターにインストールされるライブラリの省略可能な一覧。 既定値は空の一覧です。 |
email_notifications |
JobEmailNotifications | このジョブの実行が開始および完了したとき、およびこのジョブが削除されたときに通知される電子メール アドレス セット (省略可能)。 既定の動作では、電子メールは送信されません。 |
webhook_notifications |
WebhookNotifications | このジョブの実行が開始、完了、または失敗したときに通知するシステム同期先のオプションのセット。 |
notification_settings |
JobNotificationSettings | このジョブの email_notifications と webhook_notifications のそれぞれに通知を送信するときに使用されるオプションの通知設定。 |
timeout_seconds |
INT32 |
このジョブの各実行に適用されるタイムアウト (省略可能)。 既定の動作では、タイムアウトはありません。 |
max_retries |
INT32 |
失敗した実行を再試行する最大回数 (省略可能)。 次で完了した場合、実行は失敗と見なされます: FAILED result_state またはINTERNAL_ERROR life_cycle_state 。 値 -1 は無期限に再試行することを意味し、値 0 は再試行しないことを意味します。 既定の動作では、再試行しません。 |
min_retry_interval_millis |
INT32 |
失敗した実行の開始からその後の再試行実行までの省略可能な最小間隔 (ミリ秒単位)。 既定の動作では、失敗した実行はすぐに再試行されます。 |
retry_on_timeout |
BOOL |
ジョブがタイム アウトした場合に再試行するかどうかを指定するポリシー (省略可能)。既定の動作では、タイムアウト時に再試行されません。 |
schedule |
CronSchedule | このジョブの定期的なスケジュール (省略可能)。 既定の動作では、ジョブ UI で [今すぐ実行] をクリックするか、API 要求を runNow に送信してトリガーするとジョブが実行されます。 |
max_concurrent_runs |
INT32 |
ジョブの同時実行の最大許容数 (省略可能)。 同じジョブの複数の実行を同時に実行できるようにする場合は、この値を設定します。 これは、たとえば、頻繁なスケジュールでジョブをトリガーし、連続する実行を互いにオーバーラップさせたい場合や、入力パラメーターが異なる複数の実行をトリガーしたい場合などに便利です。 この設定は、新しい実行にのみ影響します。 たとえば、ジョブのコンカレンシーが 4 で、アクティブな同時実行が 4 つあるとします。 その後、コンカレンシーを 3 に設定しても、アクティブな実行はいずれも中止されません。 ただし、それ以降は、アクティブな実行が 3 個未満にならない限り、新しい実行はスキップされます。 この値は 1000 以下にする必要があります。 この値を 0 に設定すると、すべての新しい実行がスキップされます。 既定の動作では、1 つの同時実行のみが許可されます。 |
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
新しく作成されたジョブの正規識別子。 |
リスト
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/list |
GET |
すべてのジョブを一覧表示します。
例
Request
curl --netrc --request GET \
https://<databricks-instance>/api/2.0/jobs/list \
| jq .
<databricks-instance>
は、Azure Databricks のワークスペース インスタンスの名前 (例: adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。
Response
{
"jobs": [
{
"job_id": 1,
"settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
},
"created_time": 1457570074236
}
]
}
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
jobs |
Job の配列 | ジョブの一覧。 |
削除
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/delete |
POST |
ジョブを削除し、JobSettings.email_notifications
に指定されたアドレスに電子メールを送信します。 ジョブが既に削除されている場合、アクションは発生しません。 ジョブが削除された後は、その詳細も実行履歴もジョブ UI または API に表示されません。 この要求が完了すると、ジョブは確実に削除されます。 ただし、この要求の受信前にアクティブだった実行は、まだアクティブな場合があります。 それらは非同期的に終了されます。
例
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/delete \
--data '{ "job_id": <job-id> }'
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<job-id>
を、ジョブの ID にします。例:123
。
この例では、.netrc ファイルを使用します。
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
削除するジョブの正規識別子。 このフィールドは必須です。 |
取得
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/get |
GET |
1 つのジョブに関する情報を取得します。
例
Request
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/get?job_id=<job-id>' \
| jq .
または
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/get \
--data job_id=<job-id> \
| jq .
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<job-id>
を、ジョブの ID にします。例:123
。
Response
{
"job_id": 1,
"settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
},
"created_time": 1457570074236
}
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
情報を取得するジョブの正規識別子。 このフィールドは必須です。 |
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
このジョブの正規識別子。 |
creator_user_name |
STRING |
作成者のユーザー名。 ユーザーが削除されている場合、このフィールドは応答に含められません。 |
settings |
JobSettings | このジョブとそのすべての実行の設定。 これらの設定は、リセットまたは更新エンドポイント使用して更新できます。 |
created_time |
INT64 |
このジョブが作成された時刻をエポック ミリ秒 (1970 年 1 月 1 日 UTC からのミリ秒) で示したもの。 |
リセット
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/reset |
POST |
特定ジョブのすべての設定を上書きします。 ジョブの設定を部分的に更新するには、更新エンドポイントを使用します。
例
この要求例では、ジョブ 2 を create 例のジョブ 1 と同じにします。
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/reset \
--data @reset-job.json \
| jq .
reset-job.json
:
{
"job_id": 2,
"new_settings": {
"name": "Nightly model training",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"timeout_seconds": 100000000,
"max_retries": 1,
"schedule": {
"quartz_cron_expression": "0 15 22 * * ?",
"timezone_id": "America/Los_Angeles",
"pause_status": "UNPAUSED"
},
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
}
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。reset-job.json
の内容を、ソリューションに適したフィールドにします。
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
リセットするジョブの正規識別子。 これは必須フィールドです。 |
new_settings |
JobSettings | ジョブの新しい設定。 これらの設定では、古い設定を完全に置き換えます。JobSettings.timeout_seconds フィールドに対する変更は、アクティブな実行に適用されます。 他のフィールドへの変更は、今後の実行にのみ適用されます。 |
更新
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/update |
POST |
既存ジョブの特定の設定を追加、変更、または削除します。 すべてのジョブ設定を上書きするには、リセットエンドポイントを使用します。
例
この要求例では、ライブラリを削除し、create 例で定義されたジョブ 1 に電子メール通知設定を追加します。
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/update \
--data @update-job.json \
| jq .
update-job.json
:
{
"job_id": 1,
"new_settings": {
"existing_cluster_id": "1201-my-cluster",
"email_notifications": {
"on_start": [ "someone@example.com" ],
"on_success": [],
"on_failure": []
}
},
"fields_to_remove": ["libraries"]
}
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。update-job.json
の内容を、ソリューションに適したフィールドにします。
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
更新するジョブの正規識別子。 これは必須フィールドです。 |
new_settings |
JobSettings | ジョブの新しい設定。 配列を除き、 new_settings で指定された最上位フィールドは完全に置き換えられます。 配列はそれぞれのキー フィールド (task_key や job_cluster_key ) に基づいてマージされ、同じキーを持つ配列エントリは完全に置き換えられます。 配列のマージを除き、入れ子になったフィールドの部分的な更新はサポートされていません。JobSettings.timeout_seconds フィールドに対する変更は、アクティブな実行に適用されます。 他のフィールドへの変更は、今後の実行にのみ適用されます。 |
fields_to_remove |
STRING の配列です。 |
ジョブ設定の最上位フィールドを削除します。 tasks および job_clusters 配列からのエントリを除き、入れ子になったフィールドの削除はサポートされていません。 たとえば、このフィールドの有効な引数は次のようになります。["libraries", "schedule", "tasks/task_1", "job_clusters/Default"] このフィールドは省略可能です。 |
今すぐ実行
重要
- 1 つのワークスペースでのタスクの同時実行は、1000 に制限されています。 すぐに開始できない実行を要求した場合は、
429 Too Many Requests
応答が返されます。 - 1 時間に 1 つのワークスペースで作成できるジョブの数は、10000 に制限されます ("実行の送信" を含む)。 この制限は、REST API およびノートブック ワークフローによって作成されるジョブにも影響します。
- ワークスペースには、最大 12,000 個の保存済みジョブを含めることができます。
- ジョブには、最大 100 個のタスクを含めることができます。
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/run-now |
POST |
今すぐジョブを実行し、トリガーされた実行の run_id
を返します。
例
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/run-now \
--data @run-job.json \
| jq .
run-job.json
:
ノートブック ジョブの要求例。
{
"job_id": 1,
"notebook_params": {
"name": "john doe",
"age": "35"
}
}
JAR ジョブの要求例。
{
"job_id": 2,
"jar_params": [ "john doe", "35" ]
}
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。run-job.json
の内容を、ソリューションに適したフィールドにします。
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
|
jar_params |
STRING の配列です。 |
JAR タスクを含むジョブのパラメーターの一覧。例: "jar_params": ["john doe", "35"] 。 これらのパラメーターは、Spark JAR タスクに指定されたメイン クラスの main 関数を呼び出すために使用されます。 run-now に指定されていない場合は、既定で空の一覧になります。 jar_params と notebook_params を組み合わせて指定することはできません。 このフィールドの JSON 表現 (つまり {"jar_params":["john doe","35"]} ) は、10,000 バイト以下にする必要があります。 |
notebook_params |
ParamPair のマップ | ノートブック タスクを含むジョブのキーから値へのマップ。例:"notebook_params": {"name": "john doe", "age": "35"} 。 このマップはノートブックに渡され、dbutils.widgets.get 関数を使用してアクセスできます。run-now に指定されていない場合、トリガーされた実行ではジョブの基本パラメーターが使用されます。notebook_params と jar_params を組み合わせて指定することはできません。 このフィールドの JSON 表現 (つまり、 {"notebook_params":{"name":"john doe","age":"35"}} ) は 10,000 バイト以下にする必要があります。 |
python_params |
STRING の配列です。 |
Python タスクを含むジョブのパラメーターの一覧。例: "python_params": ["john doe", "35"] 。 これらのパラメーターは、コマンド ライン パラメーターとして Python ファイルに渡されます。 run-now に指定されている場合、ジョブ設定に指定されたパラメーターを上書きします。 このフィールドの JSON 表現 (つまり {"python_params":["john doe","35"]} ) は、10,000 バイト以下にする必要があります。 |
spark_submit_params |
STRING の配列です。 |
spark submit タスクを含むジョブのパラメーターの一覧。例:"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] 。 これらのパラメーターは、コマンド ライン パラメーターとして spark-submit スクリプトに渡されます。 run-now に指定されている場合、ジョブ設定に指定されたパラメーターを上書きします。 このフィールドの JSON 表現は、10,000 バイト以下にする必要があります。 |
idempotency_token |
STRING |
ジョブ実行要求のべき等性を保証するためのトークン (省略可能)。 指定されたトークンを持つ実行がすでに存在する場合は、要求で新しい実行は作成されず、代わりに既存の実行の ID が返されます。 指定されたトークンを使用した実行が削除されると、エラーが返されます。 べき等性トークンを指定した場合は、エラーが発生したときに、要求が成功するまで再試行できます。 Azure Databricks によって、そのべき等性トークンで厳密に 1 回の実行が起動されることが保証されます。 このトークンは、64 文字以内で指定する必要があります。 詳細については、ジョブのべき等性を保証する方法に関する記事を参照してください。 |
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
run_id |
INT64 |
新しくトリガーされた実行のグローバルに一意の ID。 |
number_in_job |
INT64 |
ジョブのすべての実行の中での、この実行のシーケンス番号。 |
実行の送信
重要
- 1 つのワークスペースでのタスクの同時実行は、1000 に制限されています。 すぐに開始できない実行を要求した場合は、
429 Too Many Requests
応答が返されます。 - 1 時間に 1 つのワークスペースで作成できるジョブの数は、10000 に制限されます ("実行の送信" を含む)。 この制限は、REST API およびノートブック ワークフローによって作成されるジョブにも影響します。
- ワークスペースには、最大 12,000 個の保存済みジョブを含めることができます。
- ジョブには、最大 100 個のタスクを含めることができます。
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/runs/submit |
POST |
1 回限りの実行を送信します。 このエンドポイントを使用すると、ジョブを作成せずにワークロードを直接送信できます。 ジョブが送信された後の実行状態を確認するには、jobs/runs/get
API を使用します。
例
Request
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/submit \
--data @submit-job.json \
| jq .
submit-job.json
:
{
"run_name": "my spark task",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "Standard_D3_v2",
"num_workers": 10
},
"libraries": [
{
"jar": "dbfs:/my-jar.jar"
},
{
"maven": {
"coordinates": "org.jsoup:jsoup:1.7.2"
}
}
],
"spark_jar_task": {
"main_class_name": "com.databricks.ComputeModels"
}
}
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。submit-job.json
の内容を、ソリューションに適したフィールドにします。
Response
{
"run_id": 123
}
要求の構造
重要
- 新しいジョブ クラスターでジョブを実行すると、そのジョブは、Jobs Compute 価格の対象となる Jobs Compute (自動) ワークロードとして扱われます。
- 既存の汎用クラスターでジョブを実行すると、All-Purpose Compute 価格の対象となる All-Purpose Compute (対話型) ワークロードとして扱われます。
フィールド名 | Type | 説明 |
---|---|---|
existing_cluster_id またはnew_cluster |
STRING または NewCluster |
existing_cluster_id の場合、このジョブのすべての実行に使用される既存のクラスターの ID。 既存のクラスターでジョブを実行しているときは、クラスターが応答を停止した場合、手動で再起動することが必要な場合があります。 信頼性を高めるために、新しいクラスターでジョブを実行することをお勧めします。 new_cluster の場合、各実行に対して作成されるクラスターの説明。 PipelineTask を指定する場合、このフィールドは空にできます。 |
notebook_task または spark_jar_task またはspark_python_task または spark_submit_task またはpipeline_task またはrun_job_task |
NotebookTask または SparkJarTask または SparkPythonTask または SparkSubmitTask または PipelineTask または RunJobTask | notebook_task の場合は、このジョブでノートブックを実行する必要があることを示します。 このフィールドは、spark_jar_task と組み合わせて指定できません。 spark_jar_task の場合は、このジョブで JAR を実行する必要があることを示します。 spark_python_task の場合は、このジョブで Python ファイルを実行する必要があることを示します。 spark_submit_task の場合は、spark submit スクリプトでこのジョブを起動する必要があることを示します。 pipeline_task の場合は、このジョブで Delta Live Tables パイプラインを実行する必要があることを示します。 run_job_task の場合は、このジョブが別のジョブを実行する必要があることを示します。 |
run_name |
STRING |
実行の名前 (省略可能)。 既定値は Untitled です。 |
webhook_notifications |
WebhookNotifications | このジョブの実行が開始、完了、または失敗したときに通知するシステム同期先のオプションのセット。 |
notification_settings |
JobNotificationSettings | この実行の webhook_notifications のそれぞれに通知を送信するときに使用されるオプションの通知設定。 |
libraries |
Library の配列 | ジョブを実行するクラスターにインストールされるライブラリの省略可能な一覧。 既定値は空の一覧です。 |
timeout_seconds |
INT32 |
このジョブの各実行に適用されるタイムアウト (省略可能)。 既定の動作では、タイムアウトはありません。 |
idempotency_token |
STRING |
ジョブ実行要求のべき等性を保証するためのトークン (省略可能)。 指定されたトークンを持つ実行がすでに存在する場合は、要求で新しい実行は作成されず、代わりに既存の実行の ID が返されます。 指定されたトークンを使用した実行が削除されると、エラーが返されます。 べき等性トークンを指定した場合は、エラーが発生したときに、要求が成功するまで再試行できます。 Azure Databricks によって、そのべき等性トークンで厳密に 1 回の実行が起動されることが保証されます。 このトークンは、64 文字以内で指定する必要があります。 詳細については、ジョブのべき等性を保証する方法に関する記事を参照してください。 |
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
run_id |
INT64 |
新しく送信された実行の正規識別子。 |
実行 リスト
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/runs/list |
GET |
開始時刻の降順で実行を一覧表示します。
注意
実行は 60 日後に自動的に削除されます。 60 日を超えた後もそれらを参照したい場合は、期限が切れる前に古い実行結果を保存する必要があります。 UI を使用してエクスポートするには、ジョブ実行結果のエクスポートに関する記事を参照してください。 Jobs API を使用してエクスポートするには、「実行のエクスポート」を参照してください。
例
Request
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/list?job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .
または
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/list \
--data 'job_id=<job-id>&active_only=<true-false>&offset=<offset>&limit=<limit>&run_type=<run-type>' \
| jq .
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<job-id>
を、ジョブの ID にします。例:123
。- "
<true-false>
をtrue
またはfalse
にします"。 <offset>
を、offset
値にします。<limit>
を、limit
値にします。<run-type>
を、run_type
値にします。
Response
{
"runs": [
{
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "RUNNING",
"state_message": "Performing action"
},
"task": {
"notebook_task": {
"notebook_path": "/Users/donald@duck.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"end_time": 1457570075149,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
}
],
"has_more": true
}
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
active_only またはcompleted_only |
BOOL またはBOOL |
active_only が true の場合は、アクティブな実行だけが結果に含まれます。それ以外の場合は、アクティブと完了済みの両方の実行が一覧表示されます。 アクティブな実行は、PENDING 、RUNNING 、または TERMINATING RunLifecycleState の状態の実行です。 completed_only が true の場合は、このフィールドを true にできません。completed_only が true の場合は、完了済みの実行だけが結果に含まれます。それ以外の場合は、アクティブと完了済みの両方の実行が一覧表示されます。 active_only が true の場合は、このフィールドを true にできません。 |
job_id |
INT64 |
実行を一覧表示するジョブ。 省略した場合、ジョブ サービスによってすべてのジョブの実行が一覧表示されます。 |
offset |
INT32 |
最新の実行を基準とした、返される最初の実行のオフセット。 |
limit |
INT32 |
返される実行の数。 この値は、0 より大きく 1000 未満にする必要があります。 既定値は 20 です。 要求で 0 の制限が指定されている場合、サービスでは代わりに上限が使用されます。 |
run_type |
STRING |
返される実行の種類。 実行の種類の説明については、「Run」を参照してください。 |
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
runs |
Run の配列 | 実行の一覧 (開始順が最も新しいものから最も古いもの)。 |
has_more |
BOOL |
true の場合、指定されたフィルターに一致する追加の実行を一覧表示できます。 |
実行の取得
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/runs/get |
GET |
実行のメタデータを取得します。
注意
実行は 60 日後に自動的に削除されます。 60 日を超えた後もそれらを参照したい場合は、期限が切れる前に古い実行結果を保存する必要があります。 UI を使用してエクスポートするには、ジョブ実行結果のエクスポートに関する記事を参照してください。 Jobs API を使用してエクスポートするには、「実行のエクスポート」を参照してください。
例
Request
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get?run_id=<run-id>' \
| jq .
または
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get \
--data run_id=<run-id> \
| jq .
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<run-id>
を、実行の ID にします。例:123
。
Response
{
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "RUNNING",
"state_message": "Performing action"
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"end_time": 1457570075149,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
}
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
run_id |
INT64 |
メタデータを取得する実行の正規識別子。 このフィールドは必須です。 |
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
この実行を含むジョブの正規識別子。 |
run_id |
INT64 |
実行の正規識別子。 この ID は、すべてのジョブのすべての実行で一意です。 |
number_in_job |
INT64 |
ジョブのすべての実行の中での、この実行のシーケンス番号。 この値は 1 から始まります。 |
original_attempt_run_id |
INT64 |
この実行が、前回の実行試行の再試行である場合、このフィールドには元の試行の run_id が含まれます。それ以外の場合は、run_id と同じです。 |
state |
RunState | 実行の結果とライフサイクルの状態。 |
schedule |
CronSchedule | 定期的なスケジューラによってトリガーされた場合、この実行をトリガーした cron スケジュール。 |
task |
JobTask | 実行によって行われたタスク (ある場合)。 |
cluster_spec |
ClusterSpec | この実行が作成されたときのジョブのクラスター仕様のスナップショット。 |
cluster_instance |
ClusterInstance | この実行に使用されるクラスター。 実行が新しいクラスターを使用するように指定されている場合、このフィールドは、ジョブ サービスが実行のためにクラスターを要求すると設定されます。 |
overriding_parameters |
RunParameters | この実行に使用されるパラメーター。 |
start_time |
INT64 |
この実行が開始された時刻をエポック ミリ秒 (1970 年 1 月 1 日 UTC からのミリ秒) で示したもの。 これは、ジョブ タスクが実行を開始した時刻ではない場合があります。たとえば、ジョブが新しいクラスターで実行されるようにスケジュールされている場合、これは、クラスターの作成呼び出しが発行された時刻になります。 |
end_time |
INT64 |
この実行が終了した時刻をエポック ミリ秒 (1970 年 1 月 1 日 UTC からのミリ秒) で示したもの。 ジョブがまだ実行されている場合、このフィールドは 0 に設定されます。 |
setup_duration |
INT64 |
クラスターを設定するのにかかった時間 (ミリ秒)。 新しいクラスターで実行される実行の場合、これはクラスターの作成時間です。既存のクラスターで実行される実行の場合は、この時間が非常に短くなります。 実行の合計期間は、setup_duration の合計で、execution_duration 、および cleanup_duration です。 マルチタスク ジョブを実行する場合、setup_duration フィールドは 0 にセットされます。 マルチタスク ジョブの実行の合計期間は、以下の価値でrun_duration フィールドの値です。 |
execution_duration |
INT64 |
JAR またはノートブックでコマンドを実行してから、それが完了する、失敗する、タイムアウトになる、キャンセルされる、または予期しないエラーが発生するまでにかかった時間 (ミリ秒)。 実行の合計期間は、setup_duration 、execution_duration 、および以下の合計ですcleanup_duration 。 マルチタスク ジョブを実行する場合、execution_duration フィールドは 0 にセットされます。 マルチタスク ジョブの実行の合計期間は、run_duration フィールドの値です。 |
cleanup_duration |
INT64 |
クラスターを終了し、関連付けられているすべての成果物をクリーンアップするのにかかった時間 (ミリ秒)。 実行の合計期間は、setup_duration 、execution_duration 、およびcleanup_duration の合計です。 マルチタスク ジョブを実行する場合、cleanup_duration フィールドは 0 にセットされます。 マルチタスク ジョブの実行の合計期間は、run_duration フィールドの値です。 |
run_duration |
INT64 |
ジョブの実行とすべての修復が完了するまでの時間 (ミリ秒単位)。 このフィールドは、マルチタスク ジョブの実行にのみセットされ、タスクの実行にはセットされません。 タスクの実行時間は、以下の合計ですsetup_duration 、 execution_duration 、および cleanup_duration 。 |
trigger |
TriggerType | この実行を開始したトリガーの種類。 |
creator_user_name |
STRING |
作成者のユーザー名。 ユーザーが削除されている場合、このフィールドは応答に含められません |
run_page_url |
STRING |
実行の詳細ページの URL。 |
実行のエクスポート
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/runs/export |
GET |
ジョブ実行タスクをエクスポートして取得します。
注意
ノートブック実行だけを HTML 形式でエクスポートできます。 他の種類の実行のエクスポートは失敗します。
例
Request
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/export?run_id=<run-id>' \
| jq .
または
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/export \
--data run_id=<run-id> \
| jq .
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<run-id>
を、実行の ID にします。例:123
。
Response
{
"views": [ {
"content": "<!DOCTYPE html><html><head>Head</head><body>Body</body></html>",
"name": "my-notebook",
"type": "NOTEBOOK"
} ]
}
JSON 応答から HTML ノートブックを抽出するには、この Python スクリプトをダウンロードして実行します。
注意
__DATABRICKS_NOTEBOOK_MODEL
オブジェクトのノートブック本文はエンコードされます。
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
run_id |
INT64 |
実行の正規識別子。 これは必須フィールドです。 |
views_to_export |
ViewsToExport | エクスポートするビュー (CODE、DASHBOARDS、または ALL)。 既定値は CODE です。 |
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
views |
ViewItem の配列 | HTML 形式のエクスポートされたコンテンツ (ビュー アイテムごとに 1 つ)。 |
実行のキャンセル
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/runs/cancel |
POST |
ジョブの実行を取り消します。 実行は非同期で取り消されるため、この要求が完了したときに実行がまだ実行中である可能性があります。 その実行は間もなく終了します。 実行が既に最終の life_cycle_state
の場合、このメソッドでは何も行われません。
このエンドポイントは、run_id
パラメーターが有効であることを検証し、無効なパラメーターには HTTP 状態コード 400 を返します。
例
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel \
--data '{ "run_id": <run-id> }'
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<run-id>
を、実行の ID にします。例:123
。
この例では、.netrc ファイルを使用します。
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
run_id |
INT64 |
取り消す実行の正規識別子。 このフィールドは必須です。 |
すべての実行のキャンセル
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/runs/cancel-all |
POST |
ジョブのアクティブな実行をすべて取り消します。 実行は非同期で取り消されるため、新しい実行の開始が妨げられることはありません。
このエンドポイントは、job_id
パラメーターが有効であることを検証し、無効なパラメーターには HTTP 状態コード 400 を返します。
例
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/cancel-all \
--data '{ "job_id": <job-id> }'
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<job-id>
を、ジョブの ID にします。例:123
。
この例では、.netrc ファイルを使用します。
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
実行をすべて取り消すジョブの正規識別子。 このフィールドは必須です。 |
実行による出力の取得
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/runs/get-output |
GET |
単一タスクの実行の出力とメタデータを取得します。 ノートブック タスクが dbutils.notebook.exit() 呼び出しによって値を返す場合、このエンドポイントを使用してその値を取得できます。 Azure Databricks では、この API は出力の最初の 5 MB を返すように制限されています。 より大きな結果を返すには、ジョブの結果をクラウド ストレージ サービスに保存できます。
このエンドポイントは、run_id
パラメーターが有効であることを検証し、無効なパラメーターには HTTP 状態コード 400 を返します。
実行は 60 日後に自動的に削除されます。 60 日を超えた後もそれらを参照したい場合は、期限が切れる前に古い実行結果を保存する必要があります。 UI を使用してエクスポートするには、ジョブ実行結果のエクスポートに関する記事を参照してください。 Jobs API を使用してエクスポートするには、「実行のエクスポート」を参照してください。
例
Request
curl --netrc --request GET \
'https://<databricks-instance>/api/2.0/jobs/runs/get-output?run_id=<run-id>' \
| jq .
または
curl --netrc --get \
https://<databricks-instance>/api/2.0/jobs/runs/get-output \
--data run_id=<run-id> \
| jq .
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<run-id>
を、実行の ID にします。例:123
。
Response
{
"metadata": {
"job_id": 1,
"run_id": 452,
"number_in_job": 5,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/my-notebook"
}
},
"cluster_spec": {
"existing_cluster_id": "1201-my-cluster"
},
"cluster_instance": {
"cluster_id": "1201-my-cluster",
"spark_context_id": "1102398-spark-context-id"
},
"overriding_parameters": {
"jar_params": ["param1", "param2"]
},
"start_time": 1457570074236,
"setup_duration": 259754,
"execution_duration": 3589020,
"cleanup_duration": 31038,
"run_duration": 3879812,
"trigger": "PERIODIC"
},
"notebook_output": {
"result": "the maybe truncated string passed to dbutils.notebook.exit()"
}
}
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
run_id |
INT64 |
実行の正規識別子。 複数のタスクを含むジョブの場合、これはタスク実行の run_id です。 「実行による出力の取得」を参照してください。 このフィールドは必須です。 |
応答の構造
フィールド名 | Type | 説明 |
---|---|---|
notebook_output またはerror |
NotebookOutput または STRING |
notebook_output の場合、ノートブック タスクの出力 (使用可能な場合)。 次を呼び出さずに (正常に、またはエラーで) 終了するノートブック タスク:dbutils.notebook.exit() は、空の出力を持っていると見なされます。 このフィールドは設定されますが、その結果の値は空になります。error の場合は、出力が使用できない理由を示すエラー メッセージ。 このメッセージは構造化されておらず、その正確な形式は変更される可能性があります。 |
metadata |
実行 | 出力を除く、実行のすべての詳細。 |
実行の削除
エンドポイント | HTTP メソッド |
---|---|
2.0/jobs/runs/delete |
POST |
非アクティブな実行を削除します。 実行がアクティブである場合は、エラーが返されます。
例
curl --netrc --request POST \
https://<databricks-instance>/api/2.0/jobs/runs/delete \
--data '{ "run_id": <run-id> }'
置換前のコード:
<databricks-instance>
は、Azure Databricks ワークスペース インスタンスの名前 (例:adb-1234567890123456.7.azuredatabricks.net
) に置き換えます。<run-id>
を、実行の ID にします。例:123
。
この例では、.netrc ファイルを使用します。
要求の構造
フィールド名 | Type | 説明 |
---|---|---|
run_id |
INT64 |
メタデータを取得する実行の正規識別子。 |
データ構造
このセクションの内容は次のとおりです。
- ABFSSStorageInfo
- 自動スケール
- AzureAttributes
- AzureAvailability
- ClusterInstance
- ClusterLogConf
- ClusterSpec
- ClusterTag
- CronSchedule
- DbfsStorageInfo
- FileStorageInfo
- InitScriptInfo
- ジョブ
- JobEmailNotifications
- JobNotificationSettings
- JobSettings
- JobTask
- JobsHealthRule
- JobsHealthRules
- Library
- MavenLibrary
- NewCluster
- NotebookOutput
- NotebookTask
- ParamPair
- PipelineTask
- PythonPyPiLibrary
- RCranLibrary
- 実行
- RunJobTask
- RunLifeCycleState
- RunParameters
- RunResultState
- RunState
- SparkConfPair
- SparkEnvPair
- SparkJarTask
- SparkPythonTask
- SparkSubmitTask
- TriggerType
- ViewItem
- ViewType
- ViewsToExport
- Webhook
- WebhookNotifications
- WorkspaceStorageInfo
ABFSSStorageInfo
Azure Data Lake Storage (ADLS) ストレージ情報。
フィールド名 | Type | 説明 |
---|---|---|
destination |
STRING |
ファイルの送信先。 例: abfss://... |
AutoScale
クラスター ワーカーの最小数と最大数を定義する範囲。
フィールド名 | Type | 説明 |
---|---|---|
min_workers |
INT32 |
使用率が低いときにクラスターをスケールダウンできるワーカーの最小数。 これは、作成後にクラスターが持つワーカーの初期数です。 |
max_workers |
INT32 |
オーバーロード時にクラスターをスケールアップできるワーカーの最大数。 max_workers は min_workers よりも真に大きい数にする必要があります。 |
AzureAttributes
Azure に関連するクラスターの作成中に設定される属性。
フィールド名 | Type | 説明 |
---|---|---|
first_on_demand |
INT32 |
クラスターの最初の first_on_demand ノードは、オンデマンド インスタンスに配置されます。 この値は 0 より大きくする必要があります。それ以外の場合、クラスター作成の検証が失敗します。 この値が現在のクラスター サイズ以上の場合、すべてのノードがオンデマンド インスタンスに配置されます。 この値が現在のクラスター サイズより小さい場合、first_on_demand ノードはオンデマンド インスタンスに配置され、残りは可用性インスタンスに配置されます。 この値はクラスター サイズに影響を与えません。また、クラスターの有効期間中に変更することはできません。 |
availability |
AzureAvailability | first_on_demand の後続のすべてのノードで使用される可用性の種類。 |
spot_bid_max_price |
DOUBLE |
Azure スポット インスタンスに使用される最大入札価格。 これは、現在のスポット価格以上に設定できます。 また、この値を -1 (既定) に設定することもできます。この値は、インスタンスを価格に基づいて削除できないことを指定するものです。 インスタンスの価格は、スポット インスタンスの現在の価格か、または標準インスタンスの価格になります。 Microsoft Azure portal で、価格履歴と削除率を参照できます。 |
AzureAvailability
Azure インスタンスの可用性の種類の動作。
Type | 説明 |
---|---|
SPOT_AZURE |
スポット インスタンスを使用します。 |
ON_DEMAND_AZURE |
オンデマンド インスタンスを使用します。 |
SPOT_WITH_FALLBACK_AZURE |
スポット インスタンスを使用するほうが望ましいものの、スポット インスタンスを取得できない場合はオンデマンド インスタンスにフォールバックします (たとえば、Azure スポット価格が高すぎる場合やクォータ外の場合)。 プールの可用性には適用されません。 |
ClusterInstance
実行によって使用されるクラスターと Spark コンテキストの識別子。 これら 2 つの値は共に、すべての時間にわたって実行コンテキストを識別します。
フィールド名 | Type | 説明 |
---|---|---|
cluster_id |
STRING |
実行によって使用されるクラスターの正規識別子。 このフィールドは、既存のクラスター上の実行で常に使用可能です。 新しいクラスター上の実行の場合は、クラスターが作成されると使用可能になります。 この値は、/#setting/sparkui/$cluster_id/driver-logs を参照してログを表示するために使用できます。 実行が完了した後も、ログは引き続き使用できます。識別子がまだ使用できない場合、このフィールドは応答に含められません。 |
spark_context_id |
STRING |
実行によって使用される Spark コンテキストの正規識別子。 このフィールドは、実行が開始された後に入力されます。 この値は、/#setting/sparkui/$cluster_id/$spark_context_id を参照して Spark UI を表示するために使用できます。 実行が完了した後も、Spark UI は引き続き使用できます。識別子がまだ使用できない場合、このフィールドは応答に含められません。 |
ClusterLogConf
クラスター ログへのパス。
フィールド名 | Type | 説明 |
---|---|---|
dbfs |
DbfsStorageInfo | クラスター ログの DBFS の場所。 ログの記録先を指定する必要があります。 たとえば、 にします。{ "dbfs" : { "destination" : "dbfs:/home/cluster_log" } } |
ClusterSpec
重要
- 新しいジョブ クラスターでジョブを実行すると、そのジョブは、Jobs Compute 価格の対象となる Jobs Compute (自動) ワークロードとして扱われます。
- 既存の汎用クラスターでジョブを実行すると、All-Purpose Compute 価格の対象となる All-Purpose Compute (対話型) ワークロードとして扱われます。
フィールド名 | Type | 説明 |
---|---|---|
existing_cluster_id またはnew_cluster |
STRING または NewCluster |
existing_cluster_id の場合、このジョブのすべての実行に使用される既存のクラスターの ID。 既存のクラスターでジョブを実行しているときは、クラスターが応答を停止した場合、手動で再起動することが必要な場合があります。 信頼性を高めるために、新しいクラスターでジョブを実行することをお勧めします。 new_cluster の場合、各実行に対して作成されるクラスターの説明。 PipelineTask を指定する場合、このフィールドは空にできます。 |
libraries |
Library の配列 | ジョブを実行するクラスターにインストールされるライブラリの省略可能な一覧。 既定値は空の一覧です。 |
ClusterTag
クラスター タグの定義。
Type | 説明 |
---|---|
STRING |
タグのキー。 キーは以下である必要があります。 - 長さは 1 から 512 文字 - 文字 <>%*&+?\\/ を含めないこと- 先頭に azure 、microsoft 、windows を使用しないこと |
STRING |
タグの値。 値の長さは UTF-8 で 256 文字以下にする必要があります。 |
CronSchedule
フィールド名 | Type | 説明 |
---|---|---|
quartz_cron_expression |
STRING |
ジョブのスケジュールを記述する、Quartz 構文を使用した Cron 式。 詳細については、Cron Trigger に関するページを参照してください。 これは必須フィールドです。 |
timezone_id |
STRING |
Java タイムゾーン ID。 ジョブのスケジュールは、このタイムゾーンに対して解決されます。 詳細については、Java TimeZone に関するページを参照してください。 これは必須フィールドです。 |
pause_status |
STRING |
このスケジュールが一時停止されているかどうかを示します。 "PAUSED" または "UNPAUSED" のいずれか。 |
DbfsStorageInfo
DBFS ストレージ情報。
フィールド名 | Type | 説明 |
---|---|---|
destination |
STRING |
DBFS の接続先。 例: dbfs:/my/path |
FileStorageInfo
ファイル ストレージ情報。
注意
この場所の種類は、Databricks Container Services を使用して設定されたクラスターでのみ使用できます。
フィールド名 | Type | 説明 |
---|---|---|
destination |
STRING |
ファイルの送信先。 例: file:/my/file.sh |
InitScriptInfo
init スクリプトへのパス。
Databricks Container Services での init スクリプトの使用手順については、「init スクリプトを使用する」を参照してください。
注意
ファイル ストレージの種類 (フィールド名: file
) は、Databricks Container Services を使用して設定されたクラスターでのみ使用できます。 「FileStorageInfo」を参照してください。
フィールド名 | Type | 説明 |
---|---|---|
workspace またはdbfs (非推奨)OR abfss |
WorkspaceStorageInfo DbfsStorageInfo (非推奨) ABFSSStorageInfo |
init スクリプトのワークスペースの場所。 ログの記録先を指定する必要があります。 たとえば、次のように入力します。{ "workspace" : { "destination" : "/Users/someone@domain.com/init_script.sh" } } (非推奨) init スクリプトの DBFS の場所。 ログの記録先を指定する必要があります。 たとえば、次のように入力します。 { "dbfs" : { "destination" : "dbfs:/home/init_script" } } init スクリプトのAzure Data Lake Storage (ADLS) の場所。 ログの記録先を指定する必要があります。 たとえば、 { "abfss": { "destination" : "abfss://..." } } のように指定します。 |
ジョブ
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
このジョブの正規識別子。 |
creator_user_name |
STRING |
作成者のユーザー名。 ユーザーがすでに削除されている場合、このフィールドは応答に含められません。 |
run_as |
STRING |
ジョブの実行に使用されるユーザー名。 run_as は現在のジョブ設定に基づいており、ジョブのアクセス制御が無効になっている場合はジョブの作成者に、ジョブのアクセス制御が有効になっている場合は is_owner アクセス許可に設定されます。 |
settings |
JobSettings | このジョブとそのすべての実行の設定。 これらの設定は、resetJob メソッドを使用して更新できます。 |
created_time |
INT64 |
このジョブが作成された時刻をエポック ミリ秒 (1970 年 1 月 1 日 UTC からのミリ秒) で示したもの。 |
JobEmailNotifications
重要
on_start、on_success、および on_failure フィールドではラテン文字 (ASCII 文字セット) のみを使用できます。 非 ASCII 文字を使用すると、エラーが返されます。 無効な非 ASCII 文字の例として、中国語、日本語の漢字、絵文字があります。
フィールド名 | Type | 説明 |
---|---|---|
on_start |
STRING の配列です。 |
実行が開始されたときに通知される電子メール アドレスの一覧。 ジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 |
on_success |
STRING の配列です。 |
実行が正常に完了したときに通知される電子メール アドレスの一覧。 実行は、TERMINATED life_cycle_state および SUCCESSFUL result_state で終了している場合、正常に完了したと見なされます。 ジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 |
on_failure |
STRING の配列です。 |
実行が正常に完了しなかったときに通知される電子メール アドレスの一覧。 実行は、次で終了している場合に、正常に完了しなかったと見なされます: INTERNAL_ERROR life_cycle_state または SKIPPED 、FAILED 、あるいは TIMED_OUT result_state。 これがジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 |
on_duration_warning_threshold_exceeded |
STRING の配列です。 |
実行の期間が health フィールドの RUN_DURATION_SECONDS メトリックに指定されたしきい値を超えた場合に通知を受け取るメール アドレスのリスト。 ジョブの health フィールドに RUN_DURATION_SECONDS メトリックのルールが指定されていない場合、通知は送信されません。 |
no_alert_for_skipped_runs |
BOOL |
true の場合、実行がスキップされたときに、on_failure に指定された受信者に電子メールを送信しません。 |
フィールド名 | Type | 説明 |
---|---|---|
on_start |
Webhook の配列 | 実行が開始されたときに通知を受け取るシステム宛先のリスト (オプション)。 ジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 on_start プロパティには、最大 3 つの宛先を指定できます。 |
on_success |
Webhook の配列 | 実行が正常に完了したときに通知を受け取るシステム宛先のリスト (オプション)。 実行は、TERMINATED life_cycle_state および SUCCESSFUL result_state で終了している場合、正常に完了したと見なされます。 ジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 on_success プロパティには、最大 3 つの宛先を指定できます。 |
on_failure |
Webhook の配列 | 実行の正常に完了しなかった場合に通知を受け取るシステム宛先のリスト (オプション)。 実行は、次で終了している場合に、正常に完了しなかったと見なされます: INTERNAL_ERROR life_cycle_state または SKIPPED 、FAILED 、あるいは TIMED_OUT result_state。 これがジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 on_failure プロパティには、最大 3 つの宛先を指定できます。 |
on_duration_warning_threshold_exceeded |
Webhook の配列 | 実行の期間が health フィールドの RUN_DURATION_SECONDS メトリックに指定されたしきい値を超えた場合に通知を受け取るシステム宛先のリスト (オプション)。 on_duration_warning_threshold_exceeded プロパティには、最大 3 つの宛先を指定できます。 |
JobNotificationSettings
フィールド名 | Type | 説明 |
---|---|---|
no_alert_for_skipped_runs |
BOOL |
true の場合、実行がスキップされたときに、on_failure に指定された受信者に通知を送信しません。 |
no_alert_for_canceled_runs |
BOOL |
true の場合、実行がキャンセルされたときに、on_failure に指定された受信者に通知を送信しません。 |
alert_on_last_attempt |
BOOL |
true の場合、再試行された実行について on_start で指定された受信者に通知を送信せず、実行の最後の再試行まで on_failure で指定された受信者に通知を送信しません。 |
JobSettings
重要
- 新しいジョブ クラスターでジョブを実行すると、そのジョブは、Jobs Compute 価格の対象となる Jobs Compute (自動) ワークロードとして扱われます。
- 既存の汎用クラスターでジョブを実行すると、All-Purpose Compute 価格の対象となる All-Purpose Compute (対話型) ワークロードとして扱われます。
ジョブの設定。 これらの設定は、resetJob
メソッドを使用して更新できます。
フィールド名 | Type | 説明 |
---|---|---|
existing_cluster_id またはnew_cluster |
STRING または NewCluster |
existing_cluster_id の場合、このジョブのすべての実行に使用される既存のクラスターの ID。 既存のクラスターでジョブを実行しているときは、クラスターが応答を停止した場合、手動で再起動することが必要な場合があります。 信頼性を高めるために、新しいクラスターでジョブを実行することをお勧めします。 new_cluster の場合、各実行に対して作成されるクラスターの説明。 PipelineTask を指定する場合、このフィールドは空にできます。 |
notebook_task または spark_jar_task またはspark_python_task または spark_submit_task またはpipeline_task またはrun_job_task |
NotebookTask または SparkJarTask または SparkPythonTask または SparkSubmitTask または PipelineTask または RunJobTask | notebook_task の場合は、このジョブでノートブックを実行する必要があることを示します。 このフィールドは、spark_jar_task と組み合わせて指定できません。 spark_jar_task の場合は、このジョブで JAR を実行する必要があることを示します。 spark_python_task の場合は、このジョブで Python ファイルを実行する必要があることを示します。 spark_submit_task の場合は、spark submit スクリプトでこのジョブを起動する必要があることを示します。 pipeline_task の場合は、このジョブで Delta Live Tables パイプラインを実行する必要があることを示します。 run_job_task の場合は、このジョブが別のジョブを実行する必要があることを示します。 |
name |
STRING |
ジョブの省略可能な名前。 既定値は Untitled です。 |
libraries |
Library の配列 | ジョブを実行するクラスターにインストールされるライブラリの省略可能な一覧。 既定値は空の一覧です。 |
email_notifications |
JobEmailNotifications | このジョブの実行が開始または完了したとき、およびこのジョブが削除されたときに通知される電子メール アドレスのセット (省略可能)。 既定の動作では、電子メールは送信されません。 |
webhook_notifications |
WebhookNotifications | このジョブの実行が開始、完了、または失敗したときに通知するシステム同期先のオプションのセット。 |
notification_settings |
JobNotificationSettings | このジョブの email_notifications と webhook_notifications のそれぞれに通知を送信するときに使用されるオプションの通知設定。 |
timeout_seconds |
INT32 |
このジョブの各実行に適用されるタイムアウト (省略可能)。 既定の動作では、タイムアウトはありません。 |
max_retries |
INT32 |
失敗した実行を再試行する最大回数 (省略可能)。 次で完了した場合、実行は失敗と見なされます: FAILED result_state またはINTERNAL_ERROR life_cycle_state 。 値 -1 は無期限に再試行することを意味し、値 0 は再試行しないことを意味します。 既定の動作では、再試行しません。 |
min_retry_interval_millis |
INT32 |
試行間の最小間隔 (ミリ秒単位) (省略可能)。 既定の動作では、失敗した実行はすぐに再試行されます。 |
retry_on_timeout |
BOOL |
ジョブがタイム アウトした場合に再試行するかどうかを指定するポリシー (省略可能)。既定の動作では、タイムアウト時に再試行されません。 |
schedule |
CronSchedule | このジョブの定期的なスケジュール (省略可能)。 既定の動作では、ジョブ UI で [今すぐ実行] をクリックするか、API 要求を次に送信してトリガーされた場合にのみ、ジョブが実行されます:runNow 。 |
max_concurrent_runs |
INT32 |
ジョブの同時実行の最大許容数 (省略可能)。 同じジョブの複数の実行を同時に実行できるようにする場合は、この値を設定します。 これは、たとえば、頻繁なスケジュールでジョブをトリガーし、連続する実行を互いにオーバーラップさせたい場合や、入力パラメーターが異なる複数の実行をトリガーしたい場合などに便利です。 この設定は、新しい実行にのみ影響します。 たとえば、ジョブのコンカレンシーが 4 で、アクティブな同時実行が 4 つあるとします。 その後、コンカレンシーを 3 に設定しても、アクティブな実行はいずれも中止されません。 ただし、それ以降は、アクティブな実行が 3 つ未満でない限り、新しい実行はスキップされます。 この値は 1000 以下にする必要があります。 この値を 0 に設定すると、すべての新しい実行がスキップされます。 既定の動作では、1 つの同時実行のみが許可されます。 |
health |
JobsHealthRules | ジョブに対して定義されている正常性ルール セット (オプション)。 |
JobTask
フィールド名 | Type | 説明 |
---|---|---|
notebook_task または spark_jar_task またはspark_python_task または spark_submit_task またはpipeline_task またはrun_job_task |
NotebookTask または SparkJarTask または SparkPythonTask または SparkSubmitTask または PipelineTask または RunJobTask | notebook_task の場合は、このジョブでノートブックを実行する必要があることを示します。 このフィールドは、spark_jar_task と組み合わせて指定できません。 spark_jar_task の場合は、このジョブで JAR を実行する必要があることを示します。 spark_python_task の場合は、このジョブで Python ファイルを実行する必要があることを示します。 spark_submit_task の場合は、spark submit スクリプトでこのジョブを起動する必要があることを示します。 pipeline_task の場合は、このジョブで Delta Live Tables パイプラインを実行する必要があることを示します。 run_job_task の場合は、このジョブが別のジョブを実行する必要があることを示します。 |
JobsHealthRule
フィールド名 | Type | 説明 |
---|---|---|
metric |
STRING |
特定の正常性ルールに対して評価される正常性メトリックを指定します。 有効な値は RUN_DURATION_SECONDS です。 |
operator |
STRING |
正常性メトリック値と指定されたしきい値の比較に使用する演算子を指定します。 有効な値は GREATER_THAN です。 |
value |
INT32 |
正常性ルールに準拠するために正常性メトリックが満たす必要があるしきい値を指定します。 |
JobsHealthRules
フィールド名 | Type | 説明 |
---|---|---|
rules |
JobsHealthRule の配列 | ジョブに対して定義できる正常性ルール セット (オプション)。 |
ライブラリ
フィールド名 | Type | 説明 |
---|---|---|
jar または egg または whl またはpypi または maven または cran |
STRING 、STRING 、STRING 、PythonPyPiLibrary、MavenLibrary、RCranLibrary |
jar の場合は、インストールする JAR の URI。 DBFS と ADLS (abfss ) の URI がサポートされています。 例: { "jar": "dbfs:/mnt/databricks/library.jar" } または{ "jar": "abfss://<container-path>/library.jar" } 。 ADLS を使用する場合は、クラスターにライブラリに対する読み取りアクセス権限があることを確認してください。egg の場合、インストールする egg の URI。 DBFS と ADLS の URI がサポートされています。 例: { "egg": "dbfs:/my/egg" } または{ "egg": "abfss://<container-path>/egg" } 。whl の場合は、インストールする wheel または zip 形式の wheels の URI。 DBFS と ADLS の URI がサポートされています。 例: { "whl": "dbfs:/my/whl" } または{ "whl": "abfss://<container-path>/whl" } 。 ADLS を使用する場合は、クラスターにライブラリに対する読み取りアクセス権限があることを確認してください。 また、wheel ファイル名は正しい規則を使用する必要があります。 zip 形式の wheels をインストールする場合は、ファイル名のサフィックスを .wheelhouse.zip にする必要があります。pypi の場合、インストールする PyPI ライブラリを指定します。 repo フィールドの指定は省略可能であり、指定しない場合、既定の pip インデックスが使用されます。 次に例を示します。{ "package": "simplejson", "repo": "https://my-repo.com" } maven の場合は、インストールする Maven ライブラリを指定します。 次に例を示します。 { "coordinates": "org.jsoup:jsoup:1.7.2" } cran の場合、インストールする CRAN ライブラリを指定します。 |
MavenLibrary
フィールド名 | Type | 説明 |
---|---|---|
coordinates |
STRING |
Gradle 形式の Maven 座標。 (例: org.jsoup:jsoup:1.7.2 )。 これは必須フィールドです。 |
repo |
STRING |
Maven パッケージのインストール元になる Maven リポジトリ。 省略した場合、Maven Central Repository と Spark Packages の両方が検索されます。 |
exclusions |
STRING の配列です。 |
除外する依存関係の一覧。 (例: ["slf4j:slf4j", "*:hadoop-client"] )。Maven 依存関係の除外: https://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html。 |
NewCluster
フィールド名 | Type | 説明 |
---|---|---|
num_workers またはautoscale |
INT32 または AutoScale |
num_workers の場合は、このクラスターに必要なワーカー ノードの数。 1 つのクラスターには 1 台の Spark ドライバーと num_workers の Executor、全体で num_workers + 1 Spark ノードがあります。 注: クラスターのプロパティを読み取るときに、このフィールドには実際の現行ワーカー数ではなく、必要なワーカー数が反映されます。 たとえば、クラスターのサイズを 5 台から 10 台のワーカーへと変更すると、このフィールドは即座に更新されて、目標サイズである 10 台のワーカーが反映されます。一方、spark_info に一覧表示されているワーカーは、新しいノードがプロビジョニングされるにしたがって 5 台から10 台へと徐々に増加します。 自動スケーリングの場合、負荷に基づいてクラスターを自動的にスケール アップおよびダウンするために必要なパラメーター。 |
spark_version |
STRING |
クラスターの Spark バージョン。 使用可能な Spark バージョンのリストは、GET 2.0/clusters/spark-versions 呼び出しを使用して取得できます。 これは必須フィールドです。 |
spark_conf |
SparkConfPair | 省略可能なユーザー指定の Spark 構成キーと値のペアのセットを含んでいるオブジェクト。 追加の JVM オプションの文字列をドライバーと Executor に それぞれ spark.driver.extraJavaOptions と spark.executor.extraJavaOptions 。Spark conf の例: {"spark.speculation": true, "spark.streaming.ui.retainedBatches": 5} または{"spark.driver.extraJavaOptions": "-verbose:gc -XX:+PrintGCDetails"} |
node_type_id |
STRING |
このフィールドは、単一の値を通じて使用されるリソースをこのクラスターのそれぞれの Spark ノードにエンコードします。 たとえば、Spark ノードは、メモリまたはコンピューティング集約型のワークロード用にプロビジョニングと最適化を行うことができます。使用できるノードの種類のリストは、GET 2.0/clusters/list-node-types 呼び出しを使用して取得できます。 このフィールド、instance_pool_id フィールド、またはノード型 ID またはインスタンス プール ID を指定するクラスター ポリシーが必要です。 |
driver_node_type_id |
STRING |
Spark ドライバーのノードの種類。 このフィールドは省略可能です。設定が解除されている場合、ドライバー ノードの種類は、上に定義されている node_type_id と同じ値として設定されます。 |
custom_tags |
ClusterTag | クラスター リソースのタグのセットを含むオブジェクト。 Databricks では、default_tags の他にこれらのタグを使用してすべてのクラスター リソース (VM など) にタグを設定します。 注: - タグは、コンピューティング最適化やメモリ最適化などのレガシ ノードの種類ではサポートされていません - Databricks では、最大 45 個のカスタム タグを使用できます |
cluster_log_conf |
ClusterLogConf | Spark ログを長期的なストレージの保存先に配信する構成。 1 つのクラスターに対して指定できる保存先は 1 つのみです。 conf が指定されている場合、ログは 5 mins ごとに保存先に配信されます。 ドライバー ログの保存先は <destination>/<cluster-id>/driver ですが、Executor ログの保存先は <destination>/<cluster-id>/executor です。 |
init_scripts |
InitScriptInfo の配列 | init スクリプトを保存するための構成。 任意の数のスクリプトを指定できます。 スクリプトは、指定された順序で順番に実行されます。 cluster_log_conf を指定した場合、init スクリプトのログは次に送信されます。<destination>/<cluster-id>/init_scripts 。 |
spark_env_vars |
SparkEnvPair | 省略可能な、ユーザー指定の環境変数のキーと値のペアのセットを含んでいるオブジェクト。 フォーム (X、Y) のキーと値のペアのエクスポートは、そのままの状態 (つまり、export X='Y' ) で、ドライバーとワーカーの起動中に行われます。SPARK_DAEMON_JAVA_OPTS のセットを追加で指定するには、次の例に示すように、$SPARK_DAEMON_JAVA_OPTS に追加することをお勧めしています。 これにより、すべての既定の Databricks マネージド環境変数も確実に含められます。Spark 環境変数の例: {"SPARK_WORKER_MEMORY": "28000m", "SPARK_LOCAL_DIRS": "/local_disk0"} または{"SPARK_DAEMON_JAVA_OPTS": "$SPARK_DAEMON_JAVA_OPTS -Dspark.shuffle.service.enabled=true"} |
enable_elastic_disk |
BOOL |
ローカル ストレージの自動スケーリング: 有効にすると、このクラスターでは、Spark ワーカーでディスク領域が不足している場合、追加のディスク領域が動的に取得されます。 詳細については、ローカル ストレージの自動スケーリングの有効化に関する記事を参照してください。 |
driver_instance_pool_id |
STRING |
ドライバー ノードに使用するインスタンス プールの省略可能な ID。 instance_pool_id も指定する必要があります。 詳細については、インスタンス プール API に関するページを参照してください。 |
instance_pool_id |
STRING |
クラスター ノードに使用するインスタンス プールの省略可能な ID。 driver_instance_pool_id がある場合、instance_pool_id はワーカー ノードにのみ使用されます。 それ以外の場合は、ドライバー ノードとワーカー ノードの両方に使用されます。 詳細については、インスタンス プール API に関するページを参照してください。 |
NotebookOutput
フィールド名 | Type | 説明 |
---|---|---|
result |
STRING |
dbutils.notebook.exit() に渡される値。 Azure Databricks では、この API は値の最初の 1 MB を返すように制限されています。 より大きな結果の場合、ジョブは結果をクラウド ストレージ サービスに保存できます。 dbutils.notebook.exit() が呼び出されたことがない場合、このフィールドは存在しません。 |
truncated |
BOOLEAN |
結果が切り捨てられたかどうか。 |
NotebookTask
すべての出力セルは、8 MB のサイズになります。 セルの出力サイズがそれより大きい場合、実行の残りの部分は取り消され、実行は失敗としてマークされます。 その場合は、他のセルのコンテンツ出力の一部も欠落する可能性があります。
制限を超えているセルを見つけるのに支援が必要な場合は、汎用クラスターに対してノートブックを実行し、このノートブックの自動保存の手法を使用します。
フィールド名 | Type | 説明 |
---|---|---|
notebook_path |
STRING |
Azure Databricks ワークスペースで実行するノートブックの絶対パス。 このパスはスラッシュで始まる必要があります。 これは必須フィールドです。 |
revision_timestamp |
LONG |
ノートブックのリビジョンのタイムスタンプ。 |
base_parameters |
ParamPair のマップ | このジョブの各実行に使用される基本パラメーター。 実行が、パラメーターを指定した run-now への呼び出しによって開始される場合、2 つのパラメーター マップはマージされます。 base_parameters と run-now に同じキーが指定されている場合は、run-now の値が使用されます。ジョブ実行に関する情報を含むパラメーターを設定するには、「動的な値リファレンスとは」を使用します。 ノートブックが、ジョブの base_parameters または run-now オーバーライド パラメーターに指定されていないパラメーターを受け取る場合は、ノートブックの既定値が使用されます。dbutils.widgets.get を使用して、これらのパラメーターをノートブックで取得します。 |
ParamPair
ノートブック タスクを実行するジョブの名前ベースのパラメーター。
重要
このデータ構造のフィールドでは、ラテン文字 (ASCII 文字セット) のみを使用できます。 非 ASCII 文字を使用すると、エラーが返されます。 無効な非 ASCII 文字の例として、中国語、日本語の漢字、絵文字があります。
Type | 説明 |
---|---|
STRING |
パラメーター名。 dbutils.widgets.get に渡して値を取得します。 |
STRING |
パラメーター値。 |
PipelineTask
フィールド名 | Type | 説明 |
---|---|---|
pipeline_id |
STRING |
実行する Delta Live Tables パイプライン タスクのフル ネーム。 |
PythonPyPiLibrary
フィールド名 | Type | 説明 |
---|---|---|
package |
STRING |
インストールする PyPI パッケージの名前。 オプションの正確なバージョン指定もサポートされています。 例: simplejson および simplejson==3.8.0 。 これは必須フィールドです。 |
repo |
STRING |
パッケージが存在するリポジトリ。 指定しない場合、既定の pip インデックスが使用されます。 |
RCranLibrary
フィールド名 | Type | 説明 |
---|---|---|
package |
STRING |
インストールする CRAN パッケージの名前。 これは必須フィールドです。 |
repo |
STRING |
パッケージが存在するリポジトリ。 指定しない場合、既定の CRAN リポジトリが使用されます。 |
実行
出力を除いた、実行に関するすべての情報。 出力は、getRunOutput
メソッドを使用して別個に取得できます。
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT64 |
この実行を含むジョブの正規識別子。 |
run_id |
INT64 |
実行の正規識別子。 この ID は、すべてのジョブのすべての実行で一意です。 |
creator_user_name |
STRING |
作成者のユーザー名。 ユーザーがすでに削除されている場合、このフィールドは応答に含められません。 |
number_in_job |
INT64 |
ジョブのすべての実行の中での、この実行のシーケンス番号。 この値は 1 から始まります。 |
original_attempt_run_id |
INT64 |
この実行が、前回の実行試行の再試行である場合、このフィールドには元の試行の run_id が含まれます。それ以外の場合は、run_id と同じです。 |
state |
RunState | 実行の結果とライフサイクルの状態。 |
schedule |
CronSchedule | 定期的なスケジューラによってトリガーされた場合、この実行をトリガーした cron スケジュール。 |
task |
JobTask | 実行によって行われたタスク (ある場合)。 |
cluster_spec |
ClusterSpec | この実行が作成されたときのジョブのクラスター仕様のスナップショット。 |
cluster_instance |
ClusterInstance | この実行に使用されるクラスター。 実行が新しいクラスターを使用するように指定されている場合、このフィールドは、ジョブ サービスが実行のためにクラスターを要求すると設定されます。 |
overriding_parameters |
RunParameters | この実行に使用されるパラメーター。 |
start_time |
INT64 |
この実行が開始された時刻をエポック ミリ秒 (1970 年 1 月 1 日 UTC からのミリ秒) で示したもの。 これは、ジョブ タスクが実行を開始した時刻ではない場合があります。たとえば、ジョブが新しいクラスターで実行されるようにスケジュールされている場合、これは、クラスターの作成呼び出しが発行された時刻になります。 |
setup_duration |
INT64 |
クラスターを設定するのにかかった時間 (ミリ秒)。 新しいクラスターで実行される実行の場合、これはクラスターの作成時間です。既存のクラスターで実行される実行の場合は、この時間が非常に短くなります。 |
execution_duration |
INT64 |
JAR またはノートブックでコマンドを実行してから、それが完了する、失敗する、タイムアウトになる、キャンセルされる、または予期しないエラーが発生するまでにかかった時間 (ミリ秒)。 |
cleanup_duration |
INT64 |
クラスターを終了し、関連付けられているすべての成果物をクリーンアップするのにかかった時間 (ミリ秒)。 実行の合計期間は、setup_duration、execution_duration、および cleanup_duration の合計です。 |
end_time |
INT64 |
この実行が終了した時刻をエポック ミリ秒 (1970 年 1 月 1 日 UTC からのミリ秒) で示したもの。 ジョブがまだ実行されている場合、このフィールドは 0 に設定されます。 |
trigger |
TriggerType | この実行を開始したトリガーの種類。 |
run_name |
STRING |
実行の名前 (省略可能)。 既定値は Untitled です。 許容される最大長は、UTF-8 エンコードでは 4096 バイトです。 |
run_page_url |
STRING |
実行の詳細ページの URL。 |
run_type |
STRING |
実行の種類。 - JOB_RUN - 通常 ジョブ 実行。 すぐに実行を使用して作成された実行。- WORKFLOW_RUN - ワークフロー 実行。 dbutils.notebook.run を使用して作成された実行。- SUBMIT_RUN - 送信 実行。 すぐに実行を使用して作成された実行。 |
attempt_number |
INT32 |
トリガーされたジョブ実行に対するこの実行試行のシーケンス番号。 実行の最初の試行では、attempt_number は 0 になります。 最初の実行試行が失敗し、ジョブに再試行ポリシー (max_retries > 0) がある場合は、元の試行の ID の original_attempt_run_id と、増分する attempt_number を使用して後続実行が作成されます。 実行は成功するまで再試行され、最大 attempt_number はジョブの max_retries 値と同じになります。 |
RunJobTask
フィールド名 | Type | 説明 |
---|---|---|
job_id |
INT32 |
実行するジョブの一意識別子。 これは必須フィールドです。 |
RunLifeCycleState
実行のライフサイクルの状態。 許可される状態の遷移は次のとおりです。
QUEUED
->PENDING
PENDING
->RUNNING
->TERMINATING
->TERMINATED
PENDING
->SKIPPED
PENDING
->INTERNAL_ERROR
RUNNING
->INTERNAL_ERROR
TERMINATING
->INTERNAL_ERROR
状態 | 説明 |
---|---|
QUEUED |
実行はトリガーされましたが、以下のいずれかの制限に達したためキューに入れられています。 - ワークスペース内のアクティブな同時実行の最大数。 - ワークスペース内の Run Job タスクの同時実行の最大数。- 該当ジョブの同時実行の最大数。 ジョブまたは実行では、この状態に達する前にキューが有効になっている必要があります。 |
PENDING |
実行がトリガーされました。 構成されたジョブの同時実行の最大数に既に達している場合、実行はどのリソースも準備することなくすぐに SKIPPED 状態に移行します。 それ以外の場合は、クラスターの準備と実行が処理されます。 |
RUNNING |
この実行のタスクが実行されています。 |
TERMINATING |
この実行のタスクが完了し、クラスターと実行コンテキストがクリーンアップされています。 |
TERMINATED |
この実行のタスクが完了し、クラスターと実行コンテキストがクリーンアップされました。 この状態が最終です。 |
SKIPPED |
同じジョブの以前の実行が既にアクティブだったため、この実行は中止されました。 この状態が最終です。 |
INTERNAL_ERROR |
長期間にわたるネットワーク障害など、ジョブ サービスのエラーを示す例外的な状態。 新しいクラスターでの実行が INTERNAL_ERROR 状態で終了した場合、ジョブ サービスはできるだけ早くクラスターを終了します。 この状態が最終です。 |
RunParameters
この実行のパラメーター。 ジョブ タスクの種類に応じて、jar_params、python_params
、または notebook_params のいずれか 1 つだけを run-now
要求に指定する必要があります。
Spark JAR タスクまたは Python タスクを含むジョブは、位置ベースのパラメーターの一覧を受け取り、ノートブック タスクを含むジョブはキー値のマップを受け取ります。
フィールド名 | Type | 説明 |
---|---|---|
jar_params |
STRING の配列です。 |
Spark JAR タスクを含むジョブのパラメーター一覧。例: "jar_params": ["john doe", "35"] 。 これらのパラメーターは、Spark JAR タスクに指定されたメイン クラスの main 関数を呼び出すために使用されます。 run-now に指定されていない場合は、既定で空の一覧になります。 jar_params と notebook_params を組み合わせて指定することはできません。 このフィールドの JSON 表現 (つまり {"jar_params":["john doe","35"]} ) は、10,000 バイト以下にする必要があります。ジョブ実行に関する情報を含むパラメーターを設定するには、「動的な値リファレンスとは」を使用します。 |
notebook_params |
ParamPair のマップ | ノートブック タスクを含むジョブのキーから値へのマップ。例:"notebook_params": {"name": "john doe", "age": "35"} 。 このマップはノートブックに渡され、dbutils.widgets.get 関数を使用してアクセスできます。run-now に指定されていない場合、トリガーされた実行ではジョブの基本パラメーターが使用されます。notebook_params を jar_params と組み合わせて指定することはできません。 ジョブ実行に関する情報を含むパラメーターを設定するには、「動的な値リファレンスとは」を使用します。 このフィールドの JSON 表現 (つまり、 {"notebook_params":{"name":"john doe","age":"35"}} ) は 10,000 バイト以下にする必要があります。 |
python_params |
STRING の配列です。 |
Python タスクを含むジョブのパラメーターの一覧。例: "python_params": ["john doe", "35"] 。 これらのパラメーターは、コマンド ライン パラメーターとして Python ファイルに渡されます。 run-now に指定されている場合、ジョブ設定に指定されたパラメーターを上書きします。 このフィールドの JSON 表現 (つまり {"python_params":["john doe","35"]} ) は、10,000 バイト以下にする必要があります。ジョブ実行に関する情報を含むパラメーターを設定するには、「動的な値リファレンスとは」を使用します。 > [重要] >> これらのパラメーターには、ラテン文字 (ASCII 文字セット) のみを使用できます。 > 非 ASCII 文字を使用すると、エラーが返されます。 無効な非 ASCII 文字の例としては、> 中国語、日本語の漢字、絵文字があります。 |
spark_submit_params |
STRING の配列です。 |
spark submit タスクを含むジョブのパラメーターの一覧。例:"spark_submit_params": ["--class", "org.apache.spark.examples.SparkPi"] 。 これらのパラメーターは、コマンド ライン パラメーターとして spark-submit スクリプトに渡されます。 run-now に指定されている場合、ジョブ設定に指定されたパラメーターを上書きします。 このフィールドの JSON 表現 (つまり {"python_params":["john doe","35"]} ) は、10,000 バイト以下にする必要があります。ジョブ実行に関する情報を含むパラメーターを設定するには、「動的な値リファレンスとは」を使用します。 > [重要] >> これらのパラメーターには、ラテン文字 (ASCII 文字セット) のみを使用できます。 > 非 ASCII 文字を使用すると、エラーが返されます。 無効な非 ASCII 文字の例としては、> 中国語、日本語の漢字、絵文字があります。 |
RunResultState
実行の結果の状態。
life_cycle_state
=TERMINATED
の場合: 実行にタスクがあった場合は、結果が使用可能になることが保証されており、これはタスクの結果を示しています。life_cycle_state
=PENDING
、RUNNING
、またはSKIPPED
の場合、結果の状態は使用できません。life_cycle_state
=TERMINATING
または lifecyclestate =INTERNAL_ERROR
の場合: 実行にタスクがあり、それを開始できた場合、結果の状態は使用可能です。
一度使用可能になると、結果の状態は決して変わりません。
状態 | 説明 |
---|---|
SUCCESS |
タスクが正常に完了しました。 |
FAILED |
タスクはエラーで完了しました。 |
TIMEDOUT |
実行は、タイムアウトに達した後に停止されました。 |
CANCELED |
実行は、ユーザーの要求によって取り消されました。 |
RunState
フィールド名 | Type | 説明 |
---|---|---|
life_cycle_state |
RunLifeCycleState | 実行ライフサイクルにおける実行の現在の位置の説明。 このフィールドは、常に応答で使用可能です。 |
result_state |
RunResultState | 実行の結果の状態。 使用できない場合、このフィールドは応答に含められません。 result_state の使用可能性の詳細については、「RunResultState」を参照してください。 |
user_cancelled_or_timedout |
BOOLEAN |
実行の取り消しがユーザーによって手動で行われたのか、それともタイムアウトになったためにスケジューラによって行われたのか。 |
state_message |
STRING |
現在の状態の説明メッセージ。 このフィールドは構造化されておらず、その形式が変更される可能性があります。 |
SparkConfPair
Spark の構成キーと値のペア。
Type | 説明 |
---|---|
STRING |
構成プロパティの名前。 |
STRING |
構成プロパティの値。 |
SparkEnvPair
Spark の環境変数キーと値のペア。
重要
ジョブ クラスターで環境変数を指定する場合は、このデータ構造内のフィールドにはラテン文字 (ASCII 文字セット) のみが使用できます。 ASCII 以外の文字を使用すると、エラーが返されます。 無効な非 ASCII 文字の例として、中国語、日本語の漢字、絵文字があります。
Type | 説明 |
---|---|
STRING |
環境変数の名前。 |
STRING |
環境変数の値。 |
SparkJarTask
フィールド名 | Type | 説明 |
---|---|---|
jar_uri |
STRING |
2016 年 4 月以降非推奨となりました。 代わりに libraries フィールドを介して jar を指定してください。 例については、「Create」を参照してください。 |
main_class_name |
STRING |
実行される main メソッドを含むクラスのフル ネーム。 このクラスは、ライブラリとして提供される JAR に含まれている必要があります。 コードでは SparkContext.getOrCreate を使用して Spark コンテキストを取得する必要があります。そうしない場合、ジョブの実行は失敗します。 |
parameters |
STRING の配列です。 |
main メソッドに渡されるパラメーター。 ジョブ実行に関する情報を含むパラメーターを設定するには、「動的な値リファレンスとは」を使用します。 |
SparkPythonTask
フィールド名 | Type | 説明 |
---|---|---|
python_file |
STRING |
実行される Python ファイルの URI。 DBFS パスがサポートされています。 これは必須フィールドです。 |
parameters |
STRING の配列です。 |
Python ファイルに渡されるコマンド ライン パラメーター。 ジョブ実行に関する情報を含むパラメーターを設定するには、「動的な値リファレンスとは」を使用します。 |
SparkSubmitTask
重要
- Spark submit タスクは、新しいクラスターでのみ呼び出せます。
- new_cluster 仕様では、
libraries
とspark_conf
はサポートされていません。 代わりに、--jars
と--py-files
を使って Java と Python のライブラリを追加し、--conf
を使って Spark 構成を設定します。 master
、deploy-mode
、およびexecutor-cores
は Azure Databricks によって自動的に構成されます。パラメーターには指定 "できません"。- 既定で、Spark submit ジョブでは、(Azure Databricks 用の予約済みメモリを除く) 使用可能なすべてのメモリが使用されます。
--driver-memory
と--executor-memory
を小さい値に設定して、オフヒープ使用のための余地を残すことができます。 --jars
、--py-files
、--files
引数では DBFS パスがサポートされます。
たとえば、JAR が DBFS にアップロードされると仮定した場合、次のパラメーターを設定して SparkPi
を実行できます。
{
"parameters": [
"--class",
"org.apache.spark.examples.SparkPi",
"dbfs:/path/to/examples.jar",
"10"
]
}
フィールド名 | Type | 説明 |
---|---|---|
parameters |
STRING の配列です。 |
spark submit に渡されるコマンド ライン パラメーター。 ジョブ実行に関する情報を含むパラメーターを設定するには、「動的な値リファレンスとは」を使用します。 |
TriggerType
これらは、実行を起動できるトリガーの種類です。
Type | 説明 |
---|---|
PERIODIC |
定期的に実行をトリガーするスケジュール (cron スケジューラなど)。 |
ONE_TIME |
1 回の実行を起動する 1 回限りのトリガー。 これは、UI または API を使用してオンデマンドで 1 回の実行をトリガーした場合に発生します。 |
RETRY |
以前に失敗した実行の再試行としてトリガーされる実行を示します。 これは、エラーが発生した場合にジョブの再実行を要求したときに発生します。 |
ViewItem
エクスポートされたコンテンツは HTML 形式です。 たとえば、エクスポートするビューがダッシュボードの場合、各ダッシュボードに対して 1 つの HTML 文字列が返されます。
フィールド名 | Type | 説明 |
---|---|---|
content |
STRING |
ビューのコンテンツ。 |
name |
STRING |
ビュー アイテムの名前。 コード ビューの場合は、ノートブックの名前。 ダッシュボード ビューの場合は、ダッシュボードの名前。 |
type |
ViewType | ビュー アイテムの種類。 |
ViewType
Type | 説明 |
---|---|
NOTEBOOK |
ノートブック ビュー項目。 |
DASHBOARD |
ダッシュボード ビュー項目。 |
ViewsToExport
エクスポートするビュー: コード、すべてのダッシュボード、またはすべて。
Type | 説明 |
---|---|
CODE |
ノートブックのコード ビュー。 |
DASHBOARDS |
ノートブックのすべてのダッシュボード ビュー。 |
ALL |
ノートブックのすべてのビュー。 |
Webhook
フィールド名 | Type | 説明 |
---|---|---|
id |
STRING |
システム通知の同期先を参照する識別子。 このフィールドは必須です。 |
WebhookNotifications
フィールド名 | Type | 説明 |
---|---|---|
on_start |
Webhook の配列 | 実行が開始されたときに通知を受け取るシステム宛先のリスト (オプション)。 ジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 on_start プロパティには、最大 3 つの宛先を指定できます。 |
on_success |
Webhook の配列 | 実行が正常に完了したときに通知を受け取るシステム宛先のリスト (オプション)。 実行は、TERMINATED life_cycle_state および SUCCESSFUL result_state で終了している場合、正常に完了したと見なされます。 ジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 on_success プロパティには、最大 3 つの宛先を指定できます。 |
on_failure |
Webhook の配列 | 実行の正常に完了しなかった場合に通知を受け取るシステム宛先のリスト (オプション)。 実行は、次で終了している場合に、正常に完了しなかったと見なされます: INTERNAL_ERROR life_cycle_state または SKIPPED 、FAILED 、または TIMED_OUT result_state 。 これがジョブの作成、リセット、または更新時に指定されていない場合、一覧は空であり、通知は送信されません。 on_failure プロパティには、最大 3 つの宛先を指定できます。 |
on_duration_warning_threshold_exceeded |
Webhook の配列 | 実行の期間が health フィールドの RUN_DURATION_SECONDS メトリックに指定されたしきい値を超えた場合に通知を受け取るシステム宛先のリスト (オプション)。 on_duration_warning_threshold_exceeded プロパティには、最大 3 つの宛先を指定できます。 |
WorkspaceStorageInfo
ワークスペース ストレージ情報。
フィールド名 | Type | 説明 |
---|---|---|
destination |
STRING |
ファイルの送信先。 例: /Users/someone@domain.com/init_script.sh |