Anda dapat melakukan operasi baca batch pada data luring dalam tabel data di skenario data besar. Setelah data ditulis ke tabel data, Anda dapat membaca data berdasarkan kondisi tertentu.
Prasyarat
Klien telah diinisialisasi. Untuk informasi lebih lanjut, lihat Inisialisasi Klien Tablestore.
Tabel data telah dibuat, dan data telah ditulis ke tabel data.
Parameter
Parameter | Deskripsi |
tableName | Nama tabel data. |
inclusiveStartPrimaryKey | Kunci utama awal dan akhir untuk operasi baca batch. Kunci utama awal dan akhir harus berupa kunci utama yang valid atau titik virtual yang terdiri dari nilai tipe INF_MIN dan nilai tipe INF_MAX. Jumlah kolom dalam titik virtual harus sama dengan jumlah kolom dalam kunci utama. INF_MIN menentukan nilai yang sangat kecil. Semua nilai tipe lainnya lebih besar daripada nilai tipe INF_MIN. INF_MAX menentukan nilai yang sangat besar. Semua nilai tipe lainnya lebih kecil daripada nilai tipe INF_MAX.
Baris dalam tabel data diurutkan secara ascending berdasarkan nilai kunci utama. Rentang yang digunakan untuk membaca data adalah interval tertutup-kiri, terbuka-kanan. Jika data dibaca dalam arah maju, baris yang memiliki nilai kunci utama lebih besar dari atau sama dengan nilai kunci utama awal tetapi kurang dari nilai kunci utama akhir akan dikembalikan. |
exclusiveEndPrimaryKey | |
columnsToGet | Kolom yang ingin Anda kembalikan. Anda dapat menentukan nama kolom kunci utama atau kolom atribut.
Catatan
|
filter | Filter yang ingin Anda gunakan untuk menyaring hasil query di sisi server. Hanya baris yang memenuhi kondisi filter yang akan dikembalikan. Untuk informasi lebih lanjut, lihat Konfigurasikan filter. Catatan Jika Anda mengonfigurasi parameter columnsToGet dan filter, Tablestore meminta kolom yang ditentukan oleh parameter columnsToGet, dan kemudian mengembalikan baris yang memenuhi kondisi filter. |
dataBlockType | Tipe format data yang dikembalikan untuk permintaan baca ini. Nilai yang valid: PlainBuffer dan SimpleRowMatrix. |
Contoh
Kode sampel berikut menunjukkan cara melakukan operasi baca batch pada data yang nilai kunci utamanya berada dalam rentang tertentu:
private static void bulkExport(SyncClient client, String start, String end){
// Tentukan kunci utama awal.
PrimaryKeyBuilder startPrimaryKeyBuilder = PrimaryKeyBuilder.createPrimaryKeyBuilder();
startPrimaryKeyBuilder.addPrimaryKeyColumn("pk", PrimaryKeyValue.fromString(String.valueOf(start)));
PrimaryKey startPrimaryKey = startPrimaryKeyBuilder.build();
// Tentukan kunci utama akhir.
PrimaryKeyBuilder endPrimaryKeyBuilder = PrimaryKeyBuilder.createPrimaryKeyBuilder();
endPrimaryKeyBuilder.addPrimaryKeyColumn("pk", PrimaryKeyValue.fromString(String.valueOf(end)));
PrimaryKey endPrimaryKey = endPrimaryKeyBuilder.build();
// Buat bulkExportRequest.
BulkExportRequest bulkExportRequest = new BulkExportRequest();
// Buat bulkExportQueryCriteria.
BulkExportQueryCriteria bulkExportQueryCriteria = new BulkExportQueryCriteria("<TABLE_NAME>");
bulkExportQueryCriteria.setInclusiveStartPrimaryKey(startPrimaryKey);
bulkExportQueryCriteria.setExclusiveEndPrimaryKey(endPrimaryKey);
// Gunakan metode encoding DBT_PLAIN_BUFFER.
bulkExportQueryCriteria.setDataBlockType(DataBlockType.DBT_PLAIN_BUFFER);
// Jika Anda ingin menggunakan metode encoding DBT_SIMPLE_ROW_MATRIX, gunakan kode berikut.
// bulkExportQueryCriteria.setDataBlockType(DataBlockType.DBT_SIMPLE_ROW_MATRIX);
bulkExportQueryCriteria.addColumnsToGet("pk");
bulkExportQueryCriteria.addColumnsToGet("DC1");
bulkExportQueryCriteria.addColumnsToGet("DC2");
bulkExportRequest.setBulkExportQueryCriteria(bulkExportQueryCriteria);
// Dapatkan bulkExportResponse.
BulkExportResponse bulkExportResponse = client.bulkExport(bulkExportRequest);
// Jika Anda mengatur DataBlockType ke DBT_SIMPLE_ROW_MATRIX, Anda perlu menggunakan kode berikut untuk mencetak hasilnya.
//{
// SimpleRowMatrixBlockParser parser = new SimpleRowMatrixBlockParser(bulkExportResponse.getRows());
// List<Row> rows = parser.getRows();
// for (int i = 0; i < rows.size(); i++){
// System.out.println(rows.get(i));
// }
//}
// Atur DataBlockType ke DBT_PLAIN_BUFFER dan cetak hasilnya.
{
PlainBufferBlockParser parser = new PlainBufferBlockParser(bulkExportResponse.getRows());
List<Row> rows = parser.getRows();
for (int i = 0; i < rows.size(); i++){
System.out.println(rows.get(i));
}
}
}Referensi
Jika Anda ingin menggunakan indeks untuk mempercepat kueri data, gunakan fitur indeks sekunder atau indeks pencarian. Untuk informasi lebih lanjut, lihat Indeks Sekunder atau Indeks Pencarian.
Untuk memvisualisasikan data dalam tabel, hubungkan tabel ke DataV atau Grafana. Untuk informasi lebih lanjut, lihat Visualisasi Data.
Untuk mengunduh data dari tabel ke file lokal, gunakan DataX atau CLI Tablestore. Untuk informasi lebih lanjut, lihat Unduh Data Tablestore ke File Lokal.
Untuk menghitung dan menganalisis data dalam tabel, gunakan fitur kueri SQL Tablestore. Untuk informasi lebih lanjut, lihat Kueri SQL.
CatatanAnda juga dapat menggunakan mesin komputasi seperti MaxCompute, Spark, Hive, HadoopMR, Function Compute, dan Flink untuk menghitung dan menganalisis data dalam tabel. Untuk informasi lebih lanjut, lihat Ikhtisar.