ALTER TABLE  tutabla DISABLE TRIGGER ALL;

----- Mensaje original -----
De: "Alvaro Herrera" <alvhe...@2ndquadrant.com>
Para: "Gerardo Herzig" <gher...@fmed.uba.ar>
CC: "Fernando Rodiño" <frodi...@gmail.com>, "Ayuda" 
<pgsql-es-ayuda@postgresql.org>
Enviados: Viernes, 2 de Octubre 2015 11:47:36
Asunto: [MASSMAIL]Re: [pgsql-es-ayuda] insert eficiente

Gerardo Herzig escribió:

> Para los bulk inserts suele ayudar:
> * borrar los indices (y recrearlos luego de la insercion)
> * set maintenance_work_mem TO 'una buena porcion de la RAM' (para acelerar la 
> creacion de los indices)
> * set syncronous_commit to 'OFF' (si puedes tomar el riesgo de perder alguna 
> transaccion)
> * deshabilitar (temporalmente) autovacuum para la tabla que recibe esos datos

BEGIN;
DROP INDEX ...
TRUNCATE TABLE ...              -- borra todos los datos existentes
COPY (FROZEN) ...               -- carga los datos nuevos
CREATE INDEX ...
COMMIT

El TRUNCATE sirve para que el COPY no necesite hacer wal-logging de cada
inserción; el FROZEN de copy (es una opción muy nueva) permite que las
tuplas se inserten "frozen" y no requieran un freeze posterior (que
causaría más escrituras).

-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, 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
17 de octubre: Final Cubana 2015 del Concurso de Programación ACM-ICPC.
http://coj.uci.cu/contest/contestview.xhtml?cid07

-
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

Responder a