Java SDK 可查詢指定投遞任務的 OSS 投遞配置、任務類型和同步狀態。
前提條件
安裝Tablestore Java SDK並初始化用戶端。資料湖投遞功能需要 5.10.3 及以上版本,建議使用最新版本。
功能說明
調用 describeDeliveryTask 方法查詢指定投遞任務的配置和運行狀態。
public DescribeDeliveryTaskResponse describeDeliveryTask(DescribeDeliveryTaskRequest request)
throws TableStoreException, ClientException
以下樣本查詢 example_table 資料表中 example_task 投遞任務的資訊,並列印任務類型、OSS 目錄首碼和同步階段。client 為已初始化的用戶端。
String tableName = "example_table";
String taskName = "example_task";
DescribeDeliveryTaskRequest request =
new DescribeDeliveryTaskRequest(tableName, taskName);
DescribeDeliveryTaskResponse response = client.describeDeliveryTask(request);
System.out.println("taskType: " + response.getTaskType());
System.out.println("ossPrefix: " + response.getTaskConfig().getOssPrefix());
System.out.println("taskSyncPhase: "
+ response.getTaskSyncStat().getTaskSyncPhase());
參數說明
request 的類型為 DescribeDeliveryTaskRequest,包含以下參數。
|
名稱 |
類型 |
說明 |
|
tableName(必選) |
String |
資料表名稱。 |
|
taskName(必選) |
String |
投遞任務名稱。 |
傳回值
返回 DescribeDeliveryTaskResponse,包含以下業務欄位。
|
名稱 |
類型 |
說明 |
|
taskConfig |
OSSTaskConfig |
OSS 投遞配置。 |
|
taskSyncStat |
TaskSyncStat |
投遞任務的同步狀態。 |
|
taskType |
DeliveryTaskType |
投遞任務類型。取值包括 |
OSS 投遞配置
taskConfig 的類型為 OSSTaskConfig,包含以下欄位。
|
名稱 |
類型 |
說明 |
|
ossPrefix |
String |
OSS Bucket 中的目錄首碼。 |
|
ossBucket |
String |
OSS Bucket 名稱。 |
|
ossEndpoint |
String |
OSS Bucket 所在地區的服務地址。 |
|
ossStsRole |
String |
服務關聯角色 |
|
parquetSchema |
List<ParquetSchema> |
投遞欄位列表。列表順序與 Parquet 檔案中的欄位順序一致。 |
|
eventTimeColumn |
EventColumn |
事件時間列。未設定事件時間列時,該欄位為空白。 |
|
format |
OSSFileFormat |
OSS 檔案格式。當前值為 |
|
timeFormatter |
TimeFormatter |
OSS 分區格式。當前值為 |
投遞欄位
taskConfig.parquetSchema[] 中每個元素的類型為 ParquetSchema,包含以下欄位。
|
名稱 |
類型 |
說明 |
|
columnName |
String |
Tablestore 資料表中的源欄位名稱。 |
|
ossColumnName |
String |
欄位投遞到 OSS 後的名稱。 |
|
type |
DataType |
欄位在 Parquet 檔案中的目標類型。 |
|
encode |
OSSFileEncoding |
Parquet 編碼方式。 |
|
typeExtend |
String |
Parquet 擴充類型。當前不支援,因此該欄位為空白。 |
事件時間列
taskConfig.eventTimeColumn 的類型為 EventColumn,包含以下欄位。
|
名稱 |
類型 |
說明 |
|
columnName |
String |
作為事件時間的源欄位名稱。 |
|
timeFormat |
EventTimeFormat |
事件時間格式。取值包括 |
同步狀態
taskSyncStat 的類型為 TaskSyncStat,包含以下欄位。
|
名稱 |
類型 |
說明 |
|
taskSyncPhase |
TaskSyncPhase |
同步階段。取值包括 |
|
currentSyncPoint |
Date |
當前同步時間點。 |
|
errorType |
DeliveryErrorType |
錯誤類型。取值包括 |
|
detail |
String |
同步狀態或錯誤的詳細資料。 |