要访问 Databricks REST API,必须
进行身份验证
。
若要配置单个 SQL 仓库,请使用
SQL 仓库 API
。 若要配置所有 SQL 仓库,请使用
全局 SQL 仓库 API
。
若要创建 SQL 仓库,必须拥有
群集创建权限
,该权限在“数据科学与工程”工作区中启用。
若要管理 SQL 仓库,必须在仓库的 Databricks SQL 中具有
可管理
权限。
将 Warehouses API 与无服务器 SQL 仓库配合使用
可以使用
SQL Warehouse API
来管理无服务器 SQL 仓库。 必须先
为工作区启用该功能
,然后才能创建无服务器 SQL 仓库。 有关无服务器计算的详细信息,请参阅
无服务器计算
。
如果使用 Databricks API 创建 SQL 仓库,并且工作区启用了该无服务器功能,则默认情况下它就是无服务器。 若要创建专业或经典 SQL 仓库,请在 API 请求中添加
enable_serverless_compute
参数并将其设置为
false
。 在
创建 API
和
编辑 API
请求中都可以添加此参数。
若要将无服务器 SQL 仓库降级为专业或经典 SQL 仓库,请编辑仓库并将
enable_serverless_compute
设置为
false
。
对于无服务器 SQL 仓库,现成虚拟机实例策略 (
spot_instance_policy
) 不受支持并且将被忽略。
请注意,无服务器、专业和经典 SQL 仓库的“自动停止”字段 (
auto_stop_mins
) 的默认值和最小值是不同的。
SQL 仓库 API
使用此 API 创建、编辑、列出和获取 SQL 仓库。
本节内容:
HTTP 方法
cluster_size
STRING
分配给仓库的群集大小:
"2X-Small"
、
"X-Small"
、
"Small"
、
"Medium"
、
"Large"
、
"X-Large"
、
"2X-Large"
、
"3X-Large"
、
"4X-Large"
。 有关从群集到实例大小的映射,请参阅
群集大小
。 此字段为必需字段。
min_num_clusters
INT32
SQL 仓库运行时可用的最小群集数。 默认值为 1。
max_num_clusters
INT32
SQL 仓库运行时可用的最大群集数。 此字段为必需字段。 如果
未启用多群集负载均衡
,则限制为
。
auto_stop_mins
INT32
在空闲的 SQL 仓库终止所有群集并停止之前等待的时间(以分钟为单位)。 此字段是可选的。 将此字段设置为 0 会禁用自动停止。 对于专业和经典 SQL 仓库,默认值为 15,最小值为 10。 对于无服务器 SQL 仓库,默认值为 10,最小值为 1。 对于典型用法,Databricks 建议设置为 10 分钟。 设置较小的值(例如 1)会导致 Databricks 更频繁地重启仓库,因此不建议这样做。 请注意,在 UI 中创建仓库时最少需要 5 分钟。 这仅适用于
处于“正在运行”状态
的空闲仓库。 如果仓库无法获取基础计算资源并保持“正在启动”状态,则该仓库将在 75 分钟后自动停止。
WarehouseTags
描述仓库的键值对。 Azure Databricks 使用这些标记来标记所有仓库资源。 此字段是可选的。
enable_photon
BOOLEAN
决定是否在可加快查询执行的本机向量化引擎上执行查询。 此字段是可选的。 默认为
true
。
enable_serverless_compute
BOOLEAN
此 SQL 仓库是否为无服务器 SQL 仓库。 若要使用无服务器 SQL 仓库,必须
为工作区启用无服务器 SQL 仓库
。 此字段是可选的。 如果工作区禁用无服务器 SQL 仓库,则默认为
false
。 如果工作区启用无服务器 SQL 仓库,则默认为
true
。
warehouse_type
WarehouseType
仓库的
SQL 仓库类型
。 此字段是可选的。 对于非无服务器 SQL 仓库,经典和专业仓库类型都是可行的选项,经典仓库是默认仓库类型。 对于无服务器仓库,此字段只能是“专业”。 对于有效值的列表,请参阅本文后面的
"WarehouseType"
部分。
channel
Channel
是使用当前的 SQL 仓库计算版本还是预览版本。 预览版可让你在某些功能成为 Databricks SQL 标配之前试用这些功能。 通常,预览版本会在初始预览版发布两周后升级到当前版本,但某些预览版可能会持续更长时间。 你可以通过查看
发行说明
来了解最新预览版中的功能。 Databricks 不建议对生产工作负荷使用预览版本。 此字段是可选的。 默认为
CHANNEL_NAME_CURRENT
。
spot_instance_policy
WarehouseSpotInstancePolicy
用于将实例分配给集群的现成虚拟机策略。 此字段可选。 如果 SQL 仓库为无服务器 SQL 仓库,则不会使用此字段。
"name": "My SQL Warehouse",
"cluster_size": "Medium",
"min_num_clusters": 1,
"max_num_clusters": 10,
"tags": {
"custom_tags": [
"key": "mykey",
"value": "myvalue"
"spot_instance_policy":"COST_OPTIMIZED",
"enable_photon": "true",
"enable_serverless_compute": "true",
"warehouse_type": "PRO",
"channel": {
"name": "CHANNEL_NAME_CURRENT"
"id": "0123456789abcdef"
HTTP 方法
cluster_size
STRING
分配给仓库的群集大小:
"2X-Small"
、
"X-Small"
、
"Small"
、
"Medium"
、
"Large"
、
"X-Large"
、
"2X-Large"
、
"3X-Large"
、
"4X-Large"
。 有关从群集到实例大小的映射,请参阅
群集大小
。
min_num_clusters
INT32
SQL 仓库运行时可用的最小群集数。
max_num_clusters
INT32
SQL 仓库运行时可用的最大群集数。 此字段为必需字段。 如果
未启用多群集负载均衡
,则限制为
。
auto_stop_mins
INT32
在空闲的 SQL 仓库终止所有群集并停止之前等待的时间(以分钟为单位)。 将此字段设置为 0 会禁用自动停止。 对于专业和经典 SQL 仓库,默认值为 15,最小值为 10。 对于无服务器 SQL 仓库,默认值为 10,最小值为 1。 对于典型用法,Databricks 建议设置为 10 分钟。 设置较小的值(例如 1)会导致 Databricks 更频繁地重启仓库,因此不建议这样做。 请注意,在 UI 中创建仓库时最少需要 5 分钟。 这仅适用于
处于“正在运行”状态
的空闲仓库。 如果仓库无法获取基础计算资源并保持“正在启动”状态,则该仓库将在 75 分钟后自动停止。
WarehouseTags
描述仓库的键值对。
spot_instance_policy
WarehouseSpotInstancePolicy
用于将实例分配给集群的现成虚拟机策略。
enable_photon
BOOLEAN
决定是否在可加快查询执行的本机向量化引擎上执行查询。
enable_serverless_compute
BOOLEAN
此 SQL 仓库是否为无服务器 SQL 仓库。 若要使用无服务器 SQL 仓库,必须
为工作区启用无服务器 SQL 仓库
。
warehouse_type
WarehouseType
仓库的
SQL 仓库类型
。 此字段是可选的。 对于非无服务器 SQL 仓库,经典和专业仓库类型都是可行的选项,经典仓库是默认仓库类型。 对于无服务器仓库,此字段只能是“专业”。 对于有效值的列表,请参阅本文后面的
"WarehouseType"
部分。
channel
Channel
是使用当前的 SQL 仓库计算版本还是预览版本。 预览版可让你在某些功能成为 Databricks SQL 标配之前试用这些功能。 通常,预览版本会在初始预览版发布两周后升级到当前版本,但某些预览版可能会持续更长时间。 你可以通过查看
发行说明
来了解最新预览版中的功能。 Databricks 不建议对生产工作负荷使用预览版本。 此字段是可选的。 默认为
CHANNEL_NAME_CURRENT
。
"name": "My Edited SQL warehouse",
"cluster_size": "Large",
"auto_stop_mins": 60
HTTP 方法
cluster_size
STRING
分配给仓库的群集大小:
"2X-Small"
、
"X-Small"
、
"Small"
、
"Medium"
、
"Large"
、
"X-Large"
、
"2X-Large"
、
"3X-Large"
、
"4X-Large"
。 有关从群集到实例大小的映射,请参阅
群集大小
。
auto_stop_mins
INT32
在空闲的 SQL 仓库终止所有群集并停止之前等待的分钟数。
spot_instance_policy
WarehouseSpotInstancePolicy
用于将实例分配给集群的现成虚拟机策略。
num_clusters
INT32
分配给仓库的群集数。
min_num_clusters
INT32
SQL 仓库运行时可用的最小群集数。
max_num_clusters
INT32
SQL 仓库运行时可用的最大群集数。
num_active_sessions
INT32
SQL 仓库上运行的 JDBC 和 ODBC 活动会话的数目。
state
WarehouseState
SQL 仓库的状态。
creator_name
STRING
创建仓库的用户的电子邮件地址。
creator_id
STRING
创建仓库的用户的 Azure Databricks ID。
jdbc_url
STRING
使用 JDBC 将 SQL 命令提交到 SQL 仓库时所用的 URL。
odbc_params
ODBCParams
使用 ODBC 向 SQL 仓库提交 SQL 命令所需的主机、路径、协议和端口信息。
WarehouseTags
描述仓库的键值对。
health
WarehouseHealth
仓库的运行状况。
enable_photon
BOOLEAN
决定是否在可加快查询执行的本机向量化引擎上执行查询。
enable_serverless_compute
BOOLEAN
此 SQL 仓库是否为无服务器 SQL 仓库。 若要使用无服务器 SQL 仓库,必须
为工作区启用无服务器 SQL 仓库
。 此字段是可选的。 如果工作区禁用无服务器 SQL 仓库,则默认为
false
。 如果工作区启用无服务器 SQL 仓库,则默认为
true
。
warehouse_type
WarehouseType
仓库的
SQL 仓库类型
。 此字段是可选的。 对于非无服务器 SQL 仓库,经典和专业仓库类型都是可行的选项,经典仓库是默认仓库类型。 对于无服务器仓库,此字段只能是“专业”。 对于有效值的列表,请参阅本文后面的
"WarehouseType"
部分。
channel
Channel
SQL 仓库使用的是当前 SQL 仓库计算版本还是预览版本。 预览版可让你在某些功能成为 Databricks SQL 标配之前试用这些功能。 通常,预览版本会在初始预览版发布两周后升级到当前版本,但某些预览版可能会持续更长时间。 你可以通过查看
发行说明
来了解最新预览版中的功能。 Databricks 不建议对生产工作负荷使用预览版本。 此字段是可选的。 默认为
CHANNEL_NAME_CURRENT
。
"id": "7f2629a529869126",
"name": "MyWarehouse",
"cluster_size": "Small",
"min_num_clusters": 1,
"max_num_clusters": 1,
"auto_stop_mins": 0,
"auto_resume": true,
"num_clusters": 0,
"num_active_sessions": 0,
"state": "STOPPED",
"creator_name": "user@example.com",
"jdbc_url": "jdbc:spark://hostname.staging.cloud.databricks.com:443/default;transportMode=http;ssl=1;AuthMech=3;httpPath=/sql/1.0/warehouses/7f2629a529869126;",
"odbc_params": {
"hostname": "hostname.cloud.databricks.com",
"path": "/sql/1.0/warehouses/7f2629a529869126",
"protocol": "https",
"port": 443
"tags": {
"custom_tags": [
"key": "mykey",
"value": "myvalue"
"spot_instance_policy": "COST_OPTIMIZED",
"enable_photon": true,
"cluster_size": "Small",
"enable_serverless_compute": true,
"warehouse_type": "PRO",
"channel": {
"name": "CHANNEL_NAME_CURRENT"
HTTP 方法
"warehouses": [
{ "id": "123456790abcdef", "name": "My SQL warehouse", "cluster_size": "Medium" },
{ "id": "098765321fedcba", "name": "Another SQL warehouse", "cluster_size": "Large" }
注意:如果使用已弃用的
2.0/sql/endpoints/
API,顶级响应字段将是“终结点”而不是“仓库”。
HTTP 方法
STARTING
->
STARTING
,
RUNNING
,
STOPPING
,
DELETING
RUNNING
->
STOPPING
,
DELETING
STOPPING
->
STOPPED
,
STARTING
STOPPED
->
STARTING
,
DELETING
DELETING
->
DELETED