Ivan Perales M. escribió: > Vamos a suponer que dejo los indices adecuados para las consultas mas > comúnes en una sola tabla. Todo es perfección hasta que el usuario dice, > necesito poder filtrar por todas las columnas, que haces? agregas indices > en cada una?
No. Cuando eso pasa simplemente dejas que el sistema escoja la mayor cantidad de índices que pueda y para el resto filtra los resultados usando el resto de las condiciones. No necesitas índices en todas las columnas ni en todas las combinaciones, sólo en las más selectivas. Por otro lado, si instalas un índice BRIN en todas las columnas, las búsquedas se limitarán "automáticamente" a recorrer sólo los rangos de páginas que cumplan todas las condiciones. > y si filtra por dos o tres columnas de cualquier combinacion, > como prevees esta consulta para crear los indices adecuados? Postgres puede "mezclar" índices usando bitmaps. Es una técnica muy efectiva. > No seria mejor combinar la separación por schema y la implementación de > indices adecuadamente? No necesariamente. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services - Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) Para cambiar tu suscripción: http://www.postgresql.org/mailpref/pgsql-es-ayuda