El día 21 de mayo de 2009 14:04, Emanuel Calvo Franco <postgres....@gmail.com> escribió: > El día 21 de mayo de 2009 7:16, Eduardo Morras <emor...@s21sec.com> escribió: >> >> Muy buenas: >> >> En las querys que estoy montando tengo un monton de counts de tablas >> enormes, varios millones de filas. Cada vez que ejecuto la query tarda una >> media hora en dar el resultado. Haciendo una analyze desde pgAdminIII 1.8, >> he visto en los logs que al analizar los indices de las diferentes tablas da >> el resultado correcto del count. Puedo desde pl/sql o similar capturar dicho >> log y parsearlo para haciendo un analyze hacer un count rapido de un tabla? >> > > No se si te seria tan consistente esa idea. > La idea de realizar el count sobre los índices es similar a la que > implementa Mysql. Postgresql recorre la tabla para adquirir este numero y de > ahi su lentitud (comparada) pero al mismo tiempo es más consistente. > > Relicé un par de pruebas para forzar counts sobre indices (con subconsultas) y > en mi caso particular e obtenido mejores resultados recurriendo a la > común ténica del count(columna). > > Buscaré un poco más a ver si encuentro algo más interesante.
Si te sirve el count estimativo, fijate acá. http://archives.postgresql.org/pgsql-sql/2005-08/msg00046.php http://archives.postgresql.org/pgsql-es-ayuda/2008-02/msg00293.php -- Silvio Quadri -- TIP 9: visita nuestro canal de IRC #postgresql-es en irc.freenode.net