Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Mejores prácticas en procedimientos de carga de información

From: "Eduardo Arenas C(dot)" <edomax(at)gmail(dot)com>
To: "Manuel A(dot) Estevez Fernandez" <stvzito(at)gmail(dot)com>
Cc: Anthony Rafael Sotolongo León <asotolongo(at)uci(dot)cu>, pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Mejores prácticas en procedimientos de carga de información
Date: 2014-07-21 19:14:38
Message-ID: CAEe4h9qMCTGPTeBUSBTG+r2x4zHCn+zO3guPvb1X6_kGXymi+g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 21 de julio de 2014, 15:06, Manuel A. Estevez Fernandez<stvzito(at)gmail(dot)com
> escribió:

> Gracias por tus comentarios Anthony,
>
> Para mi mala fortuna no tengo manera de identificar los datos nuevos,
> debido a que se actualizan y borran registros de cualquier periodo dentro
> de la base de datos.
> Respecto a los indices, tengo identificados los campos y expresiones que
> necesito mi pregunta va enfocada a lo siguiente:
>
> ¿Que es más óptimo?
>
> Proceso 1 :
> -Creo tabla.
> -Cargo datos
> -Genero indices
>
> o
> Proceso 2:
> -Trunco tabla con los indices ya creados.
>
​- borrar indices​

> -Cargo Datos
>
​- crear nuevamente los indices​

​Si lo haces en forma nocturna sin usuarios

la otra opción es que cargues los datos en una temporal, y hagas la
comparación , y cargues en la tabla original solo las modificaciones...
dependiendo de cuantos registros nuevos se actualicen, no sería necesario
borrar y crear indices, y/o truncar la tabla original.​

​​De todas formas son cosas que tienes que probar que es lo que resulta mas
eficiente.

> Saludos.
>
>
> by:
>
> ISC. Manuel Alejandro Estévez Fernández
>
>
>
> El 20 de julio de 2014, 13:22, Anthony Rafael Sotolongo León <
> asotolongo(at)uci(dot)cu> escribió:
>
> Hola Manuel, yo he cargado datos similar a como lo estás haciendo pero sin
>> el truncate pues solo cargaba los datos nuevos, en la exportación que
>> realizaba a CSV desde otro sistema, solo exportaba los nuevos, y así me
>> evitaba el truncate y la carga de todos nuevamente y me funcionó bien (no
>> se si tu negocio permita hacer eso), el FREEZE tengo entendido que es para
>> que congele los datos que cargas, es decir que les asigne un ID de
>> transacción antiguo(), lo de los índices los debes establecer con los
>> atributos que se sean necesarios, los cuales no sabemos cuales son, puedes
>> identificarlos en tus consultas.
>>
>> saludos
>>
>>
>> El 7/17/2014 9:39 PM, Manuel A. Estevez Fernandez escribió:
>>
>> Buenas noches
>>>
>>> Saludos a todos.
>>>
>>> Actualmente estamos implementando un sistema, donde vamos a realizar una
>>> rutina de manera diaria que cargará toda la información de una base de
>>> datos (?) almacenada en dbfs, los cuales se extraen en archivos de texto y
>>> son cargados mediante un batch con sentencias :
>>>
>>> truncate table
>>> -c "\copy tabla from etc etc "
>>>
>>> Posteriormente se realizan algunas consultas para "limpiar la
>>> información" en el esquema de producción.
>>>
>>> Espero puedan ayudarme a esclarecer algunas de mis dudas:
>>>
>>> 1.- ¿Que es más conveniente, en términos de desempeño, hacer el truncado
>>> y cargar la información o eliminar las tablas, cargar la información y
>>> establecer indices?
>>> 2.-¿Para qué sirve la sentencia FREEZE en el copy y cómo puedo
>>> utilizarla desde el batch?
>>>
>>> Agradezco de antemano su apoyo y comentarios.
>>>
>>> by:
>>>
>>> ISC. Manuel Alejandro Estévez Fernández
>>>
>>>
>> VII Escuela Internacional de Verano en la UCI del 30 de junio al 11 de
>> julio de 2014. Ver www.uci.cu
>>
>
>

--
Eduardo Arenas Castillo.
+56 9 6629 1618

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Fernando Hevia 2014-07-22 05:03:40 Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Mejores prácticas en procedimientos de carga de información
Previous Message Manuel A. Estevez Fernandez 2014-07-21 19:06:04 Re: [pgsql-es-ayuda] Mejores prácticas en procedimientos de carga de información