Gunakan Tablestore SDK for Java untuk memperbarui atribut beberapa entri metadata deret waktu dan mendapatkan informasi error untuk entri yang gagal.
Prasyarat
-
Instal Tablestore SDK for Java dan inisialisasi client deret waktu.
-
Tabel deret waktu harus mengizinkan pembaruan atribut metadata. Jika tidak diizinkan, modifikasi konfigurasi tabel deret waktu dan atur
allowUpdateAttributesketrue.
Deskripsi
Panggil updateTimeseriesMeta untuk memperbarui atribut beberapa entri metadata deret waktu. Jika metadata yang ditentukan belum ada, server akan menambahkannya.
public UpdateTimeseriesMetaResponse updateTimeseriesMeta(UpdateTimeseriesMetaRequest request) throws TableStoreException, ClientException
Indeks metadata deret waktu diperbarui secara asinkron. Setelah mengirimkan pembaruan, tunggu hingga indeks selesai diperbarui sebelum melakukan kueri terhadap atribut terbaru.
Contoh berikut memperbarui atribut status dari deret waktu yang ditentukan dalam example_timeseries_table menjadi online, serta memeriksa entri yang gagal.
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());
}
Parameter
UpdateTimeseriesMetaRequest berisi parameter berikut.
|
Nama |
Tipe |
Deskripsi |
|
timeseriesTableName (wajib) |
|
Nama tabel deret waktu. |
|
metas (wajib) |
|
Daftar entri metadata deret waktu yang tidak kosong untuk diperbarui. Anda dapat memperbarui beberapa entri dalam satu permintaan. |
Metadata deret waktu
Setiap elemen dalam metas[] bertipe TimeseriesMeta dan berisi parameter berikut.
|
Nama |
Tipe |
Deskripsi |
|
timeseriesKey (wajib) |
|
Identifikasi deret waktu yang metadata-nya ingin Anda perbarui. |
|
attributes (opsional) |
|
Atribut metadata yang akan diatur sebagai pasangan kunci-nilai string. Jika parameter ini tidak ditentukan atau diatur ke map kosong, Tablestore SDK for Java tidak mengirimkan konten atribut. |
updateTimeInUs dihasilkan oleh server dan dikembalikan saat Anda melakukan kueri metadata deret waktu. Jangan atur bidang ini dalam permintaan pembaruan; jika tidak, Tablestore SDK for Java akan menolak permintaan tersebut.
Identifikasi deret waktu
metas[].timeseriesKey bertipe TimeseriesKey dan berisi parameter berikut.
|
Nama |
Tipe |
Deskripsi |
|
measurementName (wajib) |
|
Nama ukuran. Tablestore SDK for Java versi 5.17.2 dan yang lebih baru mengizinkan parameter ini kosong. |
|
dataSource (opsional) |
|
Identifikasi sumber data, yang boleh kosong. |
|
tags (opsional) |
|
Tag dalam bentuk pasangan kunci-nilai string. Jika parameter ini tidak ditentukan, digunakan map kosong. |
Respons
UpdateTimeseriesMetaResponse berisi bidang spesifik operasi berikut.
|
Bidang |
Type |
Deskripsi |
|
|
|
Panggil |
Informasi entri yang gagal
Setiap elemen dalam failedRows[] bertipe UpdateTimeseriesMetaResponse.FailedRowResult dan berisi bidang berikut.
|
Bidang |
Tipe |
Deskripsi |
|
|
|
Panggil |
|
|
|
Panggil |