向量索引指標

本頁面列出與您在 AlloyDB Omni 中產生的向量索引相關的指標。安裝alloydb_scann擴充功能後,即可使用 pg_stat_ann_indexes 檢視畫面查看這些指標。

如要進一步瞭解如何查看指標,請參閱「查看向量索引指標」。

可用性指標

可用性指標包括可協助您瞭解索引使用狀態的指標,例如索引設定和索引掃描次數。

指標名稱 資料類型 說明
relid OID 包含向量索引的表格專屬 ID
indexrelid OID 向量索引的專屬 ID
schemaname NAME 擁有索引的結構定義名稱
relname NAME 包含索引的資料表名稱
indexrelname NAME 索引名稱
indextype NAME 索引類型。這個值一律會設為 alloydb_scann
indexconfig TEXT[] 建立索引時定義的設定,例如葉片計數和量化器
indexsize TEXT 索引大小
indexscan BIGINT 在索引上啟動的索引掃描次數
partitioncount BIGINT 樹狀結構中的分割區 (葉節點) 數量。

調整指標

調整指標可提供目前的索引最佳化洞察資料,讓您套用建議,加快查詢效能。

指標名稱 資料類型 說明
insertcount BIGINT 索引的插入作業數。這項指標也包含建立索引前存在的資料列數。
updatecount BIGINT 索引的更新作業數。這項指標不會將任何 HOT 更新納入考量。
deletecount BIGINT 索引的刪除作業數量。
distribution JSONB 索引中所有分區的向量分布情形。

下列欄位會顯示分布情形:
  • maximum (INT8):所有分區的向量數量上限。
  • minimum (INT8):所有分區的向量數量下限。
  • average (FLOAT):所有分區的平均向量數。
  • outliers (INT8[]):所有分區中的頂尖離群值。這個值會顯示前 20 個離群值。

注意:由於 K 平均值叢集演算法的固有特性,即使是初始建立索引時,向量在各個分割區的分布情況也一定會出現某種程度的差異。

根據指標調整建議

更改
insertcountupdatecountdeletecount 指標會一起顯示索引向量的變化或突變。
索引是使用特定數量的向量和分區建立而成。對向量索引執行插入、更新或刪除等作業時,只會影響向量所在的初始分割區集。因此,每個分區中的向量數量會隨時間波動,可能影響召回率、每秒查詢次數或兩者。
如果 ANN 搜尋查詢長期出現速度緩慢或準確度問題 (例如 QPS 偏低或召回率不佳),請考慮查看這些指標。如果變動次數相對於向量總數偏高,可能表示需要重新建立索引。
分布
distribution」指標會顯示所有分割區的向量分布情形。
建立索引時,系統會以特定數量的向量和固定分區建立索引。系統會根據這項考量進行分割程序和後續分配。如果新增其他向量,系統會將這些向量分配到現有分區,因此與建立索引時的分配方式不同。由於最終分配並未同時考量所有向量,因此召回率、QPS 或兩者都可能受到影響。
如果發現 ANN 搜尋查詢的成效逐漸下滑,例如回應時間變慢或結果準確度降低 (以 QPS 或喚回度衡量),請考慮檢查這項指標並重新建立索引。