All Products
Search
Document Center

Tablestore:Kueri istilah

Last Updated:Sep 30, 2026

Kueri istilah mirip dengan kueri tepat dan mendukung beberapa kata kunci. Satu baris data dikembalikan jika nilai kolom sesuai dengan setidaknya salah satu kata kunci tersebut. Kueri istilah dapat digunakan seperti operator IN dalam pernyataan SQL.

Operasi API

Anda dapat memanggil operasi Search atau ParallelScan dan mengatur jenis kueri ke TermsQuery untuk melakukan kueri istilah.

Parameter

Parameter

Deskripsi

query

Jenis kueri. Atur parameter query ke TermsQuery.

fieldName

Nama bidang yang ingin Anda cocokkan.

terms

Istilah pencarian yang ingin dicocokkan. Anda dapat menentukan hingga 1.024 istilah.

Satu baris data dikembalikan ketika nilai kolom sesuai dengan setidaknya salah satu kata kunci tersebut.

getTotalCount

Menentukan apakah jumlah total baris yang memenuhi kondisi kueri akan dikembalikan. Nilai default parameter ini adalah false, yang berarti jumlah total baris yang memenuhi kondisi kueri tidak dikembalikan.

Jika Anda mengatur parameter ini ke true, performa kueri akan menurun.

weight

Bobot yang ingin Anda tetapkan pada bidang yang ingin Anda kueri untuk menghitung skor relevansi kata kunci berbasis BM25. Parameter ini digunakan dalam skenario pencarian teks lengkap. Jika Anda menetapkan bobot lebih tinggi untuk bidang yang ingin Anda kueri, skor relevansi kata kunci berbasis BM25 untuk bidang tersebut akan lebih tinggi. Nilai parameter ini adalah bilangan floating point positif.

Parameter ini tidak memengaruhi jumlah baris yang dikembalikan. Namun, parameter ini memengaruhi skor relevansi kata kunci berbasis BM25 dari hasil kueri.

tableName

Nama tabel data.

indexName

Nama indeks pencarian.

columnsToGet

Menentukan apakah semua kolom dari setiap baris yang memenuhi kondisi kueri akan dikembalikan. Anda dapat menentukan field returnAll dan columns untuk parameter ini.

Nilai default field returnAll adalah false, yang berarti tidak semua kolom dikembalikan. Dalam kasus ini, Anda dapat menggunakan field columns untuk menentukan kolom yang ingin dikembalikan. Jika Anda tidak menentukan kolom yang ingin dikembalikan, hanya kolom kunci primer yang dikembalikan.

Jika Anda mengatur field returnAll ke true, semua kolom dikembalikan.

Metode

Anda dapat menggunakan Konsol Tablestore, CLI Tablestore, atau SDK Tablestore untuk melakukan kueri istilah. Sebelum melakukan kueri istilah, pastikan persiapan berikut telah dilakukan:

Gunakan Konsol Tablestore

  1. Buka tab Index Management.

    1. Masuk ke Konsol Table Store.

    2. Pada bilah navigasi atas, pilih kelompok sumber daya dan wilayah.

    3. Pada halaman Overview, klik nama instans atau klik Instance Management di kolom Actions.

    4. Pada tab Instance Details, di tab Data Table List, klik nama tabel data atau klik Index Management di kolom Actions.

  2. Pada tab Index Management, temukan Search Index yang dituju dan klik Search di kolom Actions.

  3. Pada kotak dialog Search, tentukan kondisi kueri.

    1. Secara default, semua kolom dikembalikan. Untuk mengembalikan kolom tertentu, matikan Retrieve All Columns dan masukkan nama kolom, dipisahkan dengan koma.

      Catatan

      Secara default, Table Store mengembalikan kolom kunci primer dari tabel data.

    2. Pilih operator logika: And, Or, atau Not.

      Jika Anda memilih And, kueri mengembalikan data yang memenuhi semua kondisi yang ditentukan. Jika Anda memilih Or, kueri mengembalikan data yang memenuhi setidaknya salah satu kondisi yang ditentukan. Jika Anda memilih Not, kueri mengembalikan data yang tidak memenuhi kondisi yang ditentukan.

    3. Pilih bidang indeks dan klik Add.

    4. Atur jenis kueri bidang indeks ke Terms query (TermsQuery), masukkan nilai, lalu klik Add.

      Untuk menambahkan beberapa nilai, ulangi proses memasukkan Value dan mengklik Add.

    5. Secara default, pengurutan dinonaktifkan. Untuk mengurutkan hasil berdasarkan bidang tertentu, aktifkan Enable Sorting, tambahkan bidang pengurutan, dan konfigurasi urutan pengurutan.

    6. Secara default, agregasi dinonaktifkan. Untuk melakukan agregasi statistik pada bidang tertentu, aktifkan Enable Aggregation, tambahkan bidang untuk agregasi, dan konfigurasi pengaturan agregasi.

  4. Klik OK.

    Hasil kueri ditampilkan pada tab Index Management.

Gunakan CLI Tablestore

Anda dapat menjalankan perintah search di CLI Tablestore untuk mengkueri data menggunakan indeks pencarian. Untuk informasi selengkapnya, lihat Indeks pencarian.

  1. Jalankan perintah search untuk menggunakan indeks pencarian search_index guna mengkueri data dan mengembalikan semua kolom terindeks dari setiap baris yang memenuhi kondisi kueri.

    search -n search_index --return_all_indexed
  2. Masukkan kondisi kueri sebagaimana diminta oleh sistem:

    {
        "Offset": -1,
        "Limit": 10,
        "Collapse": null,
        "Sort": null,
        "GetTotalCount": true,
        "Token": null,
        "Query": {
            "Name": "TermsQuery",
            "Query": {
                "FieldName": "col_keyword",
                "Terms": ["hangzhou", "xi'an"]
            }
        }
    }

Gunakan SDK Tablestore

Anda dapat melakukan kueri istilah dengan menggunakan SDK Tablestore berikut: SDK Tablestore untuk Java, SDK Tablestore untuk Go, SDK Tablestore untuk Python, SDK Tablestore untuk Node.js, SDK Tablestore untuk .NET, dan SDK Tablestore untuk PHP. Pada contoh ini, digunakan SDK Tablestore untuk Java.

Contoh berikut mengkueri baris yang nilai bidang category-nya sama persis dengan books atau games dan mengembalikan maksimal 10 baris serta jumlah total baris yang sesuai.

String tableName = "example_table";
String indexName = "example_index";

TermsQuery termsQuery = new TermsQuery();
termsQuery.setFieldName("category");
termsQuery.addTerm(ColumnValue.fromString("books"));
termsQuery.addTerm(ColumnValue.fromString("games"));

SearchQuery searchQuery = new SearchQuery();
searchQuery.setQuery(termsQuery);
searchQuery.setLimit(10);
searchQuery.setTrackTotalCount(SearchQuery.TRACK_TOTAL_COUNT);

SearchRequest request = new SearchRequest(tableName, indexName, searchQuery);
SearchRequest.ColumnsToGet columnsToGet = new SearchRequest.ColumnsToGet();
columnsToGet.setReturnAll(true);
request.setColumnsToGet(columnsToGet);

SearchResponse response = client.search(request);
System.out.println(response.getTotalCount());
System.out.println(response.getRows());

Penagihan

Mengkueri data menggunakan Indeks Pencarian mengonsumsi throughput baca. Untuk informasi selengkapnya, lihat Metering dan penagihan Indeks Pencarian.

FAQ

Referensi