CLI運行

運行Databricks作業時,通過將CLI子命令追加到運行和Databricks通過將CLI子命令追加到工作.有關Databricks作業CLI子命令,請參見喬布斯CLI.這些子命令一起調用職位API 2.1而且Jobs API 2.0

重要的

運行CLI的Databricks作業支持調用兩個版本的Databricks作業REST API:版本2.1和2.0。(作業運行功能是Jobs REST API的一部分。)版本2.1增加了對多任務作業編排的支持;看到創建、運行和管理Databricks作業而且job API更新.Databricks建議您調用版本2.1,除非您有依賴於版本2.0且無法遷移的遺留腳本。

除非另有說明,本文中描述的編程行為同樣適用於版本2.1和2.0。

請注意

如果在job運行CLI請求時收到500級錯誤,Databricks建議重試請求最多10分鍾(重試間隔至少30秒)。

調用作業REST API 2.1的要求

要設置Databricks作業運行CLI(以及jobs CLI)來調用jobs REST API 2.1,請執行以下操作:

  1. 更新命令行到0.16.0或以上版本。

  2. 做以下其中一件事:

    • 執行命令工作配置——版本= 2.1.這就添加了設置jobs-api-version2.1到文件~ / .databrickscfg在Unix、Linux或macOS上運行% USERPROFILE % \ .databrickscfg在Windows上。默認情況下,所有作業運行CLI(以及作業CLI)子命令都將調用jobs REST API 2.1。

    • 手動添加設置jobs-api-version2.1到文件~ / .databrickscfg在Unix、Linux或macOS上運行% USERPROFILE % \ .databrickscfg在Windows上。默認情況下,所有作業運行CLI(以及作業CLI)子命令都將調用jobs REST API 2.1。

    • 附加選項——版本= 2.1(例如,運行列表——版本= 2.1),指示作業運行CLI調用Jobs REST API 2.1,僅用於該調用。

    如果不采取上述任何操作,作業運行CLI(作業CLI)將默認調用jobs REST API 2.0。

調用作業REST API 2.0的要求

要設置Databricks作業運行CLI(以及作業CLI)來調用jobs REST API 2.0,請執行以下操作之一:

  • 使用低於0.16.0的Databricks CLI版本

  • 更新命令行到0.16.0或更高版本,然後執行以下操作之一:

    • 執行命令工作配置——版本= 2.0.這就添加了設置jobs-api-version2.0到文件~ / .databrickscfg在Unix、Linux或macOS上運行% USERPROFILE % \ .databrickscfg在Windows上。默認情況下,所有作業運行CLI(以及作業CLI)子命令都將調用jobs REST API 2.0。

    • 手動添加設置jobs-api-version2.0到文件~ / .databrickscfg在Unix、Linux或macOS上運行% USERPROFILE % \ .databrickscfg在Windows上。默認情況下,所有作業運行CLI(以及作業CLI)子命令都將調用jobs REST API 2.0。

    • 附加選項——版本= 2.1(例如,運行列表——版本= 2.0),指示作業運行CLI僅為該調用調用Jobs REST API 2.0。

如果不采取上述任何操作,作業運行CLI(作業CLI)將默認調用jobs REST API 2.0。

子命令和一般用法

Databricks運行——救命
用法:databricks runs [OPTIONS] COMMAND [ARGS]…與作業運行交互的實用程序。選項:-v,——version [version]——debug調試模式。顯示錯誤時的全堆棧跟蹤。——profile TEXT要使用的CLI連接配置文件。默認配置文件為default。-h,——help顯示此消息並退出。命令:cancel取消指定的運行。get以JSON形式獲取有關運行的元數據。get-output獲取運行的輸出。 list Lists job runs. submit Submits a one-time run.

取消跑步

要顯示使用文檔,請運行運行取消——幫助

Databricks運行cancel——run-id119
{}

獲取有關跑步的信息

要顯示使用文檔,請運行運行得到——幫助

一般使用

Databricks運行get——run-id119

Jobs CLI 2.1使用說明和響應示例

看到運行得到job API更新

Jobs CLI 2.0響應示例

“job_id”:239年,“run_id”:119年,“number_in_job”:1、“original_attempt_run_id”:119年,“狀態”:{“life_cycle_state”:“終止”,“result_state”:“成功”,“state_message”:“},"任務":{" notebook_task ": {:“notebook_path /用戶/ 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”,“可用性”:“SPOT_WITH_FALLBACK”},:“node_type_id m5d.large”,“enable_elastic_disk”:假的,“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,“觸發”:“ONE_TIME”,“creator_user_name”:“someone@example.com”,:“run_name my-notebook-run”,:“run_page_url https://dbc-a1b2345c-d6e7.cloud.www.eheci.com/?o=1234567890123456作業/ 239 /運行/ 1”,:“run_type JOB_RUN”,“attempt_number”:0

獲取運行的輸出

要顯示使用文檔,請運行運行輸出——幫助

請注意

當一個notebook_task的調用返回一個值dbutils.notebook.exit (), Databricks將返回值限製為前5mb的數據。如果要返回較大的結果,可以將作業結果存儲在雲存儲服務中。

一般使用

Databricks運行get-output——run-id119

Jobs CLI 2.1使用說明

看到運行得到輸出job API更新

Jobs CLI 2.0響應示例

“元數據”:{“job_id”:239年,“run_id”:119年,“number_in_job”:1、“original_attempt_run_id”:119年,“狀態”:{“life_cycle_state”:“終止”,“result_state”:“成功”,“state_message”:“},"任務":{" notebook_task ": {:“notebook_path /用戶/ 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”,“可用性”:“SPOT_WITH_FALLBACK”},:“node_type_id m5d.large”,“enable_elastic_disk”:假的,“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,“觸發”:“ONE_TIME”,“creator_user_name”:“someone@example.com”,:“run_name my-notebook-run”,:“run_page_url https://dbc-a1b2345c-d6e7.cloud.www.eheci.com/?o=1234567890123456作業/ 239 /運行/ 1”,:“run_type JOB_RUN”,“attempt_number”:0},“notebook_output”:{}

獲取有關所有運行的信息

要顯示使用文檔,請運行運行列表——幫助

一般使用

databricks運行list——output JSON

Jobs CLI 2.1使用說明和響應示例

看到運行清單job API更新

Jobs CLI 2.0響應示例

“運行”:(“job_id”:239年,“run_id”:119年,“number_in_job”:1、“original_attempt_run_id”:119年,“狀態”:{“life_cycle_state”:“終止”,“result_state”:“成功”,“state_message”:“},"任務":{" notebook_task ": {:“notebook_path /用戶/ 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”,“可用性”:“SPOT_WITH_FALLBACK”},:“node_type_id m5d.large”,“enable_elastic_disk”:假的,“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,“觸發”:“ONE_TIME”,“creator_user_name”:“someone@example.com”,:“run_name my-notebook-run”,:“run_page_url https://dbc-a1b2345c-d6e7.cloud.www.eheci.com/?o=1234567890123456作業/ 239 /運行/ 1”,:“run_type JOB_RUN”,“attempt_number”:0},...),“has_more”:假的

如果has_more返回真正的,關於額外運行的信息是可用的。使用——抵消選項,返回有關相對於最近運行的運行的信息。例如,要返回從最近第10次運行開始的信息,請指定——抵消10

使用——限製選項,返回關於固定數量的運行的信息。例如,要返回最多接下來5次運行的信息,請指定——限製5.您最多可以指定1000次運行。如果未指定,默認值為20。

提交一次運行

要顯示使用文檔,請運行運行提交——幫助

一般使用

Databricks運行submit——json-file submit-run.json

Jobs REST API 2.1使用說明和請求示例

看到運行提交job API更新

作業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”:“可用性”:“ON_DEMAND”},“num_workers”:10},“庫”:“罐子”:“dbfs: / my-jar.jar”},“專家”:“坐標”:“org.jsoup: jsoup: 1.7.2”),“spark_jar_task”:“main_class_name”:“com.databricks.ComputeModels”
“run_id”:123