pg_stat_ann_indexes
vista que está disponible cuando instala la extensión alloydb_scann
.
Para obtener más información sobre cómo ver las métricas, consulta Ver métricas de índice vectorial.
Métricas de usabilidad
Las métricas de usabilidad incluyen métricas que le ayudan a comprender el estado de la utilización de índices con métricas, como la configuración de índices y el número de análisis de índices.
Nombre de la métrica | Tipo de datos | Descripción |
---|---|---|
relid |
OID |
Identificador único de la tabla que contiene el índice vectorial |
indexrelid |
OID |
Identificador único del índice vectorial. |
schemaname |
NAME |
Nombre del esquema propietario del índice. |
relname |
NAME |
Nombre de la tabla que contiene el índice |
indexrelname |
NAME |
Nombre del índice |
indextype |
NAME |
Tipo de índice. Este valor siempre es alloydb_scann . |
indexconfig |
TEXT[] |
Configuración, como el recuento de hojas y el cuantificador, definida para el índice cuando se creó |
indexsize |
TEXT |
Tamaño del índice |
indexscan |
BIGINT |
Número de análisis de índice iniciados en el índice |
Métricas de ajuste
Las métricas de ajuste te ofrecen información valiosa sobre la optimización de tus índices, lo que te permite aplicar recomendaciones para mejorar el rendimiento de las consultas.
Nombre de la métrica | Tipo de datos | Descripción |
---|---|---|
insertcount |
BIGINT |
Número de operaciones de inserción en el índice. Esta métrica también incluye el número de filas que había antes de crear el índice. |
updatecount |
BIGINT |
Número de operaciones de actualización en el índice. Esta métrica no tiene en cuenta las actualizaciones HOT. |
deletecount |
BIGINT |
Número de operaciones de eliminación en el índice. |
distribution |
JSONB |
Distribuciones de vectores en todas las particiones del índice. Los siguientes campos muestran la distribución:
Nota: Debido a las características inherentes del algoritmo de clustering K-means, siempre habrá cierto grado de varianza en la distribución de vectores entre particiones, incluso cuando se cree el índice inicialmente. |
Recomendación de ajuste basada en las métricas
- Mutation
- Las métricas
insertcount
,updatecount
ydeletecount
muestran los cambios o las mutaciones en el vector del índice. - El índice se crea con un número específico de vectores y particiones. Cuando se realizan operaciones como insertar, actualizar o eliminar en el índice vectorial, solo afectan al conjunto inicial de particiones en las que residen los vectores. Por lo tanto, el número de vectores de cada partición fluctúa a lo largo del tiempo, lo que puede afectar al recuerdo, a las QPS o a ambos.
- Si observas que las consultas de búsqueda de ANN son lentas o imprecisas (por ejemplo, si el QPS es bajo o la recuperación es deficiente) con el tiempo, te recomendamos que revises estas métricas. Un número elevado de mutaciones en relación con el número total de vectores podría indicar la necesidad de volver a indexar.
- Distribución
- La métrica
distribution
muestra las distribuciones de vectores en todas las particiones. - Cuando creas un índice, se crea con un número específico de vectores y particiones fijas. El proceso de partición y la distribución posterior se realizan en función de esta consideración. Si se añaden vectores adicionales, se particionan entre las particiones existentes, lo que da como resultado una distribución diferente a la que había cuando se creó el índice. Como la distribución final no tiene en cuenta todos los vectores simultáneamente, puede que se vean afectados la recuperación, las consultas por segundo o ambos.
- Si observa un descenso gradual en el rendimiento de sus consultas de búsqueda de ANN, como tiempos de respuesta más lentos o una menor precisión en los resultados (medida por QPS o recuperación), le recomendamos que compruebe esta métrica y vuelva a indexar.