如果要Table Store資料表中的資料投遞到OSS Bucket中儲存,您可以使用CreateDeliveryTask介面建立一個投遞任務。
請確認已安裝支援資料湖投遞功能的Table StoreGo SDK。
前提條件
參數
參數 | 說明 |
TableName | 資料表名稱。 |
TaskName | 投遞任務名稱。 名稱只能包含英文小寫字母(a~z)、數字和虛線(-),開頭和結尾必須為英文小寫字母或數字,且長度為3~16字元。 |
TaskConfig | 投遞任務配置,包括如下選項:
|
TaskType | 投遞任務的類型,包括如下選項:
|
樣本
以下樣本用於為資料表建立投遞任務。
func CreateTaskSample(client *tablestore.TableStoreClient) {
createTask := &tablestore.CreateDeliveryTaskRequest{
TableName: "<TABLE_NAME>",
TaskName: "<TASK_NAME>",
TaskType: tablestore.BaseIncTask,
TaskConfig: &tablestore.OSSTaskConfig{
OssPrefix: "sample/year=$yyyy/month=$MM",
OssBucket: "datadeliverytest",
OssEndpoint: "oss-cn-hangzhou.aliyuncs.com",
OssRoleName: "acs:ram::17************45:role/aliyunserviceroleforotsdatadelivery",
Schema: []*tablestore.TaskSchema{
{
ColumnName: "PK1",
OssColumnName: "PK1",
Type: tablestore.ParquetInt64,
},
{
ColumnName: "PK2",
OssColumnName: "PK2",
Type: tablestore.ParquetUtf8,
},
{
ColumnName: "Col1",
OssColumnName: "Col1",
Type: tablestore.ParquetDouble,
},
},
},
}
createResp, err := client.CreateDeliveryTask(createTask)
if err != nil {
log.Fatal("create delivery task failed ", err)
}
fmt.Println("create delivery task success ", createResp.RequestId)
}