Databricks CLIDatabricks CLI

Databricks コマンドラインインターフェイス (CLI) は、Azure Databricks プラットフォームに対して使いやすいインターフェイスを提供します。The Databricks command-line interface (CLI) provides an easy-to-use interface to the Azure Databricks platform. オープンソースプロジェクトは、 GitHubでホストされています。The open source project is hosted on GitHub. CLI は Databricks REST API 2.0上に構築されており、ワークスペース APIクラスター APIDBFS apigroups Apiジョブ APIライブラリ api、およびシークレットに基づいてコマンドグループに整理されています。 API: workspaceclusters、0、1、2、3、4、および 5。The CLI is built on top of the Databricks REST API 2.0 and is organized into command groups based on the Workspace API, Clusters API, DBFS API, Groups API, Jobs API, Libraries API, and Secrets API: workspace, clusters, fs, groups, jobs, runs, libraries, and secrets.

重要

この CLI はアクティブに開発されており、実験的なクライアントとしてリリースされています。This CLI is under active development and is released as an Experimental client. これは、インターフェイスが変更される可能性があることを意味します。This means that interfaces are still subject to change.

CLI を設定するSet up the CLI

このセクションでは、CLI の要件と制限事項を示し、CLI を実行する環境をインストールして構成する方法について説明します。This section lists CLI requirements and limitations, and describes how to install and configure your environment to run the CLI.

要件と制限Requirements and limitations

  • Python 2 -2.7.9 以上Python 2 - 2.7.9 and above
  • Python 3 -3.6 以降Python 3 - 3.6 and above

重要

MacOS では、既定のpython 2インストールで TLSv1_2 プロトコルが実装されていないため、この python インストールで CLI を実行すると、次のエラーが発生します。On MacOS, the default Python 2 installation does not implement the TLSv1_2 protocol and running the CLI with this Python installation results in the error:

AttributeError: 'module' object has no attribute 'PROTOCOL_TLSv1_2'``

Homebrewを使用して、ssl.PROTOCOL_TLSv1_2を持つ Python のバージョンをインストールできます。You can use Homebrew to install a version of Python that has ssl.PROTOCOL_TLSv1_2:

  1. Python 2 をインストールするには brew install python2 を実行し、Python 3 をインストールするには brew install python をインストールします。Run brew install python2 to install Python 2 or brew install python to install Python 3.
  2. 新しくインストールされた Python を優先するようにパスを更新します。Update your path to prefer the newly installed Python.

CLI をインストールするInstall the CLI

Python のインストールに適したバージョンの pip を使用して pip install databricks-cli を実行します。Run pip install databricks-cli using the appropriate version of pip for your Python installation. Python 3 を使用している場合は、pip3 を実行します。If you are using Python 3, run pip3.

認証の設定 Set up authentication

CLI コマンドを実行する前に、認証を設定する必要があります。Before you can run CLI commands, you must set up authentication. CLI に対して認証を行うには、個人用アクセストークンを使用します。To authenticate to the CLI you use a personal access token. アクセストークンを使用するように CLI を構成するには、databricks configure --token を実行します。To configure the CLI to use the access token, run databricks configure --token. コマンドを実行すると、プロンプトが表示されます。The command issues the prompts:

Databricks Host (should begin with https://):
Token:

プロンプトが完了すると、アクセス資格情報がファイル ~/.databrickscfg に格納されます。After you complete the prompts, your access credentials are stored in the file ~/.databrickscfg. ファイルには次のようなエントリが含まれている必要があります。The file should contain entries like:

host = https://<databricks-instance>
token =  <personal-access-token>

CLI 0.8.1 以降では、環境変数 DATABRICKS_CONFIG_FILEを設定することによって、このファイルのパスを変更できます。For CLI 0.8.1 and above, you can change the path of this file by setting the environment variable DATABRICKS_CONFIG_FILE.

重要

CLI は REST API 上に構築されているため、.databrickscfg の構成よりも優先されます。Because the CLI is built on top of the REST API, your authentication configuration in your .netrc file takes precedence over your configuration in .databrickscfg.

CLI 0.8.0 以降以降では、次の環境変数がサポートされています。CLI 0.8.0 and above supports the following environment variables:

  • DATABRICKS_HOST
  • DATABRICKS_TOKEN

環境変数の設定は、構成ファイルの設定よりも優先されます。An environment variable setting takes precedence over the setting in the configuration file.

接続プロファイル Connection profiles

Databricks CLI 構成では、複数の接続プロファイルがサポートされています。The Databricks CLI configuration supports multiple connection profiles. Databricks CLI の同じインストールを使用して、複数の Azure Databricks ワークスペースで API 呼び出しを行うことができます。The same installation of Databricks CLI can be used to make API calls on multiple Azure Databricks workspaces.

接続プロファイルを追加するには:To add a connection profile:

databricks configure [--profile <profile>]

接続プロファイルを使用するには:To use the connection profile:

databricks workspace ls --profile <profile>

エイリアスコマンドグループ Alias command groups

場合によっては、各 CLI 呼び出しの前に、databricks workspace ls のようにコマンドグループの名前を付けると不便になることがあります。Sometimes it can be inconvenient to prefix each CLI invocation with the name of a command group, for example databricks workspace ls. CLI を簡単に使用できるようにするために、コマンドグループを短いコマンドにエイリアスすることができます。To make the CLI easier to use, you can alias command groups to shorter commands. たとえば、もう一度 Bourne シェルで databricks workspace lsdw ls に短縮するには、適切な bash プロファイルに alias dw="databricks workspace" を追加します。For example to shorten databricks workspace ls to dw ls in the Bourne again shell, you can add alias dw="databricks workspace" to the appropriate bash profile. 通常、このファイルは ~/.bash_profileにあります。Typically, this file is located at ~/.bash_profile.

ヒント

Azure Databricks は既に dbfsdatabricks fs エイリアス化されています。 databricks fs lsdbfs ls は同等です。Azure Databricks has already aliased databricks fs to dbfs; databricks fs ls and dbfs ls are equivalent.

CLI の使用Use the CLI

このセクションでは、CLI のヘルプを取得する方法、CLI の出力を解析する方法、および各コマンドグループのコマンドを呼び出す方法について説明します。This section shows you how to get CLI help, parse CLI output, and invoke commands in each command group.

CLI コマンドグループヘルプを表示するDisplay CLI command group help

databricks <group> -hを実行して、任意のコマンドグループのサブコマンドを一覧表示します。You list the subcommands for any command group by running databricks <group> -h. たとえば、databricks fs -h を実行して DBFS CLI サブコマンドを一覧表示します。For example, you list the DBFS CLI subcommands by running databricks fs -h.

jq を使用して CLI 出力を解析する Use jq to parse CLI output

一部の Databricks CLI コマンドでは、API エンドポイントからの JSON 応答が出力されます。Some Databricks CLI commands output the JSON response from the API endpoint. 場合によっては、JSON の一部を解析して他のコマンドにパイプすると便利です。Sometimes it can be useful to parse out parts of the JSON to pipe into other commands. たとえば、ジョブ定義をコピーするには、/api/2.0/jobs/getsettings フィールドを取得し、それを databricks jobs create コマンドの引数として使用する必要があります。For example, to copy a job definition, you must take the settings field of /api/2.0/jobs/get and use that as an argument to the databricks jobs create command.

このような場合は、jq ユーティリティを使用することをお勧めします。In these cases, we recommend you to use the utility jq. jq は、brew install jqと共に Homebrew を使用して MacOS にインストールできます。You can install jq on MacOS using Homebrew with brew install jq.

jqの詳細については、 jq のマニュアルを参照してください。For more information on jq, see the jq Manual.

JSON 文字列パラメーターJSON string parameters

すべての JSON 文字列パラメーターは、単一引用符で囲む必要があります。All JSON string parameters must be enclosed in single quotes. 例えば次が挙げられます。For example:

databricks jobs run-now --job-id 9 --jar-params '["20180505", "alantest"]'

ワークスペース CLIWorkspace CLI

サブコマンドを実行するには、サブコマンドを databricks workspace に追加します。You run subcommands by appending them to databricks workspace.

databricks workspace -h
Usage: databricks workspace [OPTIONS] COMMAND [ARGS]...

  Utility to interact with the Databricks workspace. Workspace paths must be
  absolute and be prefixed with `/`.

Common Options:
  -v, --version  [VERSION]
  -h, --help     Show this message and exit.

Commands:
  delete      Deletes objects from the Databricks workspace. rm and delete are synonyms.
    Options:
        -r, --recursive
  export      Exports a file from the Databricks workspace.
    Options:
      -f, --format FORMAT      SOURCE, HTML, JUPYTER, or DBC. Set to SOURCE by default.
      -o, --overwrite          Overwrites file with the same name as a Workspace file.
  export_dir  Recursively exports a directory from the Databricks workspace.
    Options:
      -o, --overwrite          Overwrites local files with the same names as Workspace files.
  import      Imports a file from local to the Databricks workspace.
    Options:
      -l, --language LANGUAGE  SCALA, PYTHON, SQL, R  [required]
      -f, --format FORMAT      SOURCE, HTML, JUPYTER, or DBC. Set to SOURCE by default.
      -o, --overwrite          Overwrites Workspace files with the same names as local files.
  import_dir  Recursively imports a directory to the Databricks workspace.

    Only directories and files with the extensions .scala, .py, .sql, .r, .R,
    .ipynb are imported. When imported, these extensions are stripped off
    the name of the notebook.

    Options:
      -o, --overwrite          Overwrites Workspace files with the same names as local files.
      -e, --exclude-hidden-files
  list        Lists objects in the Databricks workspace. ls and list are synonyms.
    Options:
      --absolute               Displays absolute paths.
      -l                       Displays full information including ObjectType, Path, Language
  ls          Lists objects in the Databricks workspace. ls and list are synonyms.
    Options:
      --absolute               Displays absolute paths.
      -l                       Displays full information including ObjectType, Path, Language
  mkdirs      Makes directories in the Databricks workspace.
  rm          Deletes objects from the Databricks workspace. rm and delete are synonyms.
    Options:
        -r, --recursive

ワークスペースファイルの一覧表示List Workspace files

databricks workspace ls /Users/example@databricks.com
Usage Logs ETL
Common Utilities
guava-21.0

ノートブックのローカルディレクトリをインポートするImport a local directory of notebooks

databricks workspace import_dir コマンドは、ローカルのファイルシステムからワークスペースにディレクトリを再帰的にインポートします。The databricks workspace import_dir command recursively imports a directory from the local filesystem to the Workspace. .scala.py.sql.r.R の拡張子を持つディレクトリとファイルのみがインポートされます。Only directories and files with the extensions of .scala, .py, .sql, .r, .R are imported. インポートすると、これらの拡張機能はノートブック名から削除されます。When imported, these extensions are stripped from the notebook name.

ターゲットパスの既存のノートブックを上書きするには、フラグ -o を追加します。To overwrite existing notebooks at the target path, add the flag -o.

tree
.
├── a.py
├── b.scala
├── c.sql
├── d.R
└── e
databricks workspace import_dir . /Users/example@databricks.com/example
./a.py -> /Users/example@databricks.com/example/a
./b.scala -> /Users/example@databricks.com/example/b
./c.sql -> /Users/example@databricks.com/example/c
./d.R -> /Users/example@databricks.com/example/d
databricks workspace ls /Users/example@databricks.com/example -l
NOTEBOOK   a  PYTHON
NOTEBOOK   b  SCALA
NOTEBOOK   c  SQL
NOTEBOOK   d  R
DIRECTORY  e

ワークスペースフォルダーをローカルファイルシステムにエクスポートするExport a Workspace folder to the local filesystem

ワークスペースからローカルのファイルシステムにノートブックのフォルダーをエクスポートできます。You can export a folder of notebooks from the Workspace to the local filesystem. これを行うには、次のように実行します。To do this, run:

databricks workspace export_dir /Users/example@databricks.com/example .

クラスター CLIClusters CLI

サブコマンドを実行するには、サブコマンドを databricks clusters に追加します。You run subcommands by appending them to databricks clusters.

databricks clusters -h
Usage: databricks clusters [OPTIONS] COMMAND [ARGS]...

  Utility to interact with Databricks clusters.

Options:
  -v, --version  [VERSION]
  -h, --help     Show this message and exit.

Commands:
  create           Creates a Databricks cluster.
    Options:
      --json-file PATH  File containing JSON request to POST to /api/2.0/clusters/create.
      --json JSON       JSON string to POST to /api/2.0/clusters/create.
  delete           Removes a Databricks cluster.
    Options:
      --cluster-id CLUSTER_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.
  edit             Edits a Databricks cluster.
    Options:
      --json-file PATH  File containing JSON request to POST to /api/2.0/clusters/edit.
      --json JSON       JSON string to POST to /api/2.0/clusters/edit.
  get              Retrieves metadata about a cluster.
    Options:
      --cluster-id CLUSTER_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.
  list             Lists active and recently terminated clusters.
    Options:
      --output FORMAT          JSON or TABLE. Set to TABLE by default.
  list-node-types  Lists node types for a cluster.
  list-zones       Lists zones where clusters can be created.
  permanent-delete Permanently deletes a cluster.
    Options:
      --cluster-id CLUSTER_ID  Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.
  resize           Resizes a Databricks cluster given its ID.
    Options:
      --cluster-id CLUSTER_ID  Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.
      --num-workers INTEGER    Number of workers. [required]
  restart          Restarts a Databricks cluster.
    Options:
      --cluster-id CLUSTER_ID  Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.
  spark-versions   Lists possible Databricks Runtime versions.
  start            Starts a terminated Databricks cluster.
    Options:
      --cluster-id CLUSTER_ID  Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.

ランタイムバージョンの一覧表示List runtime versions

databricks clusters spark-versions

ノードの種類の一覧表示List node types

databricks clusters list-node-types

インスタンスプール CLIInstance Pools CLI

注意

インスタンスプール CLI には、Databricks CLI 0.9.0 以上が必要です。The instance pools CLI requires Databricks CLI 0.9.0 or above.

サブコマンドを実行するには、サブコマンドを databricks instance-pools に追加します。You run subcommands by appending them to databricks instance-pools.

databricks instance-pools -h
Usage: databricks instance-pools [OPTIONS] COMMAND [ARGS]...

  Utility to interact with Databricks instance pools.

Options:
  -v, --version  [VERSION]
  -h, --help     Show this message and exit.

Commands:
  create           Creates a Databricks instance pool.
    Options:
      --json-file PATH         File containing JSON request to POST to /api/2.0/cluster-pools/create.
      --json JSON              JSON string to POST to /api/2.0/cluster-pools/create.
  delete           Deletes a Databricks instance pool.
    Options:
  get              Retrieves metadata about an instance pool.
    Options:
      --instance-pool-id INSTANCE_POOL_ID Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/instance-pools/view/$INSTANCE_POOL_ID.
  list             Lists active instance pools with the stats of the pools.
    Options:
      --output FORMAT          JSON or TABLE. Set to TABLE by default.
  edit            Edits a Databricks instance pool
    Options:
      --json-file PATH         File containing JSON request to POST to /api/2.0/cluster-pools/create.
      --json JSON              JSON string to POST to /api/2.0/cluster-pools/create.

DBFS CLIDBFS CLI

これらを databricks fs (またはエイリアス dbfs) に追加するコマンドを実行して、すべての DBFS パスの前に dbfs:/ を付けます。You run commands appending them to databricks fs (or the alias dbfs), prefixing all DBFS paths with dbfs:/.

databricks fs -h
Usage: databricks fs [OPTIONS] COMMAND [ARGS]...

  Utility to interact with DBFS. DBFS paths are all prefixed
  with dbfs:/. Local paths can be absolute or local.

Options:
  -v, --version
  -h, --help     Show this message and exit.

Commands:
  configure
  cp         Copies files to and from DBFS.
    Options:
      -r, --recursive
      --overwrite     Overwrites files that exist already.
  ls         Lists files in DBFS.
    Options:
      --absolute      Displays absolute paths.
      -l              Displays full information including size and file type.
  mkdirs     Makes directories in DBFS.
  mv         Moves a file between two DBFS paths.
  rm         Removes files from dbfs.
    Options:
      -r, --recursive

DBFS にファイルをコピーするCopy a file to DBFS

dbfs cp test.txt dbfs:/test.txt
# Or recursively
dbfs cp -r test-dir dbfs:/test-dir

DBFS からファイルをコピーするCopy a file from DBFS

dbfs cp dbfs:/test.txt ./test.txt
# Or recursively
dbfs cp -r dbfs:/test-dir ./test-dir

グループ CLIGroups CLI

注意

  • Groups CLI には、Databricks CLI 0.8.0 以降以上が必要です。The Groups CLI requires Databricks CLI 0.8.0 or above.
  • この API を呼び出すには、Databricks管理者である必要があります。You must be a Databricks administrator to invoke this API.

グループサブコマンドを実行するには、それらを databricks groups に追加します。You run groups subcommands by appending them to databricks groups.

databricks groups --help
Usage: databricks groups [OPTIONS] COMMAND [ARGS]...

  Provide utility to interact with Databricks groups.

Options:
  -v, --version   0.8.0
  --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:
  add-member     Add an existing principal to another existing group.
    Options:
      --parent-name TEXT  Name of the parent group to which the new member will be
                          added. This field is required.  [required]
      --user-name TEXT    The user name which will be added to the parent group.
      --group-name TEXT   If group name which will be added to the parent group.
  create         Create a new group with the given name.
    Options:
      --group-name TEXT  [required]
  delete         Remove a group from this organization.
    Options:
      --group-name TEXT  [required]
  list           Return all of the groups in a workspace.
  list-members   Return all of the members of a particular group.
    Options:
      --group-name TEXT  [required]
  list-parents   Retrieve all groups in which a given user or group is a member.
    Options:
      --user-name TEXT
      --group-name TEXT
  remove-member  Removes a user or group from a group.
    Options:
      --parent-name TEXT  Name of the parent group to which the new member will be
                          removed. This field is required.  [required]
      --user-name TEXT    The user name which will be removed from the parent
                          group.
      --group-name TEXT   If group name which will be removed from the parent
                          group.

グループの一覧表示List groups

databricks groups list
{
  "group_names": [
    "admins"
  ]
}

admins のメンバーを一覧表示するList the members of admins

databricks groups list-members --group-name admins
{
  "members": [
    {
      "user_name": "adminA@example.com"
    },
    {
      "user_name": "adminB@example.com"
    }
  ]
}

グループ finance の追加Add group finance

databricks groups create --group-name finance
{
  "group_name": "finance"
}
databricks groups list
{
  "group_names": [
    "admins",
    "finance"
  ]
}

ジョブ CLIJobs CLI

ジョブサブコマンドを実行するには、それらを databricks runs に追加することによって databricks jobs とジョブ実行コマンドに追加します。You run job subcommands by appending them to databricks jobs and job run commands by appending them to databricks runs.

databricks jobs -h
Usage: databricks jobs [OPTIONS] COMMAND [ARGS]...

  Utility to interact with jobs.

  Job runs are handled by ``databricks runs``.

Options:
  -v, --version  [VERSION]
  -h, --help     Show this message and exit.

Commands:
  create   Creates a job.
    Options:
      --json-file PATH            File containing JSON request to POST to /api/2.0/jobs/create.
      --json JSON                 JSON string to POST to /api/2.0/jobs/create.
  delete   Deletes a job.
    Options:
      --job-id JOB_ID             Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID.
  get      Describes the metadata for a job.
  Options:
    --job-id JOB_ID               Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID.
  list     Lists the jobs in the Databricks Job Service.
  reset    Resets (edits) the definition of a job.
    Options:
      --job-id JOB_ID             Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#job/$JOB_ID.
      --json-file PATH            File containing JSON request to POST to /api/2.0/jobs/create.
      --json JSON                 JSON string to POST to /api/2.0/jobs/create.
  run-now  Runs a job with optional per-run parameters.
    Options:
      --job-id JOB_ID             Can be found in the URL at https://<databricks-instance>/#job/$JOB_ID.
      --jar-params JSON           JSON string specifying an array of parameters. i.e. '["param1", "param2"]'
      --notebook-params JSON      JSON string specifying a map of key-value pairs. i.e. '{"name": "john doe", "age": 35}'
      --python-params JSON        JSON string specifying an array of parameters. i.e. '["param1", "param2"]'
      --spark-submit-params JSON  JSON string specifying an array of parameters. i.e. '["--class", "org.apache.spark.examples.SparkPi"]'
databricks runs -h
Usage: databricks runs [OPTIONS] COMMAND [ARGS]...

  Utility to interact with job runs.

Options:
  -v, --version  [VERSION]
  -h, --help     Show this message and exit.

Commands:
  cancel  Cancels a run.
    Options:
        --run-id RUN_ID  [required]
  get     Gets the metadata about a run in JSON form.
    Options:
      --run-id RUN_ID  [required]
  list    Lists job runs.
  submit  Submits a one-time run.
    Options:
      --json-file PATH  File containing JSON request to POST to /api/2.0/jobs/runs/submit.
      --json JSON       JSON string to POST to /api/2.0/jobs/runs/submit.

ジョブの一覧表示と検索List and find jobs

databricks jobs list コマンドには、JSONTABLEという2つの出力形式があります。The databricks jobs list command has two output formats, JSON and TABLE. 既定では、TABLE 形式が出力され、2つの列テーブル (ジョブ ID、ジョブ名) が返されます。The TABLE format is outputted by default and returns a two column table (job ID, job name).

名前を指定してジョブを検索するには、次のように実行します。To find a job by name, run:

databricks jobs list | grep "JOB_NAME"

ジョブをコピーするCopy a job

注意

この例では、プログラムjqが必要です。This example requires the program jq.

SETTINGS_JSON=$(databricks jobs get --job-id 284907 | jq .settings)
# JQ Explanation:
#   - peek into top level `settings` field.
databricks jobs create --json "$SETTINGS_JSON"

"無題" ジョブの削除Delete “Untitled” jobs

databricks jobs list --output json | jq '.jobs[] | select(.settings.name == "Untitled") | .job_id' | xargs -n 1 databricks jobs delete --job-id
# Explanation:
#   - List jobs in JSON.
#   - Peek into top level `jobs` field.
#   - Select only jobs with name equal to "Untitled"
#   - Print those job IDs out.
#   - Invoke `databricks jobs delete --job-id` once per row with the $job_id appended as an argument to the end of the command.

ライブラリ CLILibraries CLI

ライブラリのサブコマンドを実行するには、それらを databricks libraries に追加します。You run library subcommands by appending them to databricks libraries.

databricks libraries -h
Usage: databricks libraries [OPTIONS] COMMAND [ARGS]...

  Utility to interact with libraries.

Options:
  -v, --version  [VERSION]
  -h, --help     Show this message and exit.

Commands:
  all-cluster-statuses  Get the status of all libraries.
  cluster-status        Get the status of all libraries for a cluster.
    Options:
      --cluster-id CLUSTER_ID   Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.
  install               Install a library on a cluster.
    Options:
      --cluster-id CLUSTER_ID   Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.
      --jar TEXT                JAR on DBFS or WASB.
      --egg TEXT                Egg on DBFS or WASB.
      --whl TEXT                Wheel or zipped wheelhouse on DBFS or WASB. Supported in CLI 0.8.2 and above.
                                Recommended for clusters running Databricks Runtime 4.2 or above.
      --maven-coordinates TEXT  Maven coordinates in the form of GroupId:ArtifactId:Version (i.e.org.jsoup:jsoup:1.7.2).
      --maven-repo TEXT         Maven repository to install the Maven package from. If omitted, both Maven Repository and Spark Packages are searched.
      --maven-exclusion TEXT    List of dependences to exclude. For example: --maven-exclusion "slf4j:slf4j" --maven-exclusion "*:hadoop-client".
      --pypi-package TEXT       The name of the PyPI package to install. An optional exact version specification is also supported. Examples "simplejson" and "simplejson==3.8.0".
      --pypi-repo TEXT          The repository where the package can be found. If not specified, the default pip index is used.
      --cran-package TEXT       The name of the CRAN package to install.
      --cran-repo TEXT          The repository where the package can be found. If not specified, the default CRAN repo is used.
  list                  Shortcut to `all-cluster-statuses` or `cluster-status`.
    Options:
      --cluster-id CLUSTER_ID   Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration.
  uninstall             Uninstall a library on a cluster.
    Options:
      --cluster-id CLUSTER_ID   Can be found in the URL at https://<databricks-instance>/?o=<16-digit-number>#/setting/clusters/$CLUSTER_ID/configuration. [required]
      --all                     Uninstall all libraries.
      --jar TEXT                JAR on DBFS or WASB.
      --egg TEXT                Egg on DBFS or WASB.
      --whl TEXT                Wheel or zipped wheelhouse on DBFS or WASB. Supported in CLI 0.8.2 and above.
                                Recommended for clusters running Databricks Runtime 4.2 or above.
      --maven-coordinates TEXT  Maven coordinates in the form of GroupId:ArtifactId:Version (i.e.org.jsoup:jsoup:1.7.2).
      --maven-repo TEXT         Maven repository to install the Maven package from. If omitted, both Maven Repository and Spark Packages are searched.
      --maven-exclusion TEXT    List of dependences to exclude. For example: --maven-exclusion "slf4j:slf4j" --maven-exclusion "*:hadoop-client".
      --pypi-package TEXT       The name of the PyPI package to install. An optional exact version specification is also supported. Examples "simplejson" and "simplejson==3.8.0".
      --pypi-repo TEXT          The repository where the package can be found. If not specified, the default pip index is used.
      --cran-package TEXT       The name of the CRAN package to install.
      --cran-repo TEXT          The repository where the package can be found. If not specified, the default CRAN repo is used.

DBFS から JAR をインストールするInstall a JAR from DBFS

databricks libraries install --cluster-id $CLUSTER_ID --jar dbfs:/test-dir/test.jar

クラスターのライブラリの状態を一覧表示するList library statuses for a cluster

databricks libraries list --cluster-id $CLUSTER_ID

シークレット CLISecrets CLI

注意

シークレット CLI には、Databricks CLI 0.7.1 以上が必要です。The Secrets CLI requires Databricks CLI 0.7.1 or above.

シークレットサブコマンドを実行するには、databricks secrets に追加します。You run secrets subcommands by appending them to databricks secrets.

シークレットの詳細については、「シークレット」を参照してください。For more information about secrets, see Secrets.

databricks secrets --help
Usage: databricks secrets [OPTIONS] COMMAND [ARGS]...

  Utility to interact with secret API.

Options:
  -v, --version   [VERSION]
  --profile TEXT  CLI connection profile to use. The default profile is
                  "DEFAULT".
  -h, --help      Show this message and exit.

Commands:
  create-scope  Creates a secret scope.
    Options:
      --scope SCOPE                  The name of the secret scope.
      --initial-manage-principal     The initial principal that can manage the created secret scope.
                                      If specified, the initial ACL with MANAGE permission applied
                                      to the scope is assigned to the supplied principal (user or group).
                                      The only supported principal is the group
                                      "users", which contains all users in the workspace. If not
                                      specified, the initial ACL with MANAGE permission applied to
                                      the scope is assigned to request issuer's user identity.
  delete        Deletes a secret.
    Options:
      --scope SCOPE                  The name of the secret scope.
      --key KEY                      The name of secret key.
  delete-acl    Deletes an access control rule for a principal.
    Options:
      --scope SCOPE                  The name of the scope.
      --principal PRINCIPAL          The name of the principal.
  delete-scope  Deletes a secret scope.
    Options:
      --scope SCOPE                  The name of the secret scope.
  get-acl       Gets the details for an access control rule.
    Options:
      --scope SCOPE                  The name of the secret scope.
      --principal PRINCIPAL          The name of the principal.
      --output FORMAT                JSON or TABLE. Set to TABLE by default.
  list          Lists all the secrets in a scope.
    Options:
      --scope SCOPE                  The name of the secret scope.
      --output FORMAT                JSON or TABLE. Set to TABLE by default.
  list-acls     Lists all access control rules for a given secret scope.
    Options:
      --scope SCOPE                  The name of the secret scope.
      --output FORMAT                JSON or TABLE. Set to TABLE by default.
  list-scopes   Lists all secret scopes.
      --output FORMAT                JSON or TABLE. Set to TABLE by default.
  put           Puts a secret in a scope.
    Options:
      --scope SCOPE                  The name of the secret scope.
      --key KEY                      The name of the secret key.  [required]
      --string-value TEXT            Read value from string and stored in UTF-8 (MB4) form
      --binary-file PATH             Read value from binary-file and stored as bytes.
  put-acl       Creates or overwrites an access control rule for a principal
                applied to a given secret scope.
    Options:
      --scope SCOPE                    The name of the secret scope.
      --principal PRINCIPAL            The name of the principal.
      --permission [MANAGE|WRITE|READ] The permission to apply.

シークレットのスコープを作成するCreate a secret scope

databricks secrets create-scope --scope my-scope

ワークスペースのすべてのシークレットスコープを一覧表示するList all secret scopes in workspace

databricks secrets list-scopes

シークレットのスコープを削除するDelete a secret scope

databricks secrets delete-scope --scope my-scope

シークレットスコープでシークレットを作成または更新します。Create or update a secret in a secret scope

シークレットを格納するには、3つの方法があります。There are three ways to store a secret. 最も簡単な方法は、--string-value オプションを使用することです。シークレットは UTF-8 (MB4) 形式で格納されます。The easiest way is to use the --string-value option; the secret will be stored in UTF-8 (MB4) form. シークレットはコマンドラインの履歴にプレーンテキストで保存される可能性があるため、このオプションに注意してください。You should be careful with this option, because your secret may be stored in your command line history in plain text.

databricks secrets put --scope my-scope --key my-key --string-value my-value

また、--binary-file オプションを使用して、ファイルに格納されているシークレットを指定することもできます。You can also use the --binary-file option to provide a secret stored in a file. ファイルの内容はそのとおりに読み取られ、バイトとして格納されます。The file content will be read as is and stored as bytes.

databricks secrets put --scope my-scope --key my-key --binary-file my-secret.txt

2つのオプションのいずれも指定しない場合は、シークレットを入力するためのエディターが開きます。If you don’t specify any of the two options, an editor will be opened for you to enter your secret. エディターに表示される指示に従って、シークレットを入力します。Follow the instructions shown on the editor to enter your secret.

databricks secrets put --scope my-scope --key my-key

シークレットのスコープ内に格納されているシークレットの一覧表示List secrets stored within the secret scope

databricks secrets list --scope my-scope

CLI からシークレットを取得するためのインターフェイスはありません。There is no interface to get secrets from the CLI. シークレットにアクセスするには、Databricks notebook 内でDatabricks utilities secret utilities インターフェイスを使用する必要があります。You must use the Databricks Utilities secret utilities interface within a Databricks notebook to access your secret.

シークレットスコープ内のシークレットを削除するDelete a secret in a secret scope

databricks secrets delete --scope my-scope --key my-key

プリンシパルの ACL を付与または変更するGrant or change ACL for a principal

databricks secrets put-acl --scope my-scope --principal principal --permission MANAGE

シークレットスコープ内の Acl を一覧表示するList ACLs in a secret scope

databricks secrets list-acls --scope my-scope

シークレットスコープ内のプリンシパルの ACL を取得します。Get ACL for a principal in a secret scope

databricks secrets get-acl --scope my-scope --principal principal

プリンシパルの ACL を取り消すRevoke ACL for a principal

databricks secrets delete-acl --scope my-scope --principal principal

Stack CLIStack CLI

重要

この機能はベータ版です。This feature is in Beta.

注意

Stack CLI には、Databricks CLI 0.8.3 以上が必要です。The Stack CLI requires Databricks CLI 0.8.3 or above.

スタックサブコマンドは、databricks stack に追加することによって実行します。You run stack subcommands by appending them to databricks stack.

databricks stack --help
Usage: databricks stack [OPTIONS] COMMAND [ARGS]...

  [Beta] Utility to deploy and download Databricks resource stacks.

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:
  deploy    Deploy a stack of resources given a JSON configuration of the stack
    Usage: databricks stack deploy [OPTIONS] CONFIG_PATH
    Options:
       -o, --overwrite  Include to overwrite existing workspace notebooks and DBFS
                        files  [default: False]
  download  Download workspace notebooks of a stack to the local filesystem
            given a JSON stack configuration template.
    Usage: databricks stack download [OPTIONS] CONFIG_PATH
    Options:
       -o, --overwrite  Include to overwrite existing workspace notebooks in the
                        local filesystem   [default: False]

ワークスペースへのスタックの配置Deploy a stack to a workspace

このサブコマンドは、スタックを配置します。This subcommand deploys a stack. スタックを設定する方法については、「 stack セットアップ」を参照してください。See Stack setup to learn how to set up a stack.

databricks stack deploy ./config.json

Stack 構成 JSON テンプレートは、config.json の例を示します。Stack configuration JSON template gives an example of config.json.

スタックノートブックの変更のダウンロードDownload stack notebook changes

このサブコマンドは、スタックの notebook をダウンロードします。This subcommand downloads the notebooks of a stack.

databricks stack download ./config.json