Kueri wildcard (WildcardQuery) melakukan pencarian fuzzy, mirip dengan operator LIKE dalam database.
Untuk mengimplementasikan fungsionalitas NOT LIKE, gunakan WildcardQuery bersama parameter mustNotQueries dalam kueri boolean. Untuk informasi lebih lanjut, lihat Boolean query.
Ikhtisar
Kueri wildcard menggunakan karakter khusus untuk pencocokan pola, yang meningkatkan presisi dan efisiensi pencarian.
Saat menggunakan fitur WildcardQuery, Anda dapat menggunakan string kueri dengan karakter wildcard untuk mencocokkan data. Fitur ini mendukung tanda bintang (*) dan tanda tanya (?). Tanda bintang (*) merepresentasikan sekuens karakter apa pun, sedangkan tanda tanya (?) merepresentasikan satu karakter tunggal. String kueri dapat diawali dengan tanda bintang (*) atau tanda tanya (?). Sebagai contoh, kueri untuk table*e dapat mencocokkan tablestore.
WildcardQuery didukung untuk bidang dengan tipe data Keyword dan FuzzyKeyword.
-
Keyword: Tipe data string dasar. Performa kueri fuzzy, seperti kueri wildcard, pada bidangKeywordburuk untuk dataset besar dan semakin menurun seiring peningkatan volume data. -
FuzzyKeyword: Tipe data yang dioptimalkan untuk kueri fuzzy seperti kueri wildcard. Memberikan performa unggul dan stabil yang tidak menurun secara signifikan seiring peningkatan ukuran dataset.
Search Index menyediakan tiga jenis kueri wildcard untuk mendukung berbagai kebutuhan pencocokan fuzzy. Untuk informasi lebih lanjut, lihat tabel berikut.
Topik ini menjelaskan cara melakukan WildcardQuery pada bidang bertipe Keyword dan FuzzyKeyword. Untuk mempelajari implementasi kueri fuzzy pada bidang bertipe Text, lihat Wildcard query berbasis tokenisasi.
|
Tipe |
Metode kueri |
Keunggulan |
Kekurangan |
|
Keyword |
WildcardQuery |
Kompatibel dengan Elasticsearch. |
Performa kueri menurun seiring peningkatan jumlah data terindeks. |
|
FuzzyKeyword |
WildcardQuery |
Memberikan performa unggul dan stabil yang tidak menurun secara signifikan seiring peningkatan ukuran data. |
Menyebabkan ekspansi data tertentu. |
|
Text |
MatchPhraseQuery |
Mendukung pencocokan tanpa membedakan huruf besar/kecil. |
Menyebabkan ekspansi data tertentu. |
Catatan penggunaan
String kueri dalam WildcardQuery tidak boleh melebihi 32 karakter, baik untuk bidang Keyword maupun FuzzyKeyword.
API
Untuk melakukan kueri wildcard, panggil operasi Search atau parallel scan dan atur tipe kueri menjadi WildcardQuery.
Parameter
|
Parameter |
Deskripsi |
|
fieldName |
Nama kolom yang akan dikueri. |
|
value |
String yang berisi wildcard, yang tidak boleh melebihi 32 karakter. |
|
query |
Tipe kueri. Atur parameter ini ke |
|
getTotalCount |
Menentukan apakah jumlah total baris yang cocok dikembalikan. Nilai default adalah Mengembalikan jumlah total baris yang cocok dapat memengaruhi performa kueri. |
|
weight |
Bobot kueri, yaitu bilangan titik mengambang positif yang digunakan untuk pengurutan berbasis skor dalam pencarian teks lengkap. Bobot yang lebih tinggi memberikan skor lebih tinggi pada kolom dalam hasil kueri. Parameter ini memengaruhi skor hasil yang dikembalikan tetapi tidak memengaruhi jumlah hasil yang dikembalikan. |
|
tableName |
Nama tabel data. |
|
indexName |
Nama Search Index. |
|
columnsToGet |
Menentukan kolom mana yang dikembalikan. Termasuk pengaturan returnAll dan columns. Secara default, Jika Anda mengatur |
Cara menggunakan
Anda dapat melakukan kueri wildcard menggunakan Konsol Tablestore, alat baris perintah (CLI), atau SDK. Sebelum memulai, lakukan persiapan berikut:
Saat ini, WildcardQuery pada bidang FuzzyKeyword hanya didukung melalui SDK Tablestore.
Gunakan Akun Alibaba Cloud atau RAM user dengan izin yang diperlukan untuk operasi Table Store. Untuk memberikan izin kepada RAM user, lihat Berikan izin kepada RAM user menggunakan kebijakan RAM.
Jika Anda menggunakan SDK atau alat baris perintah, buat AccessKey untuk Akun Alibaba Cloud atau RAM user Anda jika belum memilikinya.
Anda telah membuat tabel data.
Search Index telah dibuat untuk tabel data tersebut.
Jika Anda menggunakan SDK, inisialisasi Tablestore Client.
Jika Anda menggunakan alat baris perintah, unduh dan jalankan alat tersebut, lalu konfigurasikan koneksi ke instans Anda dan pilih tabel target. Untuk informasi lebih lanjut, lihat Unduh alat baris perintah, Jalankan alat dan konfigurasikan informasi koneksi, dan Operasi tabel data.
Penagihan
Mengkueri data menggunakan Search Index mengonsumsi throughput baca. Untuk informasi lebih lanjut, lihat Metering dan penagihan Search Index.
FAQ
Topik terkait
Search Index mendukung berbagai tipe kueri untuk kueri data multidimensi, termasuk kueri tepat, kueri istilah, Pencocokan semua kueri, kueri cocok, kueri frasa cocok, kueri rentang, kueri awalan, kueri akhiran, kueri wildcard, kueri wildcard berbasis token, kueri boolean, kueri geografis, kueri bersarang, Pencarian vektor, dan kueri exists.
Saat mengkueri data, Anda dapat mengurutkan dan membuat halaman set hasil atau melakukan collapsing (deduplikasi).
Untuk analisis data, seperti mencari nilai maksimum atau minimum, menghitung jumlah, atau menghitung baris, Anda dapat menggunakan fitur agregasi statistik atau kueri SQL.
Untuk mengekspor data secara cepat tanpa memperhatikan urutan set hasil, Anda dapat menggunakan fitur Parallel Scan.