Activa el filtrado adaptable en AlloyDB para PostgreSQL

En esta página, se describe el filtrado adaptable en AlloyDB.

El filtrado adaptable analiza los patrones de búsqueda y las distribuciones de datos durante la ejecución de la búsqueda para elegir de forma dinámica la estrategia de filtrado más eficiente, como el filtrado previo o intercalado.

El optimizador de consultas de AlloyDB usa el análisis basado en costos para determinar si el filtrado intercalado o el filtrado previo proporcionan el mejor rendimiento en cualquier punto determinado durante la ejecución de la consulta.

Esta optimización es beneficiosa para las búsquedas de vectores filtrados de AlloyDB, en las que el filtrado adaptable cambia automáticamente entre el uso de índices de vectores y de metadatos para garantizar resultados eficientes y precisos sin tu intervención manual.

Cómo habilitar el filtrado adaptable

Para habilitar el filtrado adaptable, usa la marca scann.enable_preview_features.

Cuando el filtrado adaptable activa un cambio del filtrado intercalado al filtrado previo durante la ejecución, el plan de consultas cambia de forma dinámica.

Por ejemplo, el plan puede mostrar Bitmap assisted pre-filtering en el campo Estrategia de ejecución cuando el optimizador determina que el filtrado previo es más eficiente en ese punto de la consulta. Este cambio dinámico se produce a medida que el sistema se adapta a los datos reales que encuentra durante la ejecución de la búsqueda.

Limit (actual rows=10 loops=1)
  ->  Custom Scan (vector scan) on t1 (actual rows=10 loops=1)
        Execution Strategy: Bitmap assisted pre-filtering
        Order By: (vec_col <=> '[...]'::vector)
        Limit: 10
        Num Requalifications: 0
        Num filtered: 1000
        ->  Bitmap Index Scan on btree_idx (actual rows=10000 loops=1)
              Index Cond: (int_col <= 100000000)

¿Qué sigue?