更新时间:2025-08-06 GMT+08:00
分享

创建队列

功能介绍

该API用于创建队列,该队列将会绑定用户指定的计算资源。

新队列第一次运行作业时,需要一定的时间,通常为5~15分钟。

调试

您可以在API Explorer中调试该接口。

URI

  • URI格式:

    POST /v1.0/{project_id}/queues

  • 参数说明
    表1 URI参数

    参数名称

    是 否必选

    参数类型

    说明

    project_id

    String

    参数解释:

    项目编号,用于资源隔离。获取方式请参考获取项目ID

    示例: 48cc2c48765f481480c7db940d6409d1

    约束限制:

    取值范围:

    只能由英文字母和数字组成,且长度为[1-64]个字符。

    默认取值:

请求消息

表2 请求参数

参数名称

是否必选

参数类型

说明

queue_name

String

新建的队列名称,

参数解释:

新建的队列名称。

约束限制:

  • 名称只能包含数字、英文字母和下划线,但不能是纯数字,且不能以下划线开头。
  • 长度限制:1~128个字符。
  • 队列名称不区分大小写,系统会自动转换为小写。

取值范围:

默认取值:

queue_type

String

参数解释:

队列的类型。

约束限制:

如果不指定类型,则默认为“sql”

取值范围:

  • sql:SQL队列类型,用于运行SQL作业。
  • general:通用队列类型,用于运行Flink、Spark Jar作业。

默认取值:

description

String

参数解释:

队列的描述信息。

约束限制:

取值范围:

默认取值:

cu_count

Integer

参数解释:

与队列绑定的最小计算单元个数。

约束限制:

取值范围:

设置值当前只支持16,64,256。

默认取值:

charging_mode

Integer

参数解释:

队列的收费模式。

约束限制:

取值范围:

只能设置为“1”,表示按照CU时收费。

默认取值:

enterprise_project_id

String

参数解释:

企业项目ID,“0”表示default,即默认的企业项目。

关于如何设置企业项目请参考《企业管理用户指南》。

约束限制:

仅开通了企业管理服务的用户可设置该参数绑定指定的项目。

取值范围:

默认取值:

platform

String

参数解释:

队列计算资源的cpu架构。

约束限制:

取值范围:

  • x86_64
  • aarch64:aarch64架构计算资源使用华为鲲鹏系列服务器。

默认值为x86_64。

默认取值:

resource_mode

Integer

参数解释:

队列资源模式。

约束限制:

取值范围:

0:共享资源模式

1:专属资源模式

默认取值:

labels

Array of Strings

参数解释:

创建队列的标签信息,目前包括队列是否跨AZ的标签信息(Json字符串),且只支持值为“2”,即创建一个计算资源分布在2个可用区的双AZ队列。

约束限制:

取值范围:

默认取值:

feature

String

参数解释:

队列使用的镜像类型。

约束限制:

取值范围:

  • basic:基础型
  • ai:AI增强型(仅SQL的x86_64专属队列支持选择),AI增强型即队列加载了AI镜像,该镜像在基础镜像的基础上集成了AI相关的算法包。

默认取值:

默认值为“basic”

tags

Array of Objects

参数解释:

队列的标签,使用标签标识云资源。包括“标签键”和“标签值”,具体请参考表3

约束限制:

取值范围:

默认取值:

elastic_resource_pool_name

String

参数解释:

新建队列所属的弹性资源池名称。

约束限制:

名称只能包含数字、小写英文字母和下划线,但不能是纯数字,且不能以下划线开头。

长度限制:1~128个字符。

添加队列到资源池,resource_mode必须为专属模式,否则不生效。

取值范围:

默认取值:

engine

String

参数解释:

队列的引擎类型。

约束限制:

只有在queue_type是sql条件下才可配置

取值范围:

可以选择spark引擎或hetuEngine。

  • spark:spark引擎
  • hetuEngine:hetuEngine引擎

了解引擎的详细类型和说明请参考DLI简介

默认取值:

默认是spark。

properties

object

参数解释:

配置队列属性。请参考表4

约束限制:

当前仅以下区域支持设置Spark Native属性:
  • 华北-乌兰察布一
  • 西南-贵阳一
  • 亚太-曼谷
  • 亚太-新加坡

取值范围:

请参考表4

默认取值:

表3 tags参数

参数名称

是否必选

参数类型

说明

key

String

参数解释:

标签的键。

约束限制:

取值范围:

标签的键的最大长度为128个字符,标签的键可以包含任意语种字母、数字、空格和_ . : +-@ ,但首尾不能含有空格,不能以_sys_开头。

默认取值:

value

String

参数解释:

标签的值。

约束限制:

取值范围:

标签值的最大长度为255个字符,标签的值可以包含任意语种字母、数字、空格和_ . : +-@ 。

默认取值:

表4 properties参数说明

参数名称

是否必选

参数类型

说明

computeEngine.spark.nativeEnabled

String

参数解释:

Spark Native引擎是Apache Spark的一个核心组件,用于提高Spark SQL计算性而设计。通过使用向量化的C++加速库,实现对Spark算子性能加速。开启Spark Native引擎特性,可以提升Spark SQL的作业性能,减少CPU和内存的消耗。

配置队列是否开启Spark Native引擎特性,当前支持Scan和Filter两种算子开启Spark Native。

约束限制:

修改现有队列的属性,需要重启队列才会生效。

取值范围:

当前只涉及开启两种算子:Scan 和 Filter。

  • Scan:Scan算子通常由查询语句触发,例如select * from test_table。
    仅以下条件的Scan算子支持开启Native:
    • Parquet格式的Hive表、Datasource表。
    • Orc格式Datasource表。
  • Filter:Filter算子通常由WHERE语句触发,例如:select * from test_table where id = xxx。

    使用Explain语句可以查看SQL命令触发的算子类型,例如:Explain select * from test_table。

默认取值:

响应消息

表5 响应参数

参数名称

是否必选

参数类型

说明

is_success

Boolean

参数解释:

请求执行是否成功。“true”表示请求执行成功。

取值范围:

message

String

参数解释:

系统提示信息,执行成功时,信息可能为空。

取值范围:

queue_name

String

参数解释:

新增队列的名称。队列名称不区分大小写,系统会自动转换为小写。

取值范围:

请求示例

创建一个名称为queue1的通用类型的专属队列,该队列大小为16CU,且队列的计算资源分布在2个可用区。

{
    "queue_name": "queue1",
    "description": "test",
    "cu_count": 16,
    "resource_mode": 1,
    "queue_type": "general",
    "labels": ["multi_az=2"]
}

在指定的弹性资源池中创建队列

{
    "queue_name": "queue2",
    "description": "test_esp",
    "cu_count": 16,
    "resource_mode": 1,
    "enterprise_project_id": "0",
    "queue_type": "general",
    "labels": ["multi_az=2"],
    "elastic_resource_pool_name": "elastic_pool_0622_10"
}

响应示例

{
  "is_success": true,
  "message": "",
  "queue_name": "queue1"
}

状态码

状态码如表6所示。

表6 状态码

状态码

描述

200

创建成功。

400

请求错误。

500

内部服务器错误。

错误码

调用接口出错后,将不会返回上述结果,而是返回错误码和错误信息,更多介绍请参见错误码

相关文档