Em 3 de junho de 2014 09:41, Rafael Fialho <[email protected]> escreveu:

> Flavio
>> Bom dia.
>>
>> Não posso utilizar o mecanismo de bulk loading pois estou importando
>> dados de outro SGBD.  *(SGBD Origin -> DataTransfer -> SGBD PostgreSQL)*
>>
>> O intrigante é que o PostgreSQL está praticamente ocioso sem carga de
>> processamento e consumo de memória.
>>
>> Estou executando um processo de transferência de dados faz umas 10 horas
>> e até o momento só consegui inserir 2 milhões de registros sendo que a
>> minha previsão inicial 550 mil por hora furou tendo em vista que a
>> performance foi degradando ao longo do tempo.
>>
>> Aguardo considerações.
>>
>
> Qual a configuração de discos que estás utilizando? E além disso, como
> estão configurados os diretórios do PostgreSQL?
> Existe separação do log de transações? (pg_xlog)
>
> Isso é muito importante e acredito que não foi levado em consideração, ou
> me perdoe se eu perdi alguma mensagem, pois estou utilizando a importação
> dos e-mails pra outra conta..
>
> Procure verificar no top ou no próprio psql, através da monitoração da
> view "pg_stat_activity", qual comando está sendo realizado neste momento,
> pra podermos identificar o que está "travando" o processo.
>
> ​Você não informou como é essa carga de dados (colunas envolvidas, tipo de
dado das colunas, etc). Verifique se na(s) tabela(s) envolvida(s) contém
triggers e/ou rules, como dito anteriormente, verifique também se existem
índices e constraints, se existir, remova, execute a carga de dados e
depois crie novamente​.

Veja o exemplo abaixo:

CREATE TEMP TABLE _carga (codigo serial PRIMARY KEY, numero integer);
INSERT INTO _carga (numero) (SELECT generate_series(1,35000000));

NOTICE:  CREATE TABLE will create implicit sequence "_carga_codigo_seq" for
serial column "_carga.codigo"
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index
"_carga_pkey" for table "_carga"
Query returned successfully: 35000000 rows affected, 127810 ms execution
time.

2 minutos para inserir 35 milhões de registro, é um exemplo *tosco*, só fiz
mesmo para que você veja como está fazendo a sua carga de dados.

[]s
Danilo
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a