Buenas tardes: 2016-03-12 15:00 GMT+01:00 Edwin De La Cruz <edwinsp...@gmail.com>: > Estimados. Saludos cordiales. > Tengo una consulta un poco básica, en mi servidor tengo una base de datos > con más o menos unos 500 millones de registros con tablas particionadas por > meses y va llegando el tamaño a los 70 gigas.
Dado que parece que sabes como sacarlo, iria bien que indicases cuantos registros por particion tipica, y el tamaño de una con sus indices, siempre es mas facil...... > Pero cuando saco respaldo no supera los 5 gigas. ... asi como que comando usas para el respaldo ( e iria bien si pudieras hacerlo de una sola particion, la que selecciones como tipica, y mirases el tamaño de solo esa ). Es normal que las tablas ocupen menos al volcarlas ( ya que aunque algunos campos perversos crecen al pasarlos a textos muchos disminuyen, porque la representacion en disco esta pensada para ser actualizable y muybien delimitada, no super compacta ) y que suelen comprimirse en stream ( todo el volcado de golpe, lo que hace que algunos se compriman fantasticamente ). > Como puede ser eso, seguro hay algún tipo de compresión > pero como puedo hacer para que mi tamaño de base de datos se comprima? > Los campos de datos tipo text son pocos y la mayoría no superan los 300 > caracteres, exepto un campo que es tipo text con textos que pueden ser > grandes, más de 1000 caracteres, hay alguna forma de comprimir sólo ese > campo o el texto antes de insertarl0? Puedes hacer cosas con la tabla, pero sin saber la estructura total puede ser peor el remedio. Supongo que no tendras campos tipo CHAR(n) en lugar de VARCHAR(n) ( eso te mata, mira http://www.postgresql.org/docs/9.5/static/datatype-character.html , "The storage requirement for a short string (up to 126 bytes) is 1 byte plus the actual string, which includes the space padding in the case of character" ). Por otro lado supongo que no tendras problemas de tabla con mucho traqueteo y filas muertas ( eso lo sabras por tu patron de uso, y si la carga te lo permite puedes hacer un vacuum full en una particion antigua, o copiar la tabla a una nueva sin indices para verificarlo ). > Posibkemente me digan que quizá los índices son muy grandes, pero no, el más > grande no supera un giga. ¿ Pero cuantos indices tienes por particion ? ( de ahi la pregunta de arriba ). > Son algunas preguntas y espero que me puedan orientar al respecto. Ahi te van algunas mas, y alguna indicacion que puede ayudarte. Franciso Olarte. - 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