按照行模式导出增量变化后的数据
{
"type": "job",
"version": "2.0",
"steps": [
{
"stepType": "otsstream", //插件名,不能修改。
"parameter": {
"statusTable": "TableStoreStreamReaderStatusTable", //存储Tablestore Stream状态的表,一般无需修改。
"maxRetries": 30, //最大重试次数。
"isExportSequenceInfo": false, //是否导出时序信息,时序信息包含了数据的写入时间等。
"mode": "single_version_and_update_only", //Tablestore Stream导出数据的格式,目前需要设置为single_version_and_update_only。如果配置模板中无此项,则需要增加。
"datasource": "otssource", //数据源名称,请根据实际填写。
"envType": 1,
"column": [
{
"name": "pk1"
},
{
"name": "pk2"
},
{
"name": "col1"
}
],
"startTimeString": "${startTime}", //开始导出的时间点,由于是增量导出,需要循环启动此任务,则此处每次启动时的时间都不同,因此需要设置一个变量,例如${startTime}。
"table": "mytable", //Tablestore中的数据表名称。
"endTimeString": "${endTime}" //结束导出的时间点。此处也需要设置一个变量,例如${endTime}。
},
"name": "Reader",
"category": "reader"
},
{
"stepType": "oss", //Writer插件的名称,不能修改。
"parameter": { //此处参数配置只适用于导出csv和text格式的文件。如果要导出为parquet和orc格式,请参照OSS数据源文档修改OSSWriter配置。
"fieldDelimiterOrigin": ",",
"nullFormat": "null", //定义null值的字符串标识符方式,可以是空字符串。
"dateFormat": "yyyy-MM-dd HH:mm:ss", //时间格式。
"datasource": "osssource", //OSS数据源名称,请根据实际填写。
"envType": 1,
"writeSingleObject": true, //是否写单个文件。设置此参数为true,表示写单个文件,当读不到任何数据时不会产生空文件;设置此参数为false,表示写多个文件,当读不到任何数据时,如果配置文件头会输出空文件只包含文件头,否则只输出空文件。
"writeMode": "truncate", //当同名文件存在时系统进行的操作,可选值包括truncate、append和nonConflict。truncate表示会清理已存在的同名文件,append表示会增加到已存在的同名文件内容后面,nonConflict表示当同名文件存在时会报错。
"encoding": "UTF-8", //编码类型。
"fieldDelimiter": ",", //每一列的分隔符。
"fileFormat": "csv", //文件类型,可选值包括csv、text、parquet和orc格式。
"object": "" //备份到OSS的文件名前缀,建议使用"Tablestore实例名/表名/date",例如"instance/table/{date}"。
},
"name": "Writer",
"category": "writer"
},
{
"copies": 1,
"parameter": {
"nodes": [],
"edges": [],
"groups": [],
"version": "2.0"
},
"name": "Processor",
"category": "processor"
}
],
"setting": {
"errorLimit": {
"record": "0" //允许出错的个数。当错误超过这个数目的时候同步任务会失败。
},
"locale": "zh",
"speed": {
"throttle": false, //当throttle值为false时,mbps参数不生效,表示不限流;当throttle值为true时,需要配置mbps参数,表示限流。
"concurrent": 3 //作业并发数。
}
},
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
}
}
按照行的列值增量变化形式导出数据
{
"type": "job",
"version": "2.0",
"steps": [
{
"stepType": "otsstream", //插件名,不能修改。
"parameter": {
"statusTable": "TableStoreStreamReaderStatusTable", //存储Tablestore Stream状态的表,一般无需修改。
"maxRetries": 30, //最大重试次数。
"isExportSequenceInfo": false, //是否导出时序信息,时序信息包含了数据的写入时间等。
"datasource": "otssource",
"envType": 1,
"column": [//设置数据表中需要导出到OSS中的列,如果配置模板中无此项则需要增加,保持默认配置即可。
"pk1", //主键列名称,如果有多个主键列则需要全部配置。
"pk2", //主键列名称,如果有多个主键列则需要全部配置。
"colName", //表示有增量变化的属性列名称,无需修改。
"version", //表示增量变化后列的数据版本号,无需修改。格式为64位时间戳。单位为毫秒。
"colValue", //表示增量变化后属性列值,无需修改。
"opType", //表示增量操作类型,无需修改。
"sequenceInfo" //表示自增保序sequenceid,无需修改。
],
"startTimeString": "${startTime}", //开始导出的时间点,由于是增量导出,需要循环启动此任务,则此处每次启动时的时间都不同,因此需要设置一个变量,例如${startTime}。
"table": "mytable", //Tablestore中的数据表名称。
"endTimeString": "${endTime}" //结束导出的时间点。此处也需要设置一个变量,例如${endTime}。
},
"name": "Reader",
"category": "reader"
},
{
"stepType": "oss", //Writer插件的名称,不能修改。
"parameter": { //此处参数配置只适用于导出csv和text格式的文件。如果要导出为parquet和orc格式,请参照OSS数据源文档修改OSSWriter配置。
"fieldDelimiterOrigin": ",",
"nullFormat": "null", //定义null值的字符串标识符方式,可以是空字符串。
"dateFormat": "yyyy-MM-dd HH:mm:ss", //时间格式。
"datasource": "osssource", //OSS数据源名称,请根据实际填写。
"envType": 1,
"writeSingleObject": true, //是否写单个文件。设置此参数为true,表示写单个文件,当读不到任何数据时不会产生空文件;设置此参数为false,表示写多个文件,当读不到任何数据时,如果配置文件头会输出空文件只包含文件头,否则只输出空文件。
"column": [ //导出到OSS的列,只需要用序号表示即可,无需修改。
"0",
"1",
"2",
"3",
"4",
"5",
"6"
],
"writeMode": "truncate", //当同名文件存在时系统进行的操作,可选值包括truncate、append和nonConflict。truncate表示会清理已存在的同名文件,append表示会增加到已存在的同名文件内容后面,nonConflict表示当同名文件存在时会报错。
"encoding": "UTF-8", //编码类型。
"fieldDelimiter": ",", //每一列的分隔符。
"fileFormat": "csv", //文件类型,可选值包括csv和text格式。
"object": "" //备份到OSS的文件名前缀,建议使用"Tablestore实例名/表名/date",例如"instance/table/{date}"。
},
"name": "Writer",
"category": "writer"
},
{
"copies": 1,
"parameter": {
"nodes": [],
"edges": [],
"groups": [],
"version": "2.0"
},
"name": "Processor",
"category": "processor"
}
],
"setting": {
"errorLimit": {
"record": "0" //允许出错的个数。当错误超过这个数目的时候同步任务会失败。
},
"locale": "zh",
"speed": {
"throttle": false, //当throttle值为false时,mbps参数不生效,表示不限流;当throttle值为true时,需要配置mbps参数,表示限流。
"concurrent": 3 //作业并发数。
}
},
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
}
}