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? y si filtra por dos o tres columnas de cualquier combinacion, como prevees esta consulta para crear los indices adecuados?
No seria mejor combinar la separación por schema y la implementación de indices adecuadamente? 2016-04-19 15:51 GMT-05:00 Alvaro Herrera <alvhe...@2ndquadrant.com>: > Ivan Perales M. escribió: > > > Si yo creo la tabla cliente1.cajas y cliente2.cajas, tengo un millon de > > registros en cada una, cuando consulte cliente1.cajas, buscará entre los > 2 > > millones o solo entre el millon de registros de esa tabla? > > Sólo uno, pero el sistema tendrá además que hacer la correspondiente > búsqueda entre los catálogos para determinar cuál de las tablas usar. > Uno tiende a pensar que esto cuesta cero, pero no es así. Una consulta > bien hecha no recorre un millón de registros, sino sólo aquellos que > cumplen las condiciones de los índices asociados, que normalmente no son > el millón de registros sino sólo 200. Y ahí no importará si tienes un > millón o dos millones en la tabla. > > > Vamos a quitar que sea doloroso el mantener schemas, si separo por schema > > si se acorta el rango de búsqueda efectivamente? > > Si las consultas están bien hechas, no. Si las consultas están mal > hechas, sí. (Esto incluye que tengas los índices correctos). > > -- > Álvaro Herrera http://www.2ndQuadrant.com/ > PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services > -- Lindolfo Iván Perales Mancinas Solo existen 10 tipos de personas en el mundo, las que saben binario y las que no.