导出查询结果
功能介绍
该API用于将SQL语句的查询结果导出到OBS对象存储中,只支持导出“QUERY”类型作业的查询结果。
- 该API为异步操作。
- 目前只支持导出数据到OBS中,且导出的路径必须指定到文件夹级别。OBS路径中不支持逗号,且其中的桶名不能以正则格式“.[0-9]+(.*)”结尾,即,若桶名包含“.”, 则最后一个“.”不能以数字开头(例如:**.12abc 或 **.12)。
URI
- URI格式:
- 参数说明
表1 URI 参数 参数名称
是否必选
参数类型
说明
project_id
是
String
项目编号,用于资源隔离。获取方式请参考获取项目ID。
job_id
是
String
作业ID。
请求消息
参数名称 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
data_path |
是 |
String |
导出结果存储的路径(当前仅支持将数据存储在OBS上)。另外,该路径下的文件夹须不存在,如请求样例中的“path”文件夹。 |
compress |
否 |
String |
导出数据的压缩格式,目前支持gzip,bzip2和deflate压缩方式; 默认值为none,表示不压缩。 |
data_type |
是 |
String |
导出数据的存储格式,目前API支持csv和json格式。 |
queue_name |
否 |
String |
指定执行该任务的队列。若不指定队列,将采用default队列执行操作。 |
export_mode |
否 |
String |
导出模式,目前支持“ErrorIfExists”,“Overwrite”,不指定“export_mode”则默认为“ErrorIfExists”。
|
with_column_header |
否 |
Boolean |
导出csv和json格式数据时,是否导出列名。
|
limit_num |
否 |
Integer |
需要导出的数据数量,默认值为“0”,表示全部导出。 |
encoding_type |
否 |
String |
导出数据的编码格式。默认使用utf-8。 支持以下编码格式:
|
quote_char |
否 |
String |
用户自定义引用字符。 默认值: 英文双引号(") 仅在数据格式为csv格式时支持配置引用字符。 引用字符在导出作业结果时用于标识文本字段的开始和结束,即用于分割字段。 仅支持设置一个字符。 主要用于处理包含空格、特殊字符或与分隔符相同字符的数据。 |
escape_char |
否 |
String |
用户自定义转义字符。 默认值:英文反斜杠(\) 仅在数据格式为csv格式时支持配置转义字符。 在导出结果中如果需要包含特殊字符,如引号本身,可以使用转义字符(反斜杠 \ )来表示。 仅支持设置一个字符。 常用转义字符的场景:
|
响应消息
参数名称 |
是否必选 |
参数类型 |
说明 |
---|---|---|---|
is_success |
是 |
Boolean |
请求发送是否成功。“true”表示请求发送成功。 |
message |
是 |
String |
系统提示信息,执行成功时,信息可能为空。 |
job_id |
否 |
String |
提交请求成功时,生成并提交一个新的作业,返回作业ID。用户可以使用作业ID来查询作业状态和获取作业结果。 |
job_mode |
否 |
String |
作业执行模式:
|
请求示例
将SQL语句的查询结果导出到OBS中以json格式存储。
{ "data_path": "obs://obs-bucket1/path", "data_type": "json", "compress": "gzip", "with_column_header": "true", "queue_name": "queue2", "limit_num": 10 }
响应示例
{ "is_success": true, "message": "", "job_id": "37a40ef9-86f5-42e6-b4c6-8febec89cc20", "job_mode":"async" }
错误码
调用接口出错后,将不会返回上述结果,而是返回错误码和错误信息,更多介绍请参见错误码。