使用 Java SDK 大量刪除時間軸中繼資料,並擷取刪除失敗行的錯誤資訊。刪除中繼資料不會刪除對應的時序資料。
前提條件
安裝Tablestore Java SDK並初始化時序模型用戶端。
功能說明
調用 deleteTimeseriesMeta 方法按完整的時間軸標識大量刪除時間軸中繼資料。該操作只刪除中繼資料索引中的記錄,不刪除時間軸中已寫入的資料。
public DeleteTimeseriesMetaResponse deleteTimeseriesMeta(DeleteTimeseriesMetaRequest request) throws TableStoreException, ClientException
以下樣本刪除 example_timeseries_table 中指定時間軸的中繼資料,並檢查失敗行。
Map<String, String> tags = new HashMap<>();
tags.put("region", "cn-hangzhou");
tags.put("host", "host_0");
TimeseriesKey timeseriesKey =
new TimeseriesKey("cpu", "source_0", tags);
DeleteTimeseriesMetaRequest request =
new DeleteTimeseriesMetaRequest("example_timeseries_table");
request.setTimeseriesKeys(Collections.singletonList(timeseriesKey));
DeleteTimeseriesMetaResponse response =
timeseriesClient.deleteTimeseriesMeta(request);
for (DeleteTimeseriesMetaResponse.FailedRowResult result : response.getFailedRows()) {
System.out.println(result.getIndex());
System.out.println(result.getError());
}
參數說明
DeleteTimeseriesMetaRequest 包含以下參數。
|
名稱 |
類型 |
說明 |
|
timeseriesTableName(必選) |
|
時序表名稱。 |
|
timeseriesKeys(必選) |
|
要刪除中繼資料的時間軸識別欄位表,不可為空。可以在一次請求中刪除多條中繼資料。 |
時間軸標識
timeseriesKeys[] 中每個元素的類型為 TimeseriesKey,包含以下參數。
|
名稱 |
類型 |
說明 |
|
measurementName(必選) |
|
度量名稱。Java SDK 5.17.2 及以上版本支援將其設定為空白。 |
|
dataSource(可選) |
|
資料來源標識,可以為空白。 |
|
tags(可選) |
|
標籤資訊,由字串類型的索引值對組成。未設定時使用空映射。完整時間軸標識必須與目標中繼資料一致。 |
傳回值
DeleteTimeseriesMetaResponse 包含以下業務返回欄位。
|
欄位 |
類型 |
說明 |
|
|
|
通過 |
失敗行資訊
failedRows[] 中每個元素的類型為 DeleteTimeseriesMetaResponse.FailedRowResult,包含以下欄位。
|
欄位 |
類型 |
說明 |
|
|
|
通過 |
|
|
|
通過 |