Si es algo asi iria por 3 un script en Java, Perl, PHP o lo que quieras que 
actualice eso , y listo , no me complicaria mas. Te diria con FDW pero no 
quiero complicarme y como es mensual en cron job



________________________________
From: pgsql-es-ayuda-ow...@postgresql.org <pgsql-es-ayuda-ow...@postgresql.org> 
on behalf of david buenaño <davidbuena...@gmail.com>
Sent: Wednesday, July 13, 2016 1:34 PM
To: jvenegasperu .
Cc: Francis Santiago; pgsql-es-ayuda
Subject: Re: [pgsql-es-ayuda] Fwd: Actualizar o insertar datos en postgres de 
SQL Server

Hola, muchas gracias por la ayuda, ya voy a hacer lo que me indicas.

efectivamente puede ser que esté subvalorando pentaho o quizás estoy explicando 
mal mi necesidad.

El negocio básicamente es que tengo un sistema que administra el pago de un 
bono o subsidio en mi país para lo cual de acuerdo a la normativa que tiene 
este bono, tengo que realizar cruces de datos mensualmente con diferentes 
instituciones como por ejemplo para saber si la persona ha fallecido, entre 
mucha otra información que posee de otras instituciones. Sin embargo, en el 
mismo sistema parte del negocio, van ingresando información que recopilan en 
visitas domiciliarias que también influye para el pago o no.

Actualmente las instituciones nos entregan en un archivo plano txt y 
manualmente cargo en una tabla y de esa tabla actualizo en las tablas que 
requiero.

La razón por la cual planteo la consulta de la interconexión con sql server es 
que donde llegan directamente esos archivos es a otra instancia de esta 
institución, que ellos cargan en su base de datos y para no realizar un doble 
proceso de carga quiero consumir desde mi base de datos solo lo que requiero.

Y con toda la información que se actualiza una vez por mes trabajan a diario 
todos los responsables vinculados a la gestión de este bono, verificando 
información de cada uno de los registros.

Finalmente, expuesto lo anterior, creo que para lo que requiero, debido a que 
la necesidad es actualizar la información para el trabajo por cada uno de los 
registros que opera con mi aplicativo, no me serviría pentaho, pues necesitaría 
que la información esté actualizada en postgres para el consumo de la informació

Espero haber aclarado más mi problema.

PD: Tal vez por mi desconocimiento de pentaho, puede ser que esté equivocado y 
lo mejor sea utilizar esa herramienta, voy a leer la información proporcionada 
y les contaré como me fue. Muchas gracias nuevamente

El 12 de julio de 2016, 23:45, jvenegasperu . 
<jvenegasp...@gmail.com<mailto:jvenegasp...@gmail.com>> escribió:
Hola David
Me sorprende que digas que Pentaho no te sirve o te estoy entendiendo mal quiza

Veras yo tengo una situación similar mensualmente debo actualizar mi base de 
datos postgres de una base de datos oracle.de<http://oracle.de> hecho en 
algunos casos hago actualizaciones diarias otras semanales quincenales y 
mensuales

Creo que lo que te sugiere Francis seria lo ideal pentaho es excelente para 
estas situaciones.

aqui te dejo el link de pentaho
http://community.pentaho.com/projects/data-integration/

y aqui un buen manual
http://wiki.pentaho.com/display/EAIes/Manual+del+Usuario+de+Spoon

Si te planteas las transformaciones y los jobs de pentaho como si fueran capas 
o clases en programación de seguro migrar los datos a postgres te resultara 
super facil seria mas o menos asi:

0.- Crea tus scripts con los datos que quieres obtener haciendo pruebas primero 
dentro del propio motor de BD origen y destino luego usaras esos scripts como 
primeros y ultimos pasos en las transformaciones

1.- crea las transformaciones en pentaho trabajando con pocas tablas digamos 
unas 4 o 5 no importa si tienes que procesar 30 tablas te sugiero hacer 
pequeñas transformaciones es como si en programacion estuvieras separando en 
archivos para mejorar su mantenimiento.

2.- Crea un trabajo donde vayas juntando las transformaciones. esto debe ser 
asi por si cambia la logica de negocio el trabajo seguira siendo el mismo y 
probablemente solo tengas que alterar alguna de las transformaciones sin tener 
que buscar dentro de todo un archivo complejo

3.- Genera una tarea programada para que ejecute el trabajo segun la frecuencia 
que necesitas mientras te tomas un cafe ;-)

saludos y espero te sirva

PD: hay casos en los que pentaho te da tipo de dato UNKNOW y no se puede migrar 
directo es decir alguien crea su propio tipo de dato que pentaho no entiende 
pero que si lo revisas finalmente es un dato cadena fecha etc en esos casos 
debes poner manualmente el tipo de dato que recibiras y luego si quieres al 
recibirlo lo parseas con un trigger o algun otro mecanismo y ya lo tienes igual 
que en el origen saludos.


















El 12 de julio de 2016, 11:07, david buenaño 
<davidbuena...@gmail.com<mailto:davidbuena...@gmail.com>> escribió:
Hola, Muchas gracias por la respuesta, sin embargo, para lo que requiero no me 
sirve, debido a que para las reglas del negocio y los controles puestos 
requiero que sea actualizado mes a mes la base de datos de postgres.

Actualmente se realiza el el cruce y actualización de información en mi base de 
datos cargando varios archivos, básicamente un procesamiento por lotes. Pero 
para el negocio institucional, se alojarán todos los archivos de otras 
instituciones (7) en una base de datos en SQL Server (maneja un sistema más 
grande) y de ahí necesito actualizar en postgres.

Muchas gracias nuevamente



El 12 de julio de 2016, 10:31, Francis Santiago 
<santiago...@gmail.com<mailto:santiago...@gmail.com>> escribió:
David!

Haz pensado en utilizar herramientas adicionales como Pentaho?  son bastante 
buenas para resolver este tipo de inconvenientes. Creas una ETL y listo. Creo 
es la solución más optima. Yo la he usado con MySQL, Oracle hacia PostgreSQL, 
por ejemplo.

Saludos;

El 12 de julio de 2016, 11:14, david 
buenaño<davidbuena...@gmail.com<mailto:davidbuena...@gmail.com>> escribió:
Hola, deseo actualizar algunos campos que tengo en una base de datos de 
postgres de una base de datos de SQL server que se encuentra en otro servidor.

Actualmente, lo realizo manualmente descargandome un reporte de la base de 
datos de SQL server y manualmente lo cargo en una tabla que creo en postgres y 
actualizo los campos que requiero combinando según coincida, sin embargo, este 
es un proceso mensual que deseo automatizar.

Adicionalmente hay que considerar que de la base de datos en SQL server 
solamente tengo privilegios de consulta, mientras que en la de postgres soy el 
DBA.

Aproximadamente los registros a actualizar serían unos 70.000

Me he planteado tres posibilidades:

1) Linkear de alguna manera entre las dos bases de datos y mediante procesos 
almacenados en postgres actualizar todos los campos que requiero y mediante un 
job o simplemente llamando a la función que crearía para actualizar o insertar 
los datos que requiero.

2) Mediante un aplicativo por ejemplo realizado en JAVA crear el procedimiento 
para que actualicen los registros.

3) Seguir realizando todo manualmente.

Agradezco mucho su ayuda orientandome cual sería la mejor posibilidad




--
Francis del Carmen Santiago Cermeño
Ingeniero  en Informática
Certification PostgreSQL Associate
Certification PostgreSQL 9.4 Professional
Twiter: sancfc
Celular: +56952456172<tel:%2B56952456172>
[LinkedIn]
https://www.linkedin.com/in/sancfc






--
José Mercedes Venegas Acevedo
cel Mov RPC 964185205

skype jvenegasperu
facebook jvenegasperu
<mailto:jvenegasp...@gmail.com>

Responder a