全部產品
Search
文件中心

Tablestore:更新時間軸中繼資料

更新時間:Aug 04, 2026

使用 Java SDK 批次更新時間軸中繼資料的屬性,並擷取更新失敗行的錯誤資訊。

前提條件

  • 安裝Tablestore Java SDK並初始化時序模型用戶端。

  • 目標時序表允許更新時間軸中繼資料屬性。如果未允許,請先更新時序表配置,將 allowUpdateAttributes 設定為 true

功能說明

調用 updateTimeseriesMeta 方法批次更新時間軸中繼資料屬性。如果指定的時間軸中繼資料不存在,服務端會新增該中繼資料。

public UpdateTimeseriesMetaResponse updateTimeseriesMeta(UpdateTimeseriesMetaRequest request) throws TableStoreException, ClientException
說明

時間軸中繼資料索引非同步更新。提交更新後,需等待索引更新完成才能檢索到最新屬性。

以下樣本將 example_timeseries_table 中指定時間軸的 status 屬性更新為 online,並檢查失敗行。

Map<String, String> tags = new HashMap<>();
tags.put("region", "cn-hangzhou");
tags.put("host", "host_0");
TimeseriesKey timeseriesKey =
        new TimeseriesKey("cpu", "source_0", tags);

Map<String, String> attributes = new HashMap<>();
attributes.put("status", "online");
TimeseriesMeta meta = new TimeseriesMeta(timeseriesKey);
meta.setAttributes(attributes);

UpdateTimeseriesMetaRequest request =
        new UpdateTimeseriesMetaRequest("example_timeseries_table");
request.setMetas(Collections.singletonList(meta));
UpdateTimeseriesMetaResponse response =
        timeseriesClient.updateTimeseriesMeta(request);

for (UpdateTimeseriesMetaResponse.FailedRowResult result : response.getFailedRows()) {
    System.out.println(result.getIndex());
    System.out.println(result.getError());
}

參數說明

UpdateTimeseriesMetaRequest 包含以下參數。

名稱

類型

說明

timeseriesTableName(必選)

String

時序表名稱。

metas(必選)

List<TimeseriesMeta>

要更新的時間軸中繼資料列表,不可為空。可以在一次請求中更新多條中繼資料。

時間軸中繼資料

metas[] 中每個元素的類型為 TimeseriesMeta,包含以下參數。

名稱

類型

說明

timeseriesKey(必選)

TimeseriesKey

要更新的時間軸標識。

attributes(可選)

SortedMap<String, String>

要設定的中繼資料屬性,由字串類型的索引值對組成。未設定或設定為空白映射時,Java SDK 不發送屬性內容。

說明

updateTimeInUs 由服務端產生,是檢索時間軸中繼資料時的返回欄位。更新時間軸中繼資料時不要設定該欄位,否則 Java SDK 會拒絕請求。

時間軸標識

metas[].timeseriesKey 的類型為 TimeseriesKey,包含以下參數。

名稱

類型

說明

measurementName(必選)

String

度量名稱。Java SDK 5.17.2 及以上版本支援將其設定為空白。

dataSource(可選)

String

資料來源標識,可以為空白。

tags(可選)

SortedMap<String, String>

標籤資訊,由字串類型的索引值對組成。未設定時使用空映射。

傳回值

UpdateTimeseriesMetaResponse 包含以下業務返回欄位。

欄位

類型

說明

failedRows

List<UpdateTimeseriesMetaResponse.FailedRowResult>

通過 getFailedRows() 擷取更新失敗的中繼資料。全部更新成功時返回空列表,也可以通過 isAllSuccess() 判斷是否全部成功。

失敗行資訊

failedRows[] 中每個元素的類型為 UpdateTimeseriesMetaResponse.FailedRowResult,包含以下欄位。

欄位

類型

說明

index

int

通過 getIndex() 擷取失敗中繼資料在請求 metas 列表中的下標。

error

Error

通過 getError() 擷取失敗原因。