Anda dapat menggunakan kueri awalan untuk menanyakan data dalam indeks dengan menentukan awalan tertentu.
Deskripsi
Kueri awalan digunakan untuk menanyakan data yang dimulai dengan string tertentu. Saat menjalankan kueri ini, Anda harus menentukan awalan.
Kueri awalan mendukung tipe data Keyword, FuzzyKeyword, dan Text.
Keyword: Tipe data String dasar. Performa kueri fuzzy seperti kueri awalan pada volume data sedang atau besar cenderung buruk karena performa menurun seiring bertambahnya ukuran data.
FuzzyKeyword: Tipe data yang dioptimalkan untuk kueri fuzzy seperti kueri awalan. Performanya tinggi dan stabil untuk berbagai ukuran data, tanpa penurunan signifikan seiring pertumbuhan data.
Text: Jika kolom yang digunakan untuk kondisi awalan adalah tipe Text, kolom tersebut akan di-tokenisasi. Baris memenuhi kondisi kueri jika setidaknya satu token mengandung awalan yang ditentukan. Karena ketidakpastian tokenisasi, kueri awalan jarang digunakan untuk tipe data Text. Tipe ini hanya didukung untuk kompatibilitas dan harus digunakan dengan hati-hati.
Operasi API
Anda dapat memanggil operasi Search atau ParallelScan, serta mengatur jenis kueri ke PrefixQuery, untuk menjalankan kueri awalan.
Parameter
Parameter | Deskripsi |
kueri | Jenis kueri. Atur parameter kueri ke PrefixQuery. |
fieldName | Nama kolom yang ingin Anda tanyakan. |
awalan | Awalan. Jika kolom yang digunakan untuk mencocokkan kondisi awalan adalah kolom Text, kolom tersebut akan di-tokenisasi. Sebuah baris memenuhi kondisi kueri ketika setidaknya satu token mengandung awalan yang ditentukan. |
getTotalCount | Menentukan apakah akan mengembalikan jumlah total baris yang memenuhi kondisi kueri. Nilai default: false. Jika Anda mengatur parameter ini ke true, performa kueri akan terpengaruh. |
bobot | Bobot yang ingin Anda tetapkan pada kolom yang ingin Anda tanyakan untuk menghitung skor relevansi kata kunci berbasis BM25. Parameter ini digunakan dalam skenario pencarian teks lengkap. Bobot yang lebih tinggi menghasilkan skor relevansi kata kunci berbasis BM25 yang lebih tinggi untuk kolom tersebut. Nilai parameter ini adalah bilangan titik mengambang 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 akan mengembalikan semua kolom dari setiap baris yang memenuhi kondisi kueri. Anda dapat mengonfigurasi parameter returnAll dan columns untuk parameter ini. Nilai default dari parameter returnAll adalah false, yang menentukan bahwa tidak semua kolom dikembalikan. Dalam hal ini, Anda dapat menggunakan parameter columns untuk menentukan kolom yang ingin Anda kembalikan. Jika Anda tidak menentukan kolom yang ingin Anda kembalikan, hanya kolom kunci utama yang dikembalikan. Jika Anda mengatur parameter returnAll ke true, semua kolom dikembalikan. |
Metode
Anda dapat menggunakan konsol Tablestore, CLI Tablestore, atau SDK Tablestore untuk menjalankan kueri awalan. Pastikan persiapan berikut telah dilakukan:
Hanya SDK Tablestore yang mendukung kueri awalan pada data tipe FuzzyKeyword.
Anda memiliki akun Alibaba Cloud atau pengguna RAM dengan izin untuk melakukan operasi pada Tablestore. Untuk informasi lebih lanjut tentang cara memberikan izin kepada pengguna RAM, lihat Gunakan kebijakan RAM untuk memberikan izin kepada pengguna RAM.
Jika Anda ingin menggunakan SDK Tablestore atau CLI Tablestore, pastikan pasangan AccessKey telah dibuat untuk akun Alibaba Cloud atau pengguna RAM Anda. Untuk informasi lebih lanjut, lihat Buat pasangan AccessKey.
Tabel data telah dibuat. Untuk informasi lebih lanjut, lihat Operasi pada tabel.
Indeks pencarian telah dibuat untuk tabel data. Untuk informasi lebih lanjut, lihat Buat indeks pencarian.
Jika Anda ingin menggunakan SDK Tablestore, instance OTSClient telah diinisialisasi. Untuk informasi lebih lanjut, lihat Inisialisasi klien Tablestore.
Jika Anda ingin menggunakan CLI Tablestore, unduh dan konfigurasikan CLI Tablestore, termasuk informasi akses untuk instance dan tabel data. Untuk informasi lebih lanjut, lihat Unduh CLI Tablestore, Mulai CLI Tablestore dan konfigurasikan informasi akses, dan Operasi pada tabel data.
Aturan penagihan
Saat menggunakan indeks pencarian untuk menanyakan data, Anda dikenakan biaya untuk throughput baca yang dikonsumsi. Untuk informasi lebih lanjut, lihat Item yang dapat ditagih dari indeks pencarian.
FAQ
Referensi
Saat menggunakan indeks pencarian untuk menanyakan data, Anda dapat menggunakan metode kueri berikut: kueri tepat, kueri terms, kueri match all, kueri match, kueri match phrase, kueri awalan, kueri rentang, kueri wildcard, kueri fuzzy, kueri Boolean, kueri geo, kueri nested, kueri vektor KNN, dan kueri exists. Pilih metode kueri berdasarkan kebutuhan bisnis Anda untuk menanyakan data dari berbagai dimensi.
Anda dapat mengurutkan atau membagi halaman baris yang memenuhi kondisi kueri menggunakan fitur pengurutan dan paging. Untuk informasi lebih lanjut, lihat Lakukan pengurutan dan paging.
Anda dapat menggunakan fiturcollapse (distinct) untuk merangkum set hasil berdasarkan kolom tertentu. Dengan cara ini, data dari tipe yang ditentukan hanya muncul sekali dalam hasil kueri. Untuk informasi lebih lanjut, lihat Collapse (distinct).
Jika Anda ingin menganalisis data dalam tabel, Anda dapat menggunakan fitur agregasi dari operasi Search atau menjalankan pernyataan SQL. Sebagai contoh, Anda bisa mendapatkan nilai minimum dan maksimum, jumlah total, serta jumlah baris keseluruhan. Untuk informasi lebih lanjut, lihat Agregasi dan Kueri SQL.
Jika Anda ingin mendapatkan semua baris yang memenuhi kondisi kueri tanpa perlu mengurutkan baris tersebut, Anda dapat memanggil operasi ParallelScan dan ComputeSplits untuk menggunakan fitur pemindaian paralel. Untuk informasi lebih lanjut, lihat Pemindaian Paralel.