全部产品
Search
文档中心

Tablestore:Baca data luring

更新时间:Jul 02, 2025

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.

  • Parameter inclusiveStartPrimaryKey menentukan kunci utama awal. Jika baris yang mengandung kunci utama awal ada, baris data tersebut akan dikembalikan.

  • Parameter exclusiveEndPrimaryKey menentukan kunci utama akhir. Terlepas dari apakah baris yang mengandung kunci utama akhir ada, baris data tersebut tidak akan dikembalikan.

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.

  • Jika Anda tidak menentukan kolom, semua data dalam baris akan dikembalikan.

  • Jika Anda menentukan kolom tetapi baris tidak mengandung kolom yang ditentukan, nilai pengembalian adalah null. Jika baris mengandung beberapa dari kolom yang ditentukan, data dalam beberapa dari kolom yang ditentukan dari baris tersebut akan dikembalikan.

Catatan
  • Secara default, Tablestore mengembalikan data dari semua kolom baris ketika Anda meminta baris tersebut. Anda dapat mengonfigurasi parameter columnsToGet untuk mengembalikan kolom tertentu. Sebagai contoh, jika col0 dan col1 ditentukan untuk parameter columnsToGet, hanya nilai kolom col0 dan col1 yang akan dikembalikan.

  • Jika baris berada dalam rentang yang ditentukan berdasarkan nilai kunci utama tetapi tidak mengandung kolom yang ditentukan yang ingin Anda kembalikan, respons tidak menyertakan baris tersebut.

  • Jika Anda mengonfigurasi parameter columnsToGet dan filter, Tablestore meminta kolom yang ditentukan oleh parameter columnsToGet, dan kemudian mengembalikan baris yang memenuhi kondisi filter.

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.

    Catatan

    Anda 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.