使用 Java SDK 批量寫入時序資料,並擷取寫入失敗行的錯誤資訊。
前提條件
安裝Tablestore Java SDK並初始化時序模型用戶端。
功能說明
調用 putTimeseriesData 方法向時序表寫入一行或多行時序資料。每行資料由時間軸標識、資料點時間和資料欄位組成;響應會返回寫入失敗的行及其錯誤資訊。
public PutTimeseriesDataResponse putTimeseriesData(PutTimeseriesDataRequest request) throws TableStoreException, ClientException以下樣本向 example_timeseries_table 寫入同一時間軸的 3 個資料點,並檢查各行的寫入結果。
TimeseriesClient timeseriesClient = client.asTimeseriesClient();
String tableName = "example_timeseries_table";
List<TimeseriesRow> rows = new ArrayList<>();
Map<String, String> tags = new HashMap<>();
tags.put("region", "cn-hangzhou");
tags.put("host", "host_0");
TimeseriesKey timeseriesKey = new TimeseriesKey("cpu", "source_0", tags);
long baseTimeInUs = System.currentTimeMillis() * 1000L;
for (int i = 0; i < 3; i++) {
TimeseriesRow row = new TimeseriesRow(timeseriesKey, baseTimeInUs + i * 1000L);
row.addField("cpu_usage", ColumnValue.fromDouble(10.0 + i));
row.addField("status", ColumnValue.fromString("ok"));
rows.add(row);
}
PutTimeseriesDataRequest request = new PutTimeseriesDataRequest(tableName);
request.setRows(rows);
PutTimeseriesDataResponse response = timeseriesClient.putTimeseriesData(request);
for (PutTimeseriesDataResponse.FailedRowResult result : response.getFailedRows()) {
System.out.println(result.getIndex());
System.out.println(result.getError());
}參數說明
PutTimeseriesDataRequest 包含以下參數。
名稱 | 類型 | 說明 |
timeseriesTableName(必選) |
| 時序表名稱。 |
rows(必選) |
| 要寫入的時序資料行列表。 |
metaUpdateMode(可選) |
| 時間軸中繼資料更新模式。預設值為 |
時序資料行
rows[] 中每個元素的類型為 TimeseriesRow,包含以下參數。
名稱 | 類型 | 說明 |
timeseriesKey(必選) |
| 時間軸標識。 |
timeInUs(必選) |
| 資料點時間,格式為從 1970-01-01 00:00:00 UTC 開始計算的微秒時間戳記,取值大於等於 |
fields(必選) |
| 資料欄位,由一個或多個欄位名稱和欄位值組成。 |
時間軸標識
rows[].timeseriesKey 的類型為 TimeseriesKey,包含以下參數。
名稱 | 類型 | 說明 |
measurementName(必選) |
| 度量名稱。Java SDK 5.17.2 及以上版本支援將其設定為空白。 |
dataSource(可選) |
| 資料來源標識,可以為空白。 |
tags(可選) |
| 標籤資訊,由字串類型的索引值對組成。未設定時使用空映射。 |
傳回值
PutTimeseriesDataResponse 包含以下業務返回欄位。
欄位 | 類型 | 說明 |
|
| 通過 |
失敗行資訊
failedRows[] 中每個元素的類型為 PutTimeseriesDataResponse.FailedRowResult,包含以下欄位。
欄位 | 類型 | 說明 |
|
| 通過 |
|
| 通過 |