Messwerte für Vektorindexe

Auf dieser Seite sind die Messwerte für die Vektorindexe aufgeführt, die Sie in AlloyDB Omni generieren. Sie können diese Messwerte in der pg_stat_ann_indexes-Ansicht aufrufen, die bei der Installation der alloydb_scann-Erweiterung verfügbar ist.

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

Messwerte zur Nutzerfreundlichkeit

Die Messwerte zur Nutzerfreundlichkeit umfassen Messwerte, mit denen Sie den Status der Indexnutzung nachvollziehen können, z. B. die Indexkonfiguration und die Anzahl der Indexscans.

Messwertname Datentyp Beschreibung
relid OID Eindeutige Kennung der Tabelle, die den Vektorindex enthält
indexrelid OID Eindeutige Kennung des Vektorindex
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 Typ des Index. Dieser Wert ist immer auf alloydb_scann festgelegt.
indexconfig TEXT[] Konfiguration, z. B. Anzahl der Blätter und Quantisierer, die für den Index bei seiner Erstellung definiert wurden
indexsize TEXT Größe des Index
indexscan BIGINT Anzahl der für den Index initiierten Indexscans
partitioncount BIGINT Anzahl der Partitionen (Blattknoten) im Baum.

Messwerte für die Abstimmung

Mit den Tuning-Messwerten erhalten Sie Informationen zur aktuellen Indexoptimierung. So können Sie Empfehlungen für eine schnellere Abfrageleistung anwenden.

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

In den folgenden Feldern wird die Verteilung angezeigt:
  • maximum (INT8): Maximale Anzahl von Vektoren über alle Partitionen hinweg.
  • minimum (INT8): Mindestanzahl von Vektoren in allen Partitionen.
  • average (FLOAT) : Durchschnittliche Anzahl von Vektoren in allen Partitionen.
  • outliers (INT8[]): Die wichtigsten Ausreißer in allen Partitionen. Dieser Wert zeigt die 20 größten Ausreißer.

Hinweis:Aufgrund der inhärenten Eigenschaften des K-Means-Clustering-Algorithmus gibt es immer eine gewisse Varianz in der Verteilung von Vektoren auf Partitionen, auch wenn der Index ursprünglich erstellt wird.

Empfehlung zur Optimierung basierend auf den Messwerten

Mutation
Die Messwerte insertcount, updatecount und deletecount geben zusammen die Änderungen oder Mutationen im Vektor für den Index an.
Der Index wird mit einer bestimmten Anzahl von Vektoren und Partitionen erstellt. Wenn Vorgänge wie „insert“, „update“ oder „delete“ für den Vektorindex ausgeführt werden, wirkt sich das nur auf die ursprüngliche Gruppe von 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 den Recall, die QPS oder beides auswirkt.
Wenn Sie im Laufe der Zeit bei Ihren ANN-Suchanfragen auf Probleme mit der Geschwindigkeit oder Genauigkeit stoßen, z. B. eine niedrige QPS oder einen schlechten Recall, sollten Sie diese Messwerte überprüfen. Eine hohe Anzahl von Mutationen im Verhältnis zur Gesamtzahl der Vektoren kann darauf hindeuten, dass eine Neuindexierung erforderlich ist.
Verteilung
Der Messwert distribution zeigt die Vektorverteilungen für alle Partitionen.
Wenn Sie einen Index erstellen, wird er mit einer bestimmten Anzahl von Vektoren und festen Partitionen erstellt. Die Partitionierung und die anschließende Verteilung erfolgen auf Grundlage dieser Überlegung. Wenn zusätzliche Vektoren hinzugefügt werden, werden sie auf die vorhandenen Partitionen aufgeteilt. Das 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, kann sich dies auf den Recall, die Anzahl der Anfragen pro Sekunde oder beides auswirken.
Wenn Sie einen allmählichen Rückgang der Leistung Ihrer ANN-Suchanfragen feststellen, z. B. langsamere Reaktionszeiten oder eine geringere Genauigkeit der Ergebnisse (gemessen an QPS oder Recall), sollten Sie diesen Messwert prüfen und neu indexieren.