databricks-connect 的非交互式配置
Non-interactive configuration of databricks-connect
我正在将开发环境设置为 Docker 容器映像。这将使我和我的同事能够起床并 运行ning 快速使用它作为解释器环境。我们预期的工作流是在本地开发代码并在连接到各种数据源的 Azure Databricks 集群上执行它。为此,我正在考虑使用 databricks-connect.
我正在 运行 配置 databricks-connect 显然只是一个交互式程序。这导致每次 Docker 容器映像 运行 时必须 运行 databricks-connect configure
并提供各种配置值,这可能会变得很麻烦。
有没有办法以非交互方式配置 databricks-connect? 这将允许我在开发环境中包含配置过程 Dockerfile
和开发人员只需要在(重新)构建其本地开发环境时提供配置值。
是的 - 这是可能的,有不同的方法:
- 使用shell多行输入,像这样(取自here)——只需要定义正确的环境变量:
echo "y
$databricks_host
$databricks_token
$cluster_id
$org_id
15001" | databricks-connect configure
- 直接生成配置文件 - 只是 JSON 您需要填写必要的参数。生成一次,查看
~/.databricks-connect
并重复使用。
但实际上您可能根本不需要配置 - Databricks 连接可以从环境变量(如 DATABRICKS_ADDRESS
)或 Spark 配置(如 spark.databricks.service.address
)获取信息 - 只需参考 official documentation.
我正在将开发环境设置为 Docker 容器映像。这将使我和我的同事能够起床并 运行ning 快速使用它作为解释器环境。我们预期的工作流是在本地开发代码并在连接到各种数据源的 Azure Databricks 集群上执行它。为此,我正在考虑使用 databricks-connect.
我正在 运行 配置 databricks-connect 显然只是一个交互式程序。这导致每次 Docker 容器映像 运行 时必须 运行 databricks-connect configure
并提供各种配置值,这可能会变得很麻烦。
有没有办法以非交互方式配置 databricks-connect? 这将允许我在开发环境中包含配置过程 Dockerfile
和开发人员只需要在(重新)构建其本地开发环境时提供配置值。
是的 - 这是可能的,有不同的方法:
- 使用shell多行输入,像这样(取自here)——只需要定义正确的环境变量:
echo "y
$databricks_host
$databricks_token
$cluster_id
$org_id
15001" | databricks-connect configure
- 直接生成配置文件 - 只是 JSON 您需要填写必要的参数。生成一次,查看
~/.databricks-connect
并重复使用。
但实际上您可能根本不需要配置 - Databricks 连接可以从环境变量(如 DATABRICKS_ADDRESS
)或 Spark 配置(如 spark.databricks.service.address
)获取信息 - 只需参考 official documentation.