按照行模式匯出增量變化後的資料
{
"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值的字串標識符方式,可以是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值的字串標識符方式,可以是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"
}
]
}
}