Re: [pgsql-es-ayuda] Como concatenar bases de datos de mismo esquema distinta data
El 18/09/14 01:09, Jaime Casanova escribió: > 2014-09-17 22:35 GMT-05:00 Emanuel Calvo : >> El 05/09/14 20:36, Jonathan Finlay escribió: >> >> Estimados, >> >> a los años por aquí, me encuentro con un problema: >> >> Necesito concatenar varias bases de datos en una sola y mi problema se dá >> con las primary keys seriales de cada tabla y las relaciones entre sí. >> >> Los que quiero hacer es: BD1 + DB2 = DB3 >> >> >> Dependiendo la versión de Postgres, puedes usar FDW ( es decir, crear la >> cadena de >> conexión/server desde una DB). >> >> Si es algo que harás solo 1 vez, no gastes tiempo desarrollando un script. >> > Jonathan, por eso es que los correos deben contestarse a la lista y no > en privado, la mayoría no se entera de los datos adicionales. > Emanuel, son 15 tablas en 35 bases de datos > > Mmmh ya veo.[Jonathan, hay tabla]. Creo que lo más complicado que se puede presentar son las llaves y la consistencia. En caso de colisión con las llaves, tendrá que cambiar y mapear todas las referencias. -- -- Emanuel Calvo http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services - 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
Re: [pgsql-es-ayuda] Como concatenar bases de datos de mismo esquema distinta data
2014-09-17 22:35 GMT-05:00 Emanuel Calvo : > > El 05/09/14 20:36, Jonathan Finlay escribió: > > Estimados, > > a los años por aquí, me encuentro con un problema: > > Necesito concatenar varias bases de datos en una sola y mi problema se dá > con las primary keys seriales de cada tabla y las relaciones entre sí. > > Los que quiero hacer es: BD1 + DB2 = DB3 > > > Dependiendo la versión de Postgres, puedes usar FDW ( es decir, crear la > cadena de > conexión/server desde una DB). > > Si es algo que harás solo 1 vez, no gastes tiempo desarrollando un script. > Jonathan, por eso es que los correos deben contestarse a la lista y no en privado, la mayoría no se entera de los datos adicionales. Emanuel, son 15 tablas en 35 bases de datos -- Jaime Casanova www.2ndQuadrant.com Professional PostgreSQL: Soporte 24x7 y capacitación Phone: +593 4 5107566 Cell: +593 987171157 - 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
Re: [pgsql-es-ayuda] Como concatenar bases de datos de mismo esquema distinta data
El 05/09/14 20:36, Jonathan Finlay escribió: > Estimados, > > a los años por aquí, me encuentro con un problema: > > Necesito concatenar varias bases de datos en una sola y mi problema se > dá con las primary keys seriales de cada tabla y las relaciones entre sí. > > Los que quiero hacer es: BD1 + DB2 = DB3 > Dependiendo la versión de Postgres, puedes usar FDW ( es decir, crear la cadena de conexión/server desde una DB). Si es algo que harás solo 1 vez, no gastes tiempo desarrollando un script. Saludos, -- -- Emanuel Calvo http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
Re: [pgsql-es-ayuda] Como concatenar bases de datos de mismo esquema distinta data
Yo lo haria con DBLINK. Saludos.. El 5 de septiembre de 2014, 22:44, Jaime Casanova escribió: > On Fri, Sep 5, 2014 at 6:36 PM, Jonathan Finlay > wrote: > > Estimados, > > > > a los años por aquí, me encuentro con un problema: > > > > Necesito concatenar varias bases de datos en una sola y mi problema se dá > > con las primary keys seriales de cada tabla y las relaciones entre sí. > > > > Los que quiero hacer es: BD1 + DB2 = DB3 > > > [...] > > > > Por ahora estoy haciendo un script en python para procesar esto pero son > 15 > > tablas las que hay que concatenar y existen unas 20 relaciones. > > > > Si solo son 15 tablas yo lo haría a mano. Me parece exagerado el script en > Python. Bueno, yo lo haría para jugar pero tu ya sabes python... > > Lo que yo haría es: > > - Cargar la primera base, solo las tabas y sus datos. Sin constraints ni > índices > - Busca en la segunda base el mayor id en todas las tablas y redondealo > hacia > arriba, supongamos que fuera 9876 yo me quedaría con 1. > - Verifica que ese valor sea mayor a todos los id's en la primera base, si > no lo >es usa el id de la primera base redondeado hacia arriba. > - Haz un update en todas las tablas de la primera base sumandole al id > el valor que > escogiste. > - Carga los datos de la segunda base. > - Ahora ya puedes cargar los constraints e índices. > > Te queda de tarea cerrar el hueco que quedará en los id's. Personalmente, > yo > lo dejaría ahi > > -- > Jaime Casanova www.2ndQuadrant.com > Professional PostgreSQL: Soporte 24x7 y capacitación > Phone: +593 4 5107566 Cell: +593 987171157 > > - > 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 > -- *Ing. Eduardo Reyes* Analista Programador. (809) 607-1961 ere...@h-rivera.com
Re: [pgsql-es-ayuda] Como concatenar bases de datos de mismo esquema distinta data
On Fri, Sep 5, 2014 at 6:36 PM, Jonathan Finlay wrote: > Estimados, > > a los años por aquí, me encuentro con un problema: > > Necesito concatenar varias bases de datos en una sola y mi problema se dá > con las primary keys seriales de cada tabla y las relaciones entre sí. > > Los que quiero hacer es: BD1 + DB2 = DB3 > [...] > > Por ahora estoy haciendo un script en python para procesar esto pero son 15 > tablas las que hay que concatenar y existen unas 20 relaciones. > Si solo son 15 tablas yo lo haría a mano. Me parece exagerado el script en Python. Bueno, yo lo haría para jugar pero tu ya sabes python... Lo que yo haría es: - Cargar la primera base, solo las tabas y sus datos. Sin constraints ni índices - Busca en la segunda base el mayor id en todas las tablas y redondealo hacia arriba, supongamos que fuera 9876 yo me quedaría con 1. - Verifica que ese valor sea mayor a todos los id's en la primera base, si no lo es usa el id de la primera base redondeado hacia arriba. - Haz un update en todas las tablas de la primera base sumandole al id el valor que escogiste. - Carga los datos de la segunda base. - Ahora ya puedes cargar los constraints e índices. Te queda de tarea cerrar el hueco que quedará en los id's. Personalmente, yo lo dejaría ahi -- Jaime Casanova www.2ndQuadrant.com Professional PostgreSQL: Soporte 24x7 y capacitación Phone: +593 4 5107566 Cell: +593 987171157 - 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
[pgsql-es-ayuda] Como concatenar bases de datos de mismo esquema distinta data
Estimados, a los años por aquí, me encuentro con un problema: Necesito concatenar varias bases de datos en una sola y mi problema se dá con las primary keys seriales de cada tabla y las relaciones entre sí. Los que quiero hacer es: BD1 + DB2 = DB3 Me explico mejor: BASE DE DATOS 1: === TABLA 1: -- ID | FK_TABLA2 | DATA -- 1 | 2 | DATO 1 DB1T1 2 | 1 | DATO 2 DB1T1 TABLA 2: -- ID | DATA -- 1 | DATO 1 DB1T2 2 | DATO 2 DB1T2 BASE DE DATOS 2: === TABLA 1: -- ID | FK_TABLA2 | DATA 1 | 5 | DATO 1 DB2T1 2 | 3 | DATO 2 DB2T1 TABLA 2: -- ID | DATA -- 1 | DATO 1 DB2T2 2 | DATO 2 DB2T2 3 | DATO 3 DB2T2 4 | DATO 4 DB2T2 5 | DATO 5 DB2T2 BASE DE DATOS 3: === TABLA 1: -- ID | FK_TABLA1 | DATA --- 1 | 2 | DATO 1 DB1T1 2 | 1 | DATO 2 DB1T1 3 | 7 | DATO 1 DB2T1 3 | 5 | DATO 2 DB2T1 TABLA 2: -- ID | DATA 1 | DATO 1 DB1T2 2 | DATO 2 DB1T2 3 | DATO 1 DB2T2 4 | DATO 2 DB2T2 5 | DATO 3 DB2T2 6 | DATO 4 DB2T2 7 | DATO 5 DB2T2 Por ahora estoy haciendo un script en python para procesar esto pero son 15 tablas las que hay que concatenar y existen unas 20 relaciones. Espero me puedan dar alguna solución. -- Jonathan.