向量索引指標

選取說明文件版本:

這個頁面列出與您在 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 對索引啟動的索引掃描次數

調整指標

調整指標可讓您深入瞭解目前的索引最佳化狀態,並套用建議來加快查詢速度。

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

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

注意:由於 K-means 分群演算法的固有特性,即使在最初建立索引時,各分區的向量分布也一定會有某種程度的差異。

根據指標調整建議

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