Em 3 de junho de 2014 10:04, Danilo Silva <[email protected]> escreveu:
> > > > 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 > > Danilo Bom dia. A tabela que está recebendo a carga de dados não possui pk, fk, index e triggers associadas. Segue abaixo a estrutura da tabela que está recebendo a carga de dados. CREATE TABLE log_campo ( id_log_campo bigint NOT NULL, id_log_operacao bigint NOT NULL, nome_campo character varying(31) NOT NULL, valor_anterior character varying(4096), valor_atual character varying(4096), valor_anterior_blob bytea, valor_atual_blob bytea ) WITH ( OIDS=FALSE, toast.autovacuum_enabled=false ); -- Atenciosamente, André Geraldo dos Santos Certified Delphi® Developer XE2 Analista Desenvolvedor e Consultor Belo Horizonte / Minas Gerais E-mail:[email protected]
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
