Topik ini menjelaskan cara mengambil data dalam indeks Lastpoint menggunakan Tablestore SDK for Java.
Catatan penggunaan
Fitur indeks Lastpoint didukung oleh Tablestore SDK for Java V5.17.1 atau yang lebih baru. Untuk menggunakan fitur ini, Anda harus meningkatkan Tablestore SDK for Java ke versi V5.17.1 atau yang lebih baru.
Untuk informasi tentang cara mengunduh versi terbaru Tablestore SDK for Java, lihat Riwayat Versi Tablestore SDK for Java.
Prasyarat
Indeks Lastpoint telah dibuat untuk tabel deret waktu. Untuk informasi lebih lanjut, lihat Buat Indeks Lastpoint.
Kode contoh
Berikut adalah contoh kode yang menunjukkan cara memanggil operasi GetRange untuk membaca semua data dari indeks Lastpoint:
private static void getRange(SyncClient client) {
// Tentukan nama indeks Lastpoint.
RangeRowQueryCriteria rangeRowQueryCriteria = new RangeRowQueryCriteria("<LASTPOINT_INDEX_NAME>");
// Buat kunci utama awal dan akhir. Atur nilai awal menjadi INF_MIN dan atur nilai akhir menjadi INF_MAX untuk setiap kolom kunci utama.
PrimaryKey startPrimaryKey = PrimaryKeyBuilder.createPrimaryKeyBuilder()
.addPrimaryKeyColumn("_#h", PrimaryKeyValue.INF_MIN)
.addPrimaryKeyColumn("_m_name", PrimaryKeyValue.INF_MIN)
.addPrimaryKeyColumn("_data_source", PrimaryKeyValue.INF_MIN)
.addPrimaryKeyColumn("_tags", PrimaryKeyValue.INF_MIN)
.build();
rangeRowQueryCriteria.setInclusiveStartPrimaryKey(startPrimaryKey);
PrimaryKey endPrimaryKey = PrimaryKeyBuilder.createPrimaryKeyBuilder()
.addPrimaryKeyColumn("_#h", PrimaryKeyValue.INF_MAX)
.addPrimaryKeyColumn("_m_name", PrimaryKeyValue.INF_MAX)
.addPrimaryKeyColumn("_data_source", PrimaryKeyValue.INF_MAX)
.addPrimaryKeyColumn("_tags", PrimaryKeyValue.INF_MAX)
.build();
rangeRowQueryCriteria.setExclusiveEndPrimaryKey(endPrimaryKey);
//Atur jumlah maksimum versi menjadi 1. Tabel deret waktu tidak mendukung fitur versi maksimum.
rangeRowQueryCriteria.setMaxVersions(1);
System.out.println("Hasil pemindaian:");
while (true) {
GetRangeResponse getRangeResponse = client.getRange(new GetRangeRequest(rangeRowQueryCriteria));
for (Row row : getRangeResponse.getRows()) {
System.out.println(row);
}
// Jika nextStartPrimaryKey tidak null, lanjutkan membaca data.
if (getRangeResponse.getNextStartPrimaryKey() != null) {
rangeRowQueryCriteria.setInclusiveStartPrimaryKey(getRangeResponse.getNextStartPrimaryKey());
} else {
break;
}
}
}Referensi
Untuk informasi tentang cara membaca data menggunakan Tablestore SDK for Java, lihat Baca Data.
Jika Anda ingin mengambil data dalam indeks Lastpoint menggunakan berbagai metode query secara dipercepat, seperti query Boolean, pencarian teks lengkap, query awalan, dan query kabur, Anda dapat membuat indeks pencarian untuk indeks Lastpoint dan menggunakan indeks pencarian tersebut untuk mengambil data. Untuk informasi lebih lanjut, lihat Ambil Indeks Lastpoint.