api 命令组

注意

此信息适用于 Databricks CLI 0.205 及更高版本,这些版本为公共预览版。 若要查找你的 Databricks CLI 的版本,请运行 databricks -v

使用 Databricks CLI 中的 api 命令组可以调用任何可用的 Databricks REST API。

你应当仅针对高级场景运行 api 命令,例如,Databricks CLI 尚未在相关命令中包装目标 Databricks REST API 的那些特定 Databricks REST API 的预览版。 有关已包装的命令组的列表,请参阅 Databricks CLI 命令组

重要

在使用 Databricks CLI 之前,请务必设置 Databricks CLI为 Databricks CLI 设置身份验证

运行 api 命令(仅针对高级场景)

可以通过将 api 命令追加到 databricks api 中来运行这些命令。 若要显示 api 命令的帮助,请运行 databricks api -h

若要调用 api 命令,请使用以下格式:

databricks api <http-method> <rest-api-path> [--json {<request-body> | @<filename>}]

在上面的调用中:

  • 请将 <http-method> 替换为你要调用的 Databricks REST API 的 HTTP 方法,例如 deletegetheadpathpostput。 例如,若要返回工作区的可用群集列表,请使用 get。 若要获取你要调用的 Databricks REST API 的正确 HTTP 方法,请参阅 Databricks REST API 文档。
  • 请将 <rest-api-path> 替换为你要调用的 Databricks REST API 的路径。 不要包含 https:// 或工作区实例名称。 例如,若要返回工作区的可用群集列表,请使用 /api/2.0/clusters/list。 若要获取你要调用的 Databricks REST API 的正确语法,请参阅 Databricks REST API 文档。
  • 如果你要调用的 Databricks REST API 需要请求正文,请包含 --json<request-body> 并将 <request-body> 替换为 JSON 格式的请求正文。 或者,可以将请求正文存储在单独的 JSON 文件中。 为此,请包含 --json@<filename> 并将 <filename> 替换为 JSON 文件的名称。 若要获取你要包含的请求正文的正确语法,请参阅 Databricks REST API 文档。

示例

获取工作区中可用群集的列表。

databricks api get /api/2.0/clusters/list

获取有关工作区中指定群集的信息。

databricks api post /api/2.0/clusters/get --json '{
   "cluster_id": "1234-567890-abcde123"
}'

更新工作区中指定群集的设置。

databricks api post /api/2.0/clusters/edit --json '{
  "cluster_id": "1234-567890-abcde123",
  "cluster_name": "my-changed-cluster",
  "num_workers": 1,
  "spark_version": "11.3.x-scala2.12",
  "node_type_id": "Standard_DS3_v2"
}'

更新工作区中指定群集的设置。 从当前工作目录中名为 edit-cluster.json 的文件获取请求正文。

databricks api post /api/2.0/clusters/edit --json @edit-cluster.json

edit-cluster.json

{
  "cluster_id": "1234-567890-abcde123",
  "cluster_name": "my-changed-cluster",
  "num_workers": 1,
  "spark_version": "11.3.x-scala2.12",
  "node_type_id": "Standard_DS3_v2"
}