Messwerte für Vektorindexe

Auf dieser Seite sind die Messwerte zu den Vektorindizes aufgeführt, die Sie in AlloyDB Omni generieren. Sie können diese Messwerte in der pg_stat_ann_indexes-Ansicht aufrufen, die verfügbar ist, wenn Sie die alloydb_scann-Erweiterung installieren.

Weitere Informationen zum Aufrufen der Messwerte finden Sie unter Messwerte für Vektorindexe aufrufen.

Messwerte zur Nutzerfreundlichkeit

Zu den Usability-Messwerten gehören Messwerte, mit denen Sie den Zustand der Indexnutzung anhand von Messwerten wie der Indexkonfiguration und der Anzahl der Indexscans besser nachvollziehen können.

Messwertname Datentyp Beschreibung
relid OID Eindeutige Kennung der Tabelle, die den Vektorindex enthält
indexrelid OID Eindeutige Kennung des Vektorindexes
schemaname NAME Name des Schemas, zu dem der Index gehört
relname NAME Name der Tabelle, die den Index enthält
indexrelname NAME Name des Index
indextype NAME Der Typ des Index. Dieser Wert ist immer auf alloydb_scann festgelegt.
indexconfig TEXT[] Konfiguration, z. B. Anzahl der Blätter und Quantizer, die beim Erstellen des Index definiert wurden
indexsize TEXT Größe des Index
indexscan BIGINT Anzahl der Indexscans, die für den Index gestartet wurden

Messwerte für die Abstimmung

Mit Tuning-Messwerten erhalten Sie Informationen zur aktuellen Indexoptimierung und können Empfehlungen zur Verbesserung der Abfrageleistung anwenden.

Messwertname Datentyp Beschreibung
insertcount BIGINT Anzahl der Einfügevorgänge im Index. Dieser Messwert enthält auch die Anzahl der Zeilen, die vor dem Erstellen des Index vorhanden waren.
updatecount BIGINT Anzahl der Aktualisierungsvorgänge am Index. Bei diesem Messwert werden keine HOT-Aktualisierungen berücksichtigt.
deletecount BIGINT Anzahl der Löschvorgänge für den Index.
distribution JSONB Vektorverteilungen für alle Partitionen des Index.

Die folgenden Felder zeigen die Verteilung:
  • maximum (INT8): Maximale Anzahl von Vektoren in allen Partitionen.
  • minimum (INT8): Mindestanzahl der Vektoren in allen Partitionen.
  • average (FLOAT) : Durchschnittliche Anzahl der Vektoren in allen Partitionen.
  • outliers (INT8[]): Die größten Ausreißer in allen Partitionen. Dieser Wert gibt die 20 häufigsten Ausreißer an.

Hinweis:Aufgrund der inhärenten Eigenschaften des K-Means-Clustering-Algorithmus gibt es immer eine gewisse Abweichung bei der Verteilung der Vektoren auf Partitionen, auch wenn der Index anfangs erstellt wird.

Empfehlung zur Optimierung basierend auf den Messwerten

Mutation
Die Messwerte insertcount, updatecount und deletecount zeigen zusammen die Änderungen oder Mutationen am Vektor für den Index.
Der Index wird mit einer bestimmten Anzahl von Vektoren und Partitionen erstellt. Wenn Vorgänge wie „Einfügen“, „Aktualisieren“ oder „Löschen“ auf dem Vektorindex ausgeführt werden, wirkt sich das nur auf die anfänglichen Partitionen aus, in denen sich die Vektoren befinden. Daher schwankt die Anzahl der Vektoren in jeder Partition im Laufe der Zeit, was sich möglicherweise auf die Abrufrate, die QPS oder beides auswirkt.
Wenn Sie bei Ihren ANN-Suchanfragen im Laufe der Zeit Probleme mit der Geschwindigkeit oder Genauigkeit feststellen, z. B. eine niedrige Abfragerate pro Sekunde oder eine schlechte Wiedererkennung, sollten Sie diese Messwerte prüfen. Eine hohe Anzahl von Mutationen im Vergleich zur Gesamtzahl der Vektoren kann darauf hindeuten, dass ein erneutes Indexieren erforderlich ist.
Verteilung
Der Messwert distribution zeigt die Vektorverteilungen über alle Partitionen hinweg an.
Wenn Sie einen Index erstellen, wird er mit einer bestimmten Anzahl von Vektoren und festen Partitionen erstellt. Der Partitionierungsprozess und die anschließende Verteilung erfolgen auf der Grundlage dieser Überlegungen. Wenn zusätzliche Vektoren hinzugefügt werden, werden sie auf die vorhandenen Partitionen verteilt. Dies führt zu einer anderen Verteilung als bei der Erstellung des Index. Da bei der endgültigen Verteilung nicht alle Vektoren gleichzeitig berücksichtigt werden, können sich dies auf die Rückrufrate, die Anzahl der Abfragen pro Sekunde oder beides auswirken.
Wenn Sie einen allmählichen Rückgang der Leistung Ihrer ANN-Suchanfragen feststellen, z. B. längere Antwortzeiten oder eine geringere Genauigkeit der Ergebnisse (gemessen anhand der Abfragen pro Sekunde oder des Recall-Werts), sollten Sie diesen Messwert prüfen und die Indexierung neu durchführen.