Gunakan Tablestore SDK for Java untuk menulis satu atau beberapa baris data deret waktu serta memperoleh informasi kesalahan untuk baris yang gagal.
Prasyarat
Instal Tablestore SDK for Java dan inisialisasi klien deret waktu.
Deskripsi
Panggil putTimeseriesData untuk menulis satu atau beberapa baris data ke tabel deret waktu. Setiap baris terdiri atas pengenal deret waktu, timestamp titik data, dan bidang data. Tanggapan berisi daftar baris yang gagal ditulis beserta informasi kesalahannya.
public PutTimeseriesDataResponse putTimeseriesData(PutTimeseriesDataRequest request) throws TableStoreException, ClientException
Contoh berikut menulis tiga titik data untuk deret waktu yang sama ke example_timeseries_table dan memeriksa hasil penulisan setiap baris.
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());
}
Parameter
PutTimeseriesDataRequest mencakup parameter berikut.
|
Name |
Type |
Description |
|
timeseriesTableName (required) |
|
Nama tabel deret waktu. |
|
rows (required) |
|
Baris-baris data deret waktu yang akan ditulis. |
|
metaUpdateMode (optional) |
|
Mode pembaruan metadata deret waktu. Nilai default: |
Baris data deret waktu
Setiap elemen dalam rows[] bertipe TimeseriesRow dan mencakup parameter berikut.
|
Name |
Type |
Description |
|
timeseriesKey (required) |
|
Pengenal deret waktu. |
|
timeInUs (required) |
|
Timestamp titik data dalam mikrodetik sejak 1970-01-01 00:00:00 UTC. Nilainya harus lebih besar dari atau sama dengan |
|
fields (required) |
|
Bidang data, yang terdiri dari satu atau beberapa nama bidang dan nilai bidang. |
Pengenal deret waktu
rows[].timeseriesKey bertipe TimeseriesKey dan mencakup parameter berikut.
|
Name |
Type |
Description |
|
measurementName (required) |
|
Nama ukuran. Tablestore SDK for Java versi 5.17.2 atau yang lebih baru memungkinkan parameter ini dikosongkan. |
|
dataSource (optional) |
|
Pengenal sumber data. Parameter ini boleh dikosongkan. |
|
tags (optional) |
|
Tag dalam bentuk pasangan kunci-nilai string. Jika parameter ini tidak ditentukan, digunakan map kosong. |
Tanggapan
PutTimeseriesDataResponse mencakup bidang spesifik operasi berikut.
|
Field |
Type |
Description |
|
|
|
Panggil |
Informasi baris yang gagal
Setiap elemen dalam failedRows[] bertipe PutTimeseriesDataResponse.FailedRowResult dan mencakup bidang berikut.
|
Field |
Type |
Description |
|
|
|
Panggil |
|
|
|
Panggil |