Metrik indeks vektor

Halaman ini mencantumkan metrik yang terkait dengan indeks vektor yang Anda buat di AlloyDB Omni. Anda dapat melihat metrik ini menggunakan tampilan pg_stat_ann_indexes yang tersedia saat Anda menginstal ekstensi alloydb_scann.

Untuk mengetahui informasi selengkapnya tentang cara melihat metrik, lihat Melihat metrik indeks vektor.

Metrik kegunaan

Metrik kegunaan mencakup metrik yang membantu Anda memahami status pemanfaatan indeks dengan metrik, seperti konfigurasi indeks dan jumlah pemindaian indeks.

Nama metrik Jenis data Deskripsi
relid OID ID unik tabel yang berisi indeks vektor
indexrelid OID ID unik indeks vektor
schemaname NAME Nama skema yang memiliki indeks
relname NAME Nama tabel yang berisi indeks
indexrelname NAME Nama indeks
indextype NAME Jenis indeks. Nilai ini selalu ditetapkan ke alloydb_scann
indexconfig TEXT[] Konfigurasi, seperti jumlah daun dan penguantisasi, yang ditentukan untuk indeks saat dibuat
indexsize TEXT Ukuran indeks
indexscan BIGINT Jumlah pemindaian indeks yang dimulai pada indeks
partitioncount BIGINT Jumlah partisi (node daun) dalam hierarki.

Metrik penyesuaian

Metrik penyesuaian memberikan insight tentang pengoptimalan indeks saat ini, sehingga Anda dapat menerapkan rekomendasi untuk performa kueri yang lebih cepat.

Nama metrik Jenis data Deskripsi
insertcount BIGINT Jumlah operasi penyisipan pada indeks. Metrik ini juga mencakup jumlah baris yang ada sebelum indeks dibuat.
updatecount BIGINT Jumlah operasi update pada indeks. Metrik ini tidak memperhitungkan update HOT apa pun.
deletecount BIGINT Jumlah operasi penghapusan pada indeks.
distribution JSONB Distribusi vektor di semua partisi untuk indeks.

Kolom berikut menunjukkan distribusi:
  • maximum (INT8): Jumlah maksimum vektor di semua partisi.
  • minimum (INT8): Jumlah minimum vektor di semua partisi.
  • average (FLOAT) : Jumlah rata-rata vektor di semua partisi.
  • outliers (INT8[]): Pencilan teratas di semua partisi. Nilai ini menampilkan 20 pencilan teratas.

Catatan: Karena karakteristik inheren algoritma pengelompokan K-means, akan selalu ada beberapa tingkat varians dalam distribusi vektor di seluruh partisi, bahkan saat indeks dibuat pertama kali.

Rekomendasi penyesuaian berdasarkan metrik

Mutasi
Metrik insertcount, updatecount, dan deletecount secara bersamaan menunjukkan perubahan atau mutasi dalam vektor untuk indeks.
Indeks dibuat dengan jumlah vektor dan partisi tertentu. Saat operasi seperti penyisipan, pembaruan, atau penghapusan dilakukan pada indeks vektor, operasi tersebut hanya memengaruhi kumpulan partisi awal tempat vektor berada. Akibatnya, jumlah vektor di setiap partisi berfluktuasi dari waktu ke waktu, yang berpotensi memengaruhi perolehan, QPS, atau keduanya.
Jika Anda mengalami masalah kelambatan atau akurasi seperti QPS rendah atau recall buruk, dalam kueri penelusuran ANN Anda dari waktu ke waktu, pertimbangkan untuk meninjau metrik ini. Jumlah mutasi yang tinggi dibandingkan dengan jumlah total vektor dapat menunjukkan perlunya pengindeksan ulang.
Distribusi
Metrik distribution menampilkan distribusi vektor di semua partisi.
Saat Anda membuat indeks, indeks tersebut dibuat dengan jumlah vektor tertentu dan partisi tetap. Proses partisi dan distribusi berikutnya terjadi berdasarkan pertimbangan ini. Jika vektor tambahan ditambahkan, vektor tersebut akan dipartisi di antara partisi yang ada, sehingga menghasilkan distribusi yang berbeda dibandingkan dengan distribusi saat indeks dibuat. Karena distribusi akhir tidak mempertimbangkan semua vektor secara bersamaan, recall, QPS, atau keduanya mungkin terpengaruh.
Jika Anda mengamati penurunan bertahap dalam performa kueri penelusuran ANN, seperti waktu respons yang lebih lambat atau akurasi hasil yang berkurang (diukur dengan QPS atau perolehan), pertimbangkan untuk memeriksa metrik ini dan mengindeks ulang.