Metriche dell'indice vettoriale

Questa pagina elenca le metriche relative agli indici di vettori generati in AlloyDB Omni. Puoi visualizzare queste metriche utilizzando la visualizzazione pg_stat_ann_indexes disponibile quando installi l'estensione alloydb_scann.

Per ulteriori informazioni sulla visualizzazione delle metriche, consulta Visualizzare le metriche degli indici di vettori.

Metriche di usabilità

Le metriche di usabilità includono metriche che ti aiutano a comprendere lo stato di utilizzo dell'indice, ad esempio la configurazione dell'indice e il numero di scansioni dell'indice.

Nome metrica Tipo di dati Descrizione
relid OID Identificatore univoco della tabella contenente l'indice del vettore
indexrelid OID Identificatore univoco dell'indice del vettore
schemaname NAME Nome dello schema proprietario dell'indice
relname NAME Nome della tabella contenente l'indice
indexrelname NAME Nome dell'indice
indextype NAME Tipo di indice. Questo valore è sempre impostato su alloydb_scann
indexconfig TEXT[] Configurazione, ad esempio il numero di foglie e il quantizzatore, definita per l'indice al momento della sua creazione
indexsize TEXT Dimensioni dell'indice
indexscan BIGINT Numero di scansioni dell'indice avviate nell'indice

Metriche di ottimizzazione

Le metriche di ottimizzazione forniscono informazioni sull'ottimizzazione dell'indice corrente, consentendoti di applicare consigli per migliorare le prestazioni delle query.

Nome metrica Tipo di dati Descrizione
insertcount BIGINT Numero di operazioni di inserimento nell'indice. Questa metrica include anche il numero di righe esistenti prima della creazione dell'indice.
updatecount BIGINT Numero di operazioni di aggiornamento nell'indice. Questa metrica non tiene conto degli aggiornamenti HOT.
deletecount BIGINT Numero di operazioni di eliminazione nell'indice.
distribution JSONB Distribuzioni di vettori in tutte le partizioni dell'indice.

I seguenti campi mostrano la distribuzione:
  • maximum (INT8): numero massimo di vettori in tutte le partizioni.
  • minimum (INT8): numero minimo di vettori in tutte le partizioni.
  • average (FLOAT) : numero medio di vettori in tutte le partizioni.
  • outliers (INT8[]): valori anomali principali in tutte le partizioni. Questo valore mostra i 20 valori anomali principali.

Nota: a causa delle caratteristiche intrinseche dell'algoritmo di clustering K-means, ci sarà sempre un certo grado di varianza nella distribuzione dei vettori tra le partizioni, anche quando l'indice viene creato inizialmente.

Suggerimento di ottimizzazione in base alle metriche

Mutazione
Le metriche insertcount, updatecount e deletecount insieme mostrano le variazioni o le mutazioni nel vettore per l'indice.
L'indice viene creato con un numero specifico di vettori e partizioni. Quando vengono eseguite operazioni come inserimento, aggiornamento o eliminazione sull'indice di vettori, queste influiscono solo sull'insieme iniziale di partizioni in cui risiedono i vettori. Di conseguenza, il numero di vettori in ogni partizione fluttua nel tempo, con un potenziale impatto sul richiamo, sul QPS o su entrambi.
Se nel tempo riscontri problemi di lentezza o accuratezza, ad esempio un QPS basso o un recupero scarso, nelle query di ricerca ANN, ti consigliamo di esaminare queste metriche. Un numero elevato di mutazioni rispetto al numero totale di vettori potrebbe indicare la necessità di eseguire nuovamente l'indicizzazione.
Distribuzione
La metrica distribution mostra le distribuzioni dei vettori in tutte le partizioni.
Quando crei un indice, questo viene creato con un numero specifico di vettori e partizioni fisse. Il processo di partizione e la distribuzione successiva avvengono in base a questa considerazione. Se vengono aggiunti altri vettori, questi vengono suddivisi tra le partizioni esistenti, con una distribuzione diversa rispetto a quella al momento della creazione dell'indice. Poiché la distribuzione finale non prende in considerazione tutti i vettori contemporaneamente, il richiamo, il QPS o entrambi potrebbero essere interessati.
Se noti un calo graduale delle prestazioni delle query di ricerca ANN, ad esempio tempi di risposta più lenti o una minore accuratezza dei risultati (misurata in base a QPS o richiamo), ti consigliamo di controllare questa metrica e di eseguire nuovamente l'indicizzazione.