Creating a Queue

Function

This API is used to create a queue. The queue will be bound to specified compute resources.

It takes 6 to 10 minutes to start a job using a new queue for the first time.

Debugging

You can debug this API in API Explorer.

URI

  • URI format

    POST /v1.0/{project_id}/queues

  • Parameter description
    Table 1 URI parameter

    Parameter

    Mandatory

    Type

    Description

    project_id

    Yes

    String

    Project ID, which is used for resource isolation. For details about how to obtain its value, see Obtaining a Project ID.

Request

Table 2 Request parameters

Parameter

Mandatory

Type

Description

queue_name

Yes

String

Name of a newly created resource queue. The name can contain only digits, letters, and underscores (_), but cannot contain only digits or start with an underscore (_). Length range: 1 to 128 characters.

NOTE:

The queue name is case-insensitive. The uppercase letters will be automatically converted to lowercase letters.

queue_type

No

String

Indicates the queue type. The options are as follows:

  • sql
  • general
NOTE:

If the type is not specified, the default value sql is used.

description

No

String

Description of a queue.

cu_count

Yes

Integer

Minimum number of CUs that are bound to a queue. Currently, the value can only be 16, 64, or 256.

charging_mode

No

Integer

Billing mode of a queue. This value can only be set to 1, indicating that the billing is based on the CUH used.

enterprise_project_id

No

String

Enterprise project ID. The value 0 indicates the default enterprise project. For details about how to set an enterprise project, see Accessing the Enterprise Center in the Enterprise Management User Guide.

NOTE:

Users who have enabled Enterprise Management can set this parameter to bind a specified project.

platform

No

String

CPU architecture of queue compute resources.

  • x86_64
  • AArch64

The default value is x86_64.

NOTE:

The AArch64 architecture uses Huawei Kunpeng series servers as computing resources.

resource_mode

No

Integer

Queue resource mode. The options are as follows:

0: indicates the shared resource mode.

1: indicates the exclusive resource mode.

labels

No

Array of Strings

Tag information of the queue to be created. Currently, the tag information includes whether the queue is cross-AZ (JSON character string). The value can only be 2, that is, a dual-AZ queue whose compute resources are distributed in two AZs is created.

feature

No

String

Indicates the queue feature. The options are as follows:

  • basic: basic type
  • ai: AI-enhanced (Only the SQL x86_64 dedicated queue supports this option.)

The default value is basic.

NOTE:

For an enhanced AI queue, an AI image is loaded in the background. The image integrates AI algorithm packages based on the basic image. For details, see the Data Lake Insight User Guide.

tags

No

Array of Strings

Label of a queue. For details, see Table 3.

Table 3 tags parameters

Parameter

Mandatory

Type

Description

Key

Yes

String

Tag key.

value

Yes

String

Tag value.

Response

Table 4 Response parameters

Parameter

Mandatory

Type

Description

is_success

No

Boolean

Indicates whether the request is successfully executed. Value true indicates that the request is successfully executed.

message

No

String

System prompt. If execution succeeds, the parameter setting may be left blank.

queue_name

No

String

Name of the created queue.

NOTE:

The queue name is case-insensitive. The uppercase letters will be automatically converted to lowercase letters.

Example

  • Example request
    {
        "queue_name": "queue1",
        "description": "test",
        "cu_count": 16,
        "resource_mode": 1,
        "queue_type": "general",
        "labels": ["multi_az=2"]
    }
  • Example response (successful request)
    {
      "is_success": true,
      "message": "",
      "queue_name": "queue1"
    }

Status Codes

Table 5 describes the status code.

Table 5 Status codes

Status Code

Description

200

The job is created successfully.

400

Request error.

500

Internal service error.

Error Codes

If an error occurs when this API is invoked, the system does not return the result similar to the preceding example, but returns the error code and error information. For details, see Error Code.