[pgsql-es-ayuda] Re: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] Particiona do automático de tablas

2009-06-03 Por tema Islanet
Crea un CRON que cada cierto tiempo (diariamente), te cree la tabla o tablas
nuevas con su correspondientes triggers; y borre las tablas que ya no
necesites...

La idea de hacer partitioning es precisamente hacer el query sobre la tabla
madre, y que ella se encargue de buscar en las tablas hijas correpondientes.
Una buena manera de probar si lo está haciendo bien; es hacer un explain
analize al select, alli veras que tablas está recorriendo.

Saludos.-

Islanet


2009/6/3 Jorge Romeo 

> > Buena pregunta ...  Creo que la idea es crearla manualmente con
> > anticipación de manera que ya exista cuando ocurra el cambio de mes.
>
> Es lo que me temía :(
>
> Podría crear tablas para unos cuantos años pero seguro que cuando empiece a
> fallar no me acuerdo ni de cómo lo hice... Lo suyo sería automatizarlo, pero
> cuanto más pienso sobre el tema, más difícil lo veo. Además la tabla que
> quiero partir está replicada con Slony-I, por lo que tendría que crear la
> tabla en el maestro y el esclavo, modificar el trigger, los conjuntos de
> replicación, la suscripción, etc
>
> Lo veo complicado.
>
>
> Saludos,
> Jorge
>
> -Mensaje original-
> De: Alvaro Herrera [mailto:[email protected]]
> Enviado el: miércoles, 03 de junio de 2009 17:09
> Para: Jorge Romeo
> CC: [email protected]
> Asunto: Re: [pgsql-es-ayuda] Particionado automático de tablas
>
> Jorge Romeo escribió:
>
> > Pero tengo dos dudas:
> >
> > ¿Los SELECT se pueden hacer contra la tabla principal, o hay que
> > hacerlos contra las mensuales?
>
> Puedes hacerlos contra la tabla principal.  "Constraint exclusion" se
> encarga de que se recorra sólo las tablas mensuales que correspondan a
> la consulta.
>
> > ¿Cómo hago que se cree la tabla para el período de forma automática,
> > cada vez que cambie de mes?
>
> Buena pregunta ...  Creo que la idea es crearla manualmente con
> anticipación de manera que ya exista cuando ocurra el cambio de mes.
>
> --
> Alvaro Herrera
> http://www.amazon.com/gp/registry/CTMLCN8V17R4
> "[PostgreSQL] is a great group; in my opinion it is THE best open source
> development communities in existence anywhere."(Lamar Owen)
> --
> TIP 5: ¿Has leído nuestro extenso FAQ?
> http://www.postgresql.org/docs/faqs.FAQ.html
>
>
> --
> TIP 5: ¿Has leído nuestro extenso FAQ?
> http://www.postgresql.org/docs/faqs.FAQ.html
>


Re: [pgsql-es-ayuda] Prehistoria de PostgreSql en Chile (off topic)

2009-06-03 Por tema Islanet
Hola Alvaro
¿puedes enviarme el link exacto de donde bajarme información de cómo ayudar
con la traducción?
Estuve navegando largo rato en la página de postgres y no vi donde bajarme
"La infraestructura" para poder colaborar...

Saludos.-

Islanet


2009/6/3 Alvaro Herrera 

> Emanuel Calvo Franco escribió:
>
> > IMHO no estaría mal una página 'oficial' en español. Nada
> > de eso quita que cada 'pug' tenga sus recursos en la web.
> > Por ejemplo, el del arpug, solo contiene información de charlas
> > locales y demás cosas que son de argentina (y de uruguay, bolivia :P )
>
> Si quieres tener una página oficial en español, es muy fácil: hay que
> darle al esfuerzo de traducir www.postgresql.org.  La infraestructura
> para tener todo el texto traducido está hecha.
>
> --
> Alvaro Herrera   http://planet.postgresql.org/
> "La tristeza es un muro entre dos jardines" (Khalil Gibran)
> --
> TIP 3: Si encontraste la respuesta a tu problema, publícala, otros te lo
> agradecerán
>


Re: [pgsql-es-ayuda] RETORNAR CURSOR EN DATAWINDOW

2009-06-23 Por tema Islanet
Hola...
Debes crear un tipo o utilizar un tipo existente (cada tabla creada por
defecto es un tipo)
Luego devuelves un SET OF tipo (del tipo creado)

Un ejemplo de tipo:
CREATE TYPE tipo1 AS
   (
   id bigint,
   codeorder bigint,
   officialname character varying);

y la función
CREATE OR REPLACE FUNCTION find_(co1a integer)
  RETURNS SETOF tipo1 AS
$BODY$
DECLARE
_mitipotipo1;
BEGIN

  --operaciones respectivas
_mitipo.id:=1;
_mitipo.codeorder :=1;
_mitipo.officialname :='mi nombre';
RETURN NEXT _mitipo;
END;
$BODY$
LANGUAGE 'plpgsql' VOLATILE;

La llamada queda asi: select * from find_(1);
Y te devuelve un set de registros, de la misma forma que haces un select a
una tabla.

Saludos.-

Islanet

2009/6/23 Sandro Martin Napán Villarreal 

>  Buenas tardes
>
>
>
> Sabe alguien como retornar un cursor en postgres desde una funcion que sera
> invocada desde un DW, no desde un script de pb
>
>
>
> En Oracle se retorna un cursor , en Sybase y sql Server un simple select a
> la tabla y listo el dw se crea con esa estructura y parámetros , pero en
> postgres como hago lo mismo
>
>
>
> Sld
>
>
> __ Información de ESET NOD32 Antivirus, versión de la base de
> firmas de virus 4181 (20090623) __
>
> ESET NOD32 Antivirus ha comprobado este mensaje.
>
> http://www.eset.com
>
> --
> Este mensaje ha sido analizado por *MailScanner*<http://www.mailscanner.info/>
> en busca de virus y otros contenidos peligrosos,
> y se considera que está limpio.
> MailScanner agradece a transtec Computers <http://www.transtec.co.uk/> por
> su apoyo.