批量创建并执行SQL任务

最近更新时间:2024-09-20 13:00:57

我的收藏

1. 接口描述

接口请求域名: dlc.tencentcloudapi.com 。

本接口(CreateTasks),用于批量创建并执行SQL任务

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:CreateTasks。
Version String 公共参数,本接口取值:2021-01-25。
Region String 公共参数,详见产品支持的 地域列表
DatabaseName String 数据库名称。如果SQL语句中有数据库名称,优先使用SQL语句中的数据库,否则使用该参数指定的数据库(注:当提交建库sql时,该字段传空字符串)。
示例值:database1
Tasks TasksInfo SQL任务信息
DatasourceConnectionName String 数据源名称,默认为DataLakeCatalog
示例值:DataLakeCatalog
DataEngineName String 计算引擎名称,不填任务提交到默认集群
示例值:shared_presto
ResourceGroupName String spark集群资源组名称
示例值:resourceGroup01
IsMultiStatement Boolean 是否使用multi- statement方式运行一批次任务,true: 是,false: 否
示例值:false

3. 输出参数

参数名称 类型 描述
BatchId String 本批次提交的任务的批次Id
示例值:batch-xxxxxxxx
TaskIdSet Array of String 任务Id集合,按照执行顺序排列
示例值:[alcas,asdfasd]
RequestId String 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 批量创建并执行SQL任务

批量创建并执行SQL任务

输入示例

POST / HTTP/1.1
Host: dlc.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: CreateTasks
<公共请求参数>

{
    "Tasks": {
        "TaskType": "SQLTask",
        "SQL": "U0VMRUNUICogRlJPTSBgdGVzdGh5d2AuYHRlc3QxMDBtYCBMSU1JVCAxMDs=",
        "Config": [
            {
                "Key": "",
                "Value": ""
            }
        ],
        "FailureTolerance": "Proceed"
    },
    "DatabaseName": "testdb",
    "DatasourceConnectionName": "DataLakeCatalog"
}

输出示例

{
    "Response": {
        "BatchId": "batch-45nyt3ee",
        "RequestId": "b577857e-041f-46c7-b5cf-4b3d3f50bc51",
        "TaskIdSet": [
            "e9663251-3a14-423a-b003-13c77c3fae11"
        ]
    }
}

5. 开发者资源

腾讯云 API 平台

腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。

API Inspector

用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
FailedOperation.NoPermissionToUseTheDataEngine 用户没有指定引擎的使用权限
FailedOperation.SQLTaskParseFailed 语法解析失败,请校验后重试
InternalError 内部错误。
InternalError.DBError 数据库错误。
InternalError.InternalSystemException 业务系统异常,请重试或提工单联系我们。
InvalidParameter 参数错误。
InvalidParameter.DataEngineOnlySupportSQL 当前任务仅支持SQL引擎运行
InvalidParameter.ImageEngineTypeNotMatch 指定引擎类型不匹配,当前仅支持: SparkSQL, PrestoSQL, SparkBatch
InvalidParameter.ImageIsPublicNotMatch 指定isPublic不匹配,当前仅支持: 1:公共, 2:私有
InvalidParameter.ImageParameterNotFound 指定集群镜像参数不存在
InvalidParameter.ImageParameterSubmitMethodNotMatch 指定集群镜像ParameterSubmitMethod不匹配,当前仅支持: User, BackGround
InvalidParameter.ImageParameterTypeNotMatch 指定集群镜像ParameterType不匹配,当前仅支持: 1: session , 2: common, 3: cluster
InvalidParameter.InvalidConfigKeyNotFound 任务指定参数Key值不存在
InvalidParameter.InvalidConfigValueLengthOutLimit 任务指定参数Value值长度超限
InvalidParameter.InvalidConfigValueRegexpNotMatch 任务指定参数Value值不符合规则
InvalidParameter.InvalidDataEngineName 无效的数据引擎名。
InvalidParameter.InvalidFailureTolerance 任务容错类型错误,当前仅支持: Proceed/Terminate
InvalidParameter.InvalidSQL SQL解析失败。
InvalidParameter.InvalidSQLNum 执行SQL数量错误,SQL数量要大于等于1个且小于等于50个
InvalidParameter.InvalidStoreLocation 存储位置错误。
InvalidParameter.InvalidTaskType 任务类型TaskType错误,Spark引擎任务类型为SparkSQLTask,Presto引擎任务类型为SQLTask
InvalidParameter.InvalidWhiteListKey 获取白名单错误,请重试,或者提交工单联系我们
InvalidParameter.ParameterNotFoundOrBeNone 找不到参数或参数为空
InvalidParameter.SQLBase64DecodeFail SQL脚本Base64解析失败
InvalidParameter.SQLParameterPreprocessingFailed SQL参数预处理失败
ResourceNotFound 资源不存在。
ResourceNotFound.DataEngineNotFound 指定的引擎不存在
ResourceNotFound.DataEngineNotRunning 指定的引擎未处于运行中
ResourceNotFound.DataEngineNotUnique 指定的引擎已存在
ResourceNotFound.DefaultDataEngineNotFound 找不到默认引擎
ResourceNotFound.ResultOutputPathNotFound 未找到结果路径。
ResourceUnavailable.BalanceInsufficient 账号余额不足,无法执行SQL任务。
UnauthorizedOperation.UseComputingEngine 子用户无权使用计算引擎。
UnsupportedOperation.UnsupportedFileType 不支持当前文件格式,当前仅支持: json/csv/avro/orc/parquet