如何通过应用程序或命令行管理Databricks SQL Endpoints
Databricks SQL端点启停、列举操作方案
你需要的三个操作都可以通过 Databricks CLI(命令行场景)或者 Databricks REST API(应用集成场景)实现,具体操作方法如下:
前置准备
操作前需要先获取对应Databricks工作区的访问令牌以及工作区实例URL,两类操作方式都需要这两个信息做身份校验。
方案1:命令行使用Databricks CLI操作
这是本地命令行操作最便捷的方式:
- 先完成CLI安装和配置:
安装命令:pip install databricks-cli
配置身份信息:执行databricks configure --token,按提示输入工作区实例URL和访问令牌即可 - 列出所有你有权限访问的SQL端点:
基础命令:databricks sql endpoints list
如果你安装了jq工具,可以过滤输出核心信息:databricks sql endpoints list | jq '.[] | {端点名称:.name, 端点ID:.id, 当前状态:.state}' - 启动指定SQL端点:
命令:databricks sql endpoints start <替换为目标端点ID>
你之前通过JDBC连接自动启动端点的逻辑,本质就是驱动后台调用了这个启动接口 - 停止指定SQL端点:
命令:databricks sql endpoints stop <替换为目标端点ID>
执行后端点状态会逐步变为STOPPED,停止后不再产生计算费用
方案2:应用集成调用REST API实现
如果要在自有应用中实现相关操作,直接调用对应REST接口即可,所有请求的Header都需要携带身份校验字段:Authorization: Bearer <替换为你的访问令牌>
- 列出有权限的SQL端点:请求方式GET,请求路径
/api/2.0/sql/endpoints - 启动指定SQL端点:请求方式POST,请求路径
/api/2.0/sql/endpoints/<替换为目标端点ID>/start - 停止指定SQL端点:请求方式POST,请求路径
/api/2.0/sql/endpoints/<替换为目标端点ID>/stop
权限说明:如果你的账号仅持有端点的「Can Use」权限,默认仅能启动有权限访问的端点,无法执行停止操作,也仅能列举出你有访问权限的端点;如果需要执行停止、全量列举所有端点的操作,需要持有对应端点的「Can Manage」权限或者工作区管理员权限。
内容的提问来源于stack exchange,提问作者Jacek Laskowski
相关产品推荐
相关产品推荐

