请求语法
POST /v2/repos/<RepoName>/exports/<ExportName>
Content-Type: application/json
Authorization: Pandora <auth>
{
"type": <kodo>,
"whence": <ExportWhence>,
"spec": {
"bucket": <Bucket>,
"keyPrefix": <KeyPrefix>,
"email": <Email>,
"accessKey": <AccessKey>,
"fields": {
"key1": <#value1>,
"key2": <#value2>,
...
},
"rotateStrategy": <RotateStrategy>,
"rotateSize": <RotateSize>,
"rotateInterval": <RotateInterval>,
"format": <Format>,
"delimiter": <Delimiter>,
"compress": <true|false>,
"retention": <Retention>
}
}
请求内容
参数 | 类型 | 必填 | 说明 |
---|---|---|---|
bucket | string | 是 | 数据中心名称 |
keyPrefix | string | 否 | 导出的文件名的前缀 |
string | 是 | 数据中心名称所属用户的七牛账户名称 | |
accessKey | string | 是 | 七牛账户的公钥 |
fields | map | 是 | 字段关系说明key 为kodo-bucket 的字段名value 为导出数据的消息队列的字段名 |
rotateStrategy | string | 否 | 文件切割策略,可取值为size 、interval 、both ,其中,size 表示文件大小超过rotateSize 触发切割行为;interval 表示文件写时长超过rotateInterval 将进行切割;both 表示只要满足其中一个条件将触发切割行为。为了保持兼容性,默认值为interval |
rotateSize | int | 否 | 当文件大小超过该值时将触发切割行为,单位为字节,默认值为5242880 (5MB),最大值不超过1073741824 (1GB) |
rotateInterval | int | 否 | 文件切割间隔,单位为秒(s ),默认值为600 (10分钟) |
format | string | 否 | 文件导出格式支持json 、text 、parquet 、csv 四种形式默认为json |
delimiter | string | 否 | csv文件分割符,当文件类型为csv时,delimiter为必填项 |
compress | bool | 否 | 是否开启文件压缩功能默认为false |
retention | int | 否 | 数据储存时限以天为单位当不大于0或该字段为空时,则永久储存 |
!> 注1: compress
会压缩成gzip
格式,但当用户指定format
为parquet
时,由于parquet
已经是压缩好的列存格式,compress
选项将不起作用。
!> 注2: keyPrefix
字段表示导出文件名称的前缀,该字段可选,默认值为""(生成文件名会自动加上时间戳格式为yyyy-MM-dd-HH-mm-ss
),如果使用了一个或者多个魔法变量时不会自动添加时间戳,支持魔法变量,采用$(var)
的形式求值,目前可用的魔法变量var如下:
year
上传时的年份mon
上传时的月份day
上传时的日期hour
上传时的小时min
上传时的分钟sec
上传时的秒钟
举例说明:
- 假如keyPrefix取值为kodo-parquet/date=$(year)-$(mon)-$(day)/hour=$(hour)/min=$(min)/$(sec),且生成某一文件时的北京标准时间为
2017-01-12 15:30:00
, 则keyPrefix将被解析为kodo-parquet/date=2017-01-12/hour=15/min=30/00,其中的魔法变量$(year)、$(mon)、$(day)、$(hour)、$(min)、$(sec)分别对应文件生成时间2017-01-12 15:30:00
的年、月、日、时、分、秒。 - 假如keyPrefix使用默认值,且生成某一文件时的北京标准时间为
2017-01-12 15:30:00
, 则keyPrefix将被解析为2017-01-12-15-30-00
。
示例
curl -X POST https://pipeline.qiniu.com/v2/repos/repox/exports/export1 \
-H 'Content-Type: application/json' \
-H 'Authorization: Pandora 2J1e7iG13J66GA8vWBzZdF-UR_d1MF-kacOdUUS4:NTi3wH_WlGxYOnXsvgUrO4XMD6Y=' \
-d '{
"type": "kodo",
"spec": {
"bucket": "bucket2",
"keyPrefix": "key1/",
"email": "xiaoming@qiniu.com",
"accessKey": "7H4FDc1M-FxXFZKwjbN_Up1OfY7DotXDjaM5jXzm",
"fields": {
"f1": "#f1",
"f2": "#f2"
}
"format":"json",
"compress": true
}'
文档反馈
(如有产品使用问题,请 提交工单)