Ativar a filtragem adaptativa no AlloyDB para PostgreSQL

Nesta página, descrevemos a filtragem adaptativa no AlloyDB.

A filtragem adaptativa analisa padrões de consulta e distribuições de dados durante a execução da consulta para escolher dinamicamente a estratégia de filtragem mais eficiente, como filtragem inline ou pré-filtragem.

O otimizador de consultas do AlloyDB usa a análise baseada em custos para determinar se a filtragem inline ou a pré-filtragem oferece o melhor desempenho em qualquer ponto durante a execução da consulta.

Essa otimização é benéfica para as pesquisas vetoriais filtradas do AlloyDB, em que a filtragem adaptativa alterna automaticamente entre o uso de vetores e índices de metadados para garantir resultados eficientes e precisos sem a sua intervenção manual.

Ativar a filtragem adaptativa

Para ativar a filtragem adaptativa, use a flag scann.enable_preview_features.

Quando a filtragem adaptativa aciona uma alteração da filtragem inline para a pré-filtragem durante a execução, o plano de consulta é alterado dinamicamente.

Por exemplo, o plano pode mostrar Bitmap assisted pre-filtering no campo Estratégia de Execução quando o otimizador determina que a pré-filtragem é mais eficiente naquele ponto da consulta. Essa alteração dinâmica ocorre à medida que o sistema se adapta aos dados reais encontrados durante a execução da consulta.

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)

A seguir