Re: [arpug] [pgsql-es-fomento] sobre particionado de tablas

From: Pablo Siciliano <pablo(dot)siciliano(at)gmail(dot)com>
To: Arcel Labrada Batista <alabradab(at)uci(dot)cu>
Cc: Jaime Casanova <jaime(at)2ndquadrant(dot)com>, CarloS Sing Ramos <carlossing(at)gmail(dot)com>, Lista PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>, arpug <arpug(at)postgresql(dot)org>
Subject: Re: [arpug] [pgsql-es-fomento] sobre particionado de tablas
Date: 2013-10-15 09:35:33
Message-ID: CADQBSUNa9Hx67KgKVtNsmo+fUJT_cVMBZDaq22TEOc3TbOAerQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: arpug pgsql-es-ayuda pgsql-es-fomento

Hola! Volviendo a lo que te pregunto Martin Marquez ... Tal vez sea
buena idea que nos cuentes un poco el problema de fondo. En una de
esas (Y problemente) a alguno de los listeros se le ocurra alguna
solucion que no pensaste todavia.

En si el particionado funciona cuando la particion esta hecha sobre
uno de los indices de busqueda. La logica de eso como te explicaba
Jaime es que al buscar el motor no recorra toda la tabla, sino que la
consulta se realice sobre la parte adonde ya se sabe de antemano que
el o los registros se encuentran.

Pasar una vista de la estructura de la tabla, que consultas se hacen
sobre la misma y un explain de las consultas que te parece que habria
que optimizar puede ser un buen modo de consultar eso.

Saludos!

On 10/14/13, Arcel Labrada Batista <alabradab(at)uci(dot)cu> wrote:
> gracias a todos y de paso aclaro algunas dudas que tenía, solo penseba que
> haciendo un particionado por cantidad de registros ganaría algo en
> rendimiento pero ya veo que no es así, entonces continúo con lo que tenía
> hasta ahora que es particionado por fechas, que esos campos si los tengo en
> mis tablas, muchas gracias por las repuestas, hasta la próxima
>
> ----- Mensaje original -----
>
> De: "Jaime Casanova" <jaime(at)2ndquadrant(dot)com>
> Para: "Arcel Labrada Batista" <alabradab(at)uci(dot)cu>
> CC: "CarloS Sing Ramos" <carlossing(at)gmail(dot)com>, "Lista PostgreSQL"
> <pgsql-es-ayuda(at)postgresql(dot)org>, "arpug" <arpug(at)postgresql(dot)org>
> Enviados: Lunes, 14 de Octubre 2013 14:38:41
> Asunto: Re: [pgsql-es-ayuda] [pgsql-es-fomento] sobre particionado de tablas
>
>
> 2013/10/14 Arcel Labrada Batista <alabradab(at)uci(dot)cu>:
>>
>
> Saludos,
>
> Primero que nada, no hagas cross-posting, al menos la lista
> "pgsql-es-fomento <pgsql-es-fomento(at)postgresql(dot)org>" no es ni
> remotamente indicada para este mail
>
>> gracias Carlos pero esto ya lo habia consultado, mi problema es que quiero
>>
>> hacer el particionado por cantidad de registros, mi tabla no tiene ningun
>>
>> campo numerico que podria utilizar para esto y no puedo ponerlo tampoco,
>> me
>> gustaria saber si existe alguna manera de hacer el particionado de manera
>>
>> dinamica teniendo en cuanta la cantidad de registros en las particiones,
>> por
>> ejemplo, quiero que cada una de mis particiones tenga 1 millon de
>> registros
>> solamente,
>
> y que crees que vas a ganar con esto? ese esquema de particionamiento
> que sugieres solo hará las consultas mas lentas con el paso del tiempo
> y no te dará ninguna ganancia.
>
> piensalo, solo hay dos razones para particionar:
>
> - menos registros a consultar
> - menor trabajo de administración
>
> la primera razón solo la puedes lograr si tienes la seguridad de tener
> registros que consultas con mucha frecuencia, agrupados en las mismas
> particiones de modo que puedas "ignorar" las particiones donde sabes
> que no habrán registros que quieres. pero si tu única condición para
> particionar es el número de registros significa que cada vez tendrás
> que consultar mas particiones no menos (porque no hay una lógica
> detras del particionado por lo que postgres tendrá que chequear
> siempre todas las particiones).
>
> la segunda razón tiene que ver con el hecho de que eventualmente
> querras eliminar registros viejos (sacar un backup y sacar los datos,
> con un DROP TABLE de la particion, hasta que en realidad necesites, o
> ser capaz de ignorar particiones que no cambian en el backup). sin
> embargo, si no sabes que registros hay en cada partición, no podrás
> saber si se modifico o no... lo que significa que tendrás que sacar
> backups de todo y jamás podras eliminar información vieja mas que con
> un DELETE.
>
> Y espero que no quieras exactitud en el número de registros por
> partición pues el manejo de concurrencia de postgres no te dejará ser
> exacto en eso a menos que no te importe el rendimiento de tu sistema.
>
> --
> Jaime Casanova www.2ndQuadrant.com
> Professional PostgreSQL: Soporte 24x7 y capacitación
> Phone: +593 4 5107566 Cell: +593 987171157
> ________________________________________________________________________________________________
>
> III Escuela Internacional de Invierno en la UCI del 17 al 28 de febrero del
> 2014. Ver www.uci.cu
>
>
> ________________________________________________________________________________________________
> III Escuela Internacional de Invierno en la UCI del 17 al 28 de febrero del
> 2014. Ver www.uci.cu
>
>
>

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Responses

Browse arpug by date

  From Date Subject
Next Message Jorge Tornero - Listas 2013-10-15 09:54:23 Errores detallados
Previous Message Arcel Labrada Batista 2013-10-14 18:46:47 Re: [pgsql-es-ayuda] [pgsql-es-fomento] sobre particionado de tablas

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Jorge Tornero - Listas 2013-10-15 09:54:23 Errores detallados
Previous Message Arcel Labrada Batista 2013-10-14 18:46:47 Re: [pgsql-es-ayuda] [pgsql-es-fomento] sobre particionado de tablas

Browse pgsql-es-fomento by date

  From Date Subject
Next Message Jorge Tornero - Listas 2013-10-15 09:54:23 Errores detallados
Previous Message Arcel Labrada Batista 2013-10-14 18:46:47 Re: [pgsql-es-ayuda] [pgsql-es-fomento] sobre particionado de tablas