Indeks penelusuran versus sekunder

Halaman ini menjelaskan fitur untuk indeks penelusuran dan sekunder.

Saat memutuskan antara indeks penelusuran dan indeks sekunder, perlu diingat bahwa indeks pencarian seharusnya menjadi pilihan {i>default<i} untuk kasus penggunaan teks lengkap dan indeks sekunder harus menjadi pilihan {i> default<i} untuk semua hal lainnya. Tujuan tabel berikut menjelaskan kapan harus menggunakan setiap jenis indeks.

Fitur Indeks sekunder Indeks penelusuran
Tata urutan Indeks diurutkan berdasarkan semua kolom kunci indeks Indeks penelusuran hanya dapat diurutkan berdasarkan maksimal dua kolom INT64 yang dikontrol pengguna
Array Array tidak didukung sebagai kunci indeks sekunder. Indeks penelusuran mendukung pengindeksan array. Semua token dokumen ditempatkan di bagian yang sama. Akibatnya, transaksi yang mengubah 1 baris hanya menulis ke satu bagian indeks.
Pencarian Pencarian berdasarkan kunci indeks hanya perlu mengakses satu bagian Kueri yang menggunakan indeks penelusuran umumnya harus membaca dari semua bagian partisi tertentu. Satu-satunya pengecualian adalah pencocokan pola top-k.
Pengindeksan multi-kolom Indeks sekunder dapat mencakup beberapa kolom kunci. Kueri perlu mencari data berdasarkan awalan kolom kunci indeks agar eksekusinya efisien. Indeks penelusuran dapat mengindeks beberapa kolom. Kueri dapat menentukan ekspresi logika yang kompleks (konjungsi, disjungsi, negasi) di subset kolom yang diindeks, dan masih dijalankan secara efisien
Persimpangan indeks Pengguna dapat menulis ulang kueri mereka untuk menggabungkan beberapa indeks sekunder. Perpotongan dari beberapa kolom terindeks diterapkan sebagai gabungan zig-zag lokal yang efisien, diikuti oleh gabungan penggabungan terdistribusi (yang menggabungkan hasil dari semua bagian yang relevan).
Membaca data SQL Query atau Read API Kueri SQL

Selain semantik, sintaks pernyataan DDL untuk membuat indeks pencarian adalah berbeda dari sintaks DDL untuk membuat indeks sekunder:

  • Kolom yang diindeks ditentukan secara terpisah dari tata urutan indeks penelusuran.
  • Urutan kolom TOKENLIST dalam klausa ON pernyataan CREATE SEARCH INDEX tidak penting.

Langkah selanjutnya