CLI の実行 (レガシ)
このドキュメントは廃止されており、更新されない可能性があります。
この情報は、従来の Databricks CLI バージョン 0.18 以下に適用されます。 Databricks では、代わりに新しい Databricks CLI バージョン 0.205 以降を使用することをお勧めします。 「Databricks CLI とは」を参照してください。Databricks CLI のバージョンを確認するには、 databricks -v
を実行します。
Databricks CLI バージョン 0.18 以前から Databricks CLI バージョン 0.205 以降に移行するには、「 Databricks CLI の移行」を参照してください。
Databricks ジョブ実行CLIサブコマンドを実行するには、サブコマンドを databricks runs
に追加しDatabricksジョブCLIサブコマンドを databricks jobs
に追加することで実行します。Databricks ジョブ CLI サブコマンドについては、 ジョブ CLI (レガシ) を参照してください。 これらのサブコマンドは、 Jobs API と Jobs API 2.0 を一緒に呼び出します。
Databricks ジョブ実行 CLI は、Databricks ジョブ REST API の 2 つのバージョン (バージョン 2.1 と 2.0) への呼び出しをサポートします。(ジョブ実行機能は、ジョブREST APIの一部です。バージョン 2.1 では、複数のタスクを持つジョブのオーケストレーションのサポートが追加されています。Databricksジョブを使用したオーケストレーションおよびジョブ API 2.0 から 2.1 への更新を参照してください。Databricks では、バージョン 2.0 に依存し、移行できないレガシ スクリプトがない限り、バージョン 2.1 を呼び出すことをお勧めします。
特に指定がない限り、この記事で説明するプログラムの動作は、バージョン 2.1 と 2.0 に等しく適用されます。
ジョブの実行 CLI 要求を行うときに 500 レベルのエラーが発生した場合、Databricks では最大 10 分間 (再試行間隔は 30 秒以上) 要求を再試行することをお勧めします。
ジョブ REST API 2.1 を呼び出すための要件
DatabricksCLIジョブCLI (およびジョブ) をRESTAPI 2.1 呼び出すように ジョブ 実行を設定するには、次の操作を行います。
-
CLI をバージョン 0.16.0 以降に更新します。
-
以下のいずれかを実行します。
databricks jobs configure --version=2.1
コマンドを実行します。これにより、Unix、Linux、macOSではファイル~/.databrickscfg
、Windowsでは%USERPROFILE%\.databrickscfg
に設定jobs-api-version = 2.1
が追加されます。すべてのジョブ実行 CLI (およびジョブ CLI) サブコマンドは、デフォルトによって Jobs REST API 2.1 を呼び出します。- 設定
jobs-api-version = 2.1
をファイル~/.databrickscfg
Unix、Linux、macOS または Windows の Windows%USERPROFILE%\.databrickscfg
に手動で追加します。 すべてのジョブ実行 CLI (およびジョブ CLI) サブコマンドは、デフォルトによって Jobs REST API 2.1 を呼び出します。 - オプション
--version=2.1
(databricks runs list --version=2.1
など) を追加して、ジョブ実行 CLI に対して、その呼び出しに対してのみジョブ REST API 2.1 を呼び出すように指示します。
上記のアクションを一切実行しない場合、ジョブ 実行 CLI (およびジョブ CLI) は Jobs REST API 2.0 by Default を呼び出します。
ジョブ REST API 2.0 を呼び出すための要件
DatabricksCLIジョブCLI (およびジョブ) をRESTAPI 2.0 呼び出すように ジョブを設定するには、次のいずれかの操作を行います。
- 0.16.0 より前のバージョンの Databricks CLI を使用するか、
- CLI を バージョン 0.16.0 以降に更新し、次のいずれかを実行します。
databricks jobs configure --version=2.0
コマンドを実行します。これにより、Unix、Linux、macOSではファイル~/.databrickscfg
、Windowsでは%USERPROFILE%\.databrickscfg
に設定jobs-api-version = 2.0
が追加されます。すべてのジョブ実行 CLI (およびジョブ の CLI) サブコマンドは、デフォルトによって Jobs REST API 2.0 を呼び出します。- 設定
jobs-api-version = 2.0
をファイル~/.databrickscfg
Unix、Linux、macOS または Windows の Windows%USERPROFILE%\.databrickscfg
に手動で追加します。 すべてのジョブ実行 CLI (およびジョブ の CLI) サブコマンドは、デフォルトによって Jobs REST API 2.0 を呼び出します。 - オプション
--version=2.1
(databricks runs list --version=2.0
など) を追加して、ジョブ実行 CLI に対して、その呼び出しに対してのみジョブ REST API 2.0 を呼び出すように指示します。
上記のアクションを一切実行しない場合、ジョブ 実行 CLI (およびジョブ CLI) は Jobs REST API 2.0 by Default を呼び出します。
サブコマンドと一般的な使用法
databricks runs --help
Usage: databricks runs [OPTIONS] COMMAND [ARGS]...
Utility to interact with jobs runs.
Options:
-v, --version [VERSION]
--debug Debug mode. Shows full stack trace on error.
--profile TEXT CLI connection profile to use. The default profile is
"DEFAULT".
-h, --help Show this message and exit.
Commands:
cancel Cancels the specified run.
get Gets the metadata about a run in JSON form.
get-output Gets the output of a run.
list Lists job runs.
submit Submits a one-time run.
実行のキャンセル
使用方法のドキュメントを表示するには、 databricks runs cancel --help
を実行します。
databricks runs cancel --run-id 119
{}
実行に関する情報を取得する
使用方法のドキュメントを表示するには、 databricks runs get --help
を実行します。
一般的な使用法
databricks runs get --run-id 119
ジョブ CLI 2.1 の使用上の注意と応答の例
ジョブAPI2.0から2.1へのアップデート の「get を実行 」を参照してください。
ジョブ CLI 2.0 応答の例
{
"job_id": 239,
"run_id": 119,
"number_in_job": 1,
"original_attempt_run_id": 119,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"aws_attributes": {
"zone_id": "us-west-2c",
"availability": "SPOT_WITH_FALLBACK"
},
"node_type_id": "m5d.large",
"enable_elastic_disk": false,
"num_workers": 1
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1618510327335,
"setup_duration": 191000,
"execution_duration": 41000,
"cleanup_duration": 2000,
"end_time": 1618510561615,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://dbc-a1b2345c-d6e7.cloud.databricks.com/?o=1234567890123456#job/239/run/1",
"run_type": "JOB_RUN",
"attempt_number": 0
}
実行の出力を取得する
使用方法のドキュメントを表示するには、 databricks runs get-output --help
を実行します。
notebook_task
が dbutils.notebook.exit()
への呼び出しから値を返す場合、Databricks は戻り値をデータの最初の 5 MB に制限します。より大きな結果を返すために、ジョブの結果をクラウドストレージサービスに保存できます。
一般的な使用法
databricks runs get-output --run-id 119
ジョブ CLI 2.1 の使用上の注意
「ジョブ API 2.0 から 2.1 への更新 」の「get 出力の実行 」を参照してください。
ジョブ CLI 2.0 応答の例
{
"metadata": {
"job_id": 239,
"run_id": 119,
"number_in_job": 1,
"original_attempt_run_id": 119,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"aws_attributes": {
"zone_id": "us-west-2c",
"availability": "SPOT_WITH_FALLBACK"
},
"node_type_id": "m5d.large",
"enable_elastic_disk": false,
"num_workers": 1
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1618510327335,
"setup_duration": 191000,
"execution_duration": 41000,
"cleanup_duration": 2000,
"end_time": 1618510561615,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://dbc-a1b2345c-d6e7.cloud.databricks.com/?o=1234567890123456#job/239/run/1",
"run_type": "JOB_RUN",
"attempt_number": 0
},
"notebook_output": {}
}
すべての実行に関する情報を取得する
使用方法のドキュメントを表示するには、 databricks runs list --help
を実行します。
一般的な使用法
databricks runs list --output JSON
ジョブ CLI 2.1 の使用上の注意と応答の例
ジョブAPI2.0から2.1へのアップデート の実行 一覧 を参照してください。
ジョブ CLI 2.0 応答の例
{
"runs": [
{
"job_id": 239,
"run_id": 119,
"number_in_job": 1,
"original_attempt_run_id": 119,
"state": {
"life_cycle_state": "TERMINATED",
"result_state": "SUCCESS",
"state_message": ""
},
"task": {
"notebook_task": {
"notebook_path": "/Users/someone@example.com/notebooks/my-notebook.ipynb"
}
},
"cluster_spec": {
"new_cluster": {
"spark_version": "8.1.x-scala2.12",
"aws_attributes": {
"zone_id": "us-west-2c",
"availability": "SPOT_WITH_FALLBACK"
},
"node_type_id": "m5d.large",
"enable_elastic_disk": false,
"num_workers": 1
}
},
"cluster_instance": {
"cluster_id": "1234-567890-abcd123",
"spark_context_id": "1234567890123456789"
},
"start_time": 1618510327335,
"setup_duration": 191000,
"execution_duration": 41000,
"cleanup_duration": 2000,
"end_time": 1618510561615,
"trigger": "ONE_TIME",
"creator_user_name": "someone@example.com",
"run_name": "my-notebook-run",
"run_page_url": "https://dbc-a1b2345c-d6e7.cloud.databricks.com/?o=1234567890123456#job/239/run/1",
"run_type": "JOB_RUN",
"attempt_number": 0
},
...
],
"has_more": false
}
has_more
が true
を返す場合は、追加の実行に関する情報を使用できます。--offset
オプションを使用して、最新の実行に関連する実行に関する情報を返します。たとえば、最新の 10 回目の実行から情報を返すには、 --offset 10
を指定します。
--limit
オプションを使用して、固定の実行数に関する情報を返します。たとえば、次の 5 回までの実行の情報を返すには、 --limit 5
を指定します。 最大 1000 回の実行を指定できます。 指定しない場合、デフォルトは 20 です。
1 回限りの実行を送信する
使用方法のドキュメントを表示するには、 databricks runs submit --help
を実行します。
一般的な使用法
databricks runs submit --json-file submit-run.json
ジョブ REST API 2.1 の使用上の注意と要求の例
「ジョブ API 2.0 から 2.1 への更新 」の 「実行依頼 」を参照してください。
ジョブ REST API 2.0 の要求と応答の例
submit-run.json
:
{
"run_name": "my-spark-run",
"new_cluster": {
"spark_version": "7.3.x-scala2.12",
"node_type_id": "r3.xlarge",
"aws_attributes": {
"availability": "ON_DEMAND"
},
"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"
}
}
{
"run_id": 123
}