- Método de acceso a índices (IAM) dedicado para PostgreSQL diseñado para procesar rápidamente búsquedas de cadenas con muchos comodines
- Complementa las limitaciones de
pg_trgm, donde estructuralmente se producen accesos innecesarios al heap y pérdidas de rendimiento
- Usa un Bitmap Position Index basado en caracteres y posiciones para filtrar con precisión los resultados candidatos mediante operaciones de mapa de bits en memoria
- No requiere
heap recheck para los resultados de búsqueda, eliminando I/O aleatorio innecesario
- Mediante una estructura de índice bidireccional (positive / negative) que indexa tanto las posiciones iniciales como finales de la cadena, procesa eficientemente patrones de prefijo, sufijo y subcadena
- Separa internamente una ruta de índice dedicada para ILIKE para búsquedas sin distinción entre mayúsculas y minúsculas, asegurando al mismo tiempo precisión y rendimiento
- Diseñado para manejar no solo una sola columna, sino también condiciones LIKE de múltiples columnas con un solo índice
- Analiza la selectividad del patrón de cada columna y reordena automáticamente el orden de ejecución
- Ofrece resultados de búsqueda determinísticos sin falsos positivos incluso en patrones complejos con mezcla de
% y _
- También mejora la velocidad de procesamiento en consultas de agregación como
COUNT y EXISTS, omitiendo ordenamientos innecesarios
- Implementado sobre Roaring Bitmap (CRoaring), optimiza automáticamente el uso de memoria según la densidad de los datos
- No admite
ORDER BY directamente, pero se integra de forma natural con el planner para que el ordenamiento ocurra después de reducir el conjunto de resultados
- Aunque no soporta expresiones regulares, búsqueda por similitud ni
collation basado en locale, es un diseño enfocado en el rendimiento especializado de LIKE / ILIKE
Aún no hay comentarios.