[pgbr-geral] Inserção de grandes volumes
Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção “normal” (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Inserção de grandes volumes
Olá, Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? Você quer carregar os dados de duas tabelas para um banco é isso? De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção “normal” (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] RES: Inserção de grandes volum es
Jesus Rodrigues, eu uso o posgtres e não largo, uso uma técnica que a seguinte, trabalho com Power builder 9 e faço o select com dados dentro do console da linguagem e depois faço o mesmo select no banco destino e faço o commit. caso seja muitos dados tem uma opção no pg que e a limit ( quantas linhas serão exibidas no select) e offset (a partir de quais linhas da pesquisa geral serão exibidas) De: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de Jesus Rodrigues Enviada em: quarta-feira, 17 de março de 2010 08:32 Para: pgbr-geral@listas.postgresql.org.br Assunto: [pgbr-geral] Inserção de grandes volumes Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção normal (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] erro ao instalar postgis 1.5
Olá, 2010/3/14 Dario dari...@yahoo.com.br ao tentar instalar o postgis 1.5 no windows xp aparece o seguinte erro, alguém pode ajudar? psql:C:/Arquivos de programas/PostgreSQL/8.4/share/contrib/postgis-1.5/postgis.sql:58: ERROR: could not access file $libdir/postgis-1.5: No such file or directory Como você executou todo o processo de instalação do postgis? Pode detalhar cada passo? -- Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 10http://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/- Celebridadeshttp://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/celebridades/- Músicahttp://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/m%C3%BAsica/- Esporteshttp://br.rd.yahoo.com/mail/taglines/mail/*http://br.maisbuscados.yahoo.com/esportes/ ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Inserção de grandes volumes
OBS:Altere alguns parametros quando for dar uma grande inserção no seu bd...checkpoint_segments checkpoint_timeoututilize copy ao inves do insert...abraços!João Cosme de Oliveira Júnior "Lembre-se que da conduta de cada um depende o destino de todos." Seja inteligente, use Software livre!!! LPI Certified LPI000185554 Em 17/03/2010 às 08:51 horas, pgbr-geral@listas.postgresql.org.br escreveu:Olá,Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.com escreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema.Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre?Você quer carregar os dados de duas tabelas para um banco é isso?De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B?Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção normal (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s-- JotaCommhttp://jotacomm.wordpress.com "Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO), empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é enviada exclusivamente a seu destinatário e pode conter informações confidenciais, protegidas por sigilo profissional. Sua utilização desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente, esclarecendo o equívoco." "This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a government company established under Brazilian law (5.615/70) -- is directed exclusively to its addressee and may contain confidential data, protected under professional secrecy rules. Its unauthorized use is illegal and may subject the transgressor to the law's penalties. If you're not the addressee, please send it back, elucidating the failure." ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Inserção de grandes volumes
JotaComm, Ok posso usar o pgloader. Entretanto, não consigo imaginar como carregar dados para duas tabela A e B utilizando um unico arquivo. Imagine, a chave de A é colocada em B, ok. Ex: A1 A2 B1,A1 B2,A1 B3,A1 B1,A2 Como o banco saberia que A1 tem os filhos ( B1, B2, B3)? Usar o loader é tranquilo, mas não vejo uma forma de orgazinar a estrutura das tabelas em um unico arquivo, principalmente ser for um modelo mais complexo. Abs Em 17 de março de 2010 08:51, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? Você quer carregar os dados de duas tabelas para um banco é isso? De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção “normal” (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Inserção de grandes volumes
Olá, Em 17 de março de 2010 09:21, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: JotaComm, Ok posso usar o pgloader. Entretanto, não consigo imaginar como carregar dados para duas tabela A e B utilizando um unico arquivo. Imagine, a chave de A é colocada em B, ok. Ex: A1 A2 B1,A1 B2,A1 B3,A1 B1,A2 Como o banco saberia que A1 tem os filhos ( B1, B2, B3)? Usar o loader é tranquilo, mas não vejo uma forma de orgazinar a estrutura das tabelas em um unico arquivo, principalmente ser for um modelo mais complexo. Segundo o que você falou sua dúvida era como carregar dados para duas tabelas, vamos ao exemplo bem simples. CREATE TABLE tab1(codigo INTEGER PRIMARY KEY); CREATE TABLE tab2(codigo INTEGER PRIMARY KEY,codigo_tab01 INTEGER REFERENCES tab1); Arquivo a ser carregado: COPY tab1 FROM '/tmp/arquivo_tabela1.txt' WITH DELIMITER ';' NULL AS ''; COPY tab2 FROM '/tmp/arquivo_tabela2.txt' WITH DELIMITER ';' NULL AS ''; Abs Em 17 de março de 2010 08:51, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? Você quer carregar os dados de duas tabelas para um banco é isso? De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção “normal” (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Inserção de grandes volumes
1-pode desabilitar as constraints e depois habilitar ...2- tem como checar as contraints no final da insercao no momento me esqueci... da uma corrida atrasJoão Cosme de Oliveira Júnior "Lembre-se que da conduta de cada um depende o destino de todos." Seja inteligente, use Software livre!!! LPI Certified LPI000185554 Em 17/03/2010 às 09:34 horas, pgbr-geral@listas.postgresql.org.br escreveu:Olá,Em 17 de março de 2010 09:21, Jesus Rodrigues jesusrodrigu...@gmail.com escreveu: JotaComm,Ok posso usar o pgloader. Entretanto, não consigo imaginar como carregar dados para duas tabela A e B utilizando um unico arquivo. Imagine, a chave de A é colocada em B, ok. Ex: A1A2B1,A1B2,A1B3,A1B1,A2Como o banco saberia que A1 tem os filhos ( B1, B2, B3)? Usar o loader é tranquilo, mas não vejo uma forma de orgazinar a estrutura das tabelas em um unico arquivo, principalmente ser for um modelo mais complexo. Segundo o que você falou sua dúvida era como carregar dados para duas tabelas, vamos ao exemplo bem simples. CREATE TABLE tab1(codigo INTEGER PRIMARY KEY); CREATE TABLE tab2(codigo INTEGER PRIMARY KEY,codigo_tab01 INTEGER REFERENCES tab1); Arquivo a ser carregado: COPY tab1 FROM '/tmp/arquivo_tabela1.txt' WITH DELIMITER ';' NULL AS '';COPY tab2 FROM '/tmp/arquivo_tabela2.txt' WITH DELIMITER ';' NULL AS ''; AbsEm 17 de março de 2010 08:51, JotaComm jota.c...@gmail.com escreveu: Olá,Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.com escreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema.Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre?Você quer carregar os dados de duas tabelas para um banco é isso?De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B?Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção normal (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s-- JotaCommhttp://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s-- JotaCommhttp://jotacomm.wordpress.com "Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO), empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é enviada exclusivamente a seu destinatário e pode conter informações confidenciais, protegidas por sigilo profissional. Sua utilização desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente, esclarecendo o equívoco." "This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a government company established under Brazilian law (5.615/70) -- is directed exclusively to its addressee and may contain confidential data, protected under professional secrecy rules. Its unauthorized use is illegal and may subject the transgressor to the law's penalties. If you're not the addressee, please send it back, elucidating the failure." ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Inserção de grandes volumes
Fala, João Cosme Apenas um adendo ao que você comentou. Em 17 de março de 2010 09:36, Joao Cosme de Oliveira Junior joao.co...@serpro.gov.br escreveu: 1-pode desabilitar as constraints e depois habilitar ... Na verdade, teria que deletar as constraints pois no PG não tem como desabilita-las por um ALTER TABLE DISABLE CONSTRAINT. 2- tem como checar as contraints no final da insercao no momento me esqueci... da uma corrida atras E aqui acho que você se referiu as constraints postergáveis (DEFERRABLE CONSTRAINTS), só que para isso é necessário criar a FK com esta condição. João Cosme de Oliveira Júnior Lembre-se que da conduta de cada um depende o destino de todos. Seja inteligente, use Software livre!!! LPI Certified LPI000185554 Em 17/03/2010 às 09:34 horas, pgbr-ge...@listas.postgresql.org.brescreveu: Olá, Em 17 de março de 2010 09:21, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: JotaComm, Ok posso usar o pgloader. Entretanto, não consigo imaginar como carregar dados para duas tabela A e B utilizando um unico arquivo. Imagine, a chave de A é colocada em B, ok. Ex: A1 A2 B1,A1 B2,A1 B3,A1 B1,A2 Como o banco saberia que A1 tem os filhos ( B1, B2, B3)? Usar o loader é tranquilo, mas não vejo uma forma de orgazinar a estrutura das tabelas em um unico arquivo, principalmente ser for um modelo mais complexo. Segundo o que você falou sua dúvida era como carregar dados para duas tabelas, vamos ao exemplo bem simples. CREATE TABLE tab1(codigo INTEGER PRIMARY KEY); CREATE TABLE tab2(codigo INTEGER PRIMARY KEY,codigo_tab01 INTEGER REFERENCES tab1); Arquivo a ser carregado: COPY tab1 FROM '/tmp/arquivo_tabela1.txt' WITH DELIMITER ';' NULL AS ''; COPY tab2 FROM '/tmp/arquivo_tabela2.txt' WITH DELIMITER ';' NULL AS ''; Abs Em 17 de março de 2010 08:51, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.com escreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? Você quer carregar os dados de duas tabelas para um banco é isso? De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção “normal” (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.comhttp://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.comhttp://jotacomm.wordpress.com Esta mensagem do SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO), empresa pública federal regida pelo disposto na Lei Federal nº 5.615, é enviada exclusivamente a seu destinatário e pode conter informações confidenciais, protegidas por sigilo profissional. Sua utilização desautorizada é ilegal e sujeita o infrator às penas da lei. Se você a recebeu indevidamente, queira, por gentileza, reenviá-la ao emitente, esclarecendo o equívoco. This message from SERVIÇO FEDERAL DE PROCESSAMENTO DE DADOS (SERPRO) -- a government company established under Brazilian law (5.615/70) -- is directed exclusively to its addressee and may contain confidential data, protected under professional secrecy rules. Its unauthorized use is illegal and may subject the transgressor to the law's penalties. If you're not
Re: [pgbr-geral] Inserção de grandes volumes
Conforme disse entendi a ideia de usar o loader, Contudo vc usa dois arquivos arquivo_tabela1.txt e arquivo_tabela2.txt. Minha pergunta era: Séria possível utilizar um único arquivo? Obrigado Em 17 de março de 2010 09:34, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 09:21, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: JotaComm, Ok posso usar o pgloader. Entretanto, não consigo imaginar como carregar dados para duas tabela A e B utilizando um unico arquivo. Imagine, a chave de A é colocada em B, ok. Ex: A1 A2 B1,A1 B2,A1 B3,A1 B1,A2 Como o banco saberia que A1 tem os filhos ( B1, B2, B3)? Usar o loader é tranquilo, mas não vejo uma forma de orgazinar a estrutura das tabelas em um unico arquivo, principalmente ser for um modelo mais complexo. Segundo o que você falou sua dúvida era como carregar dados para duas tabelas, vamos ao exemplo bem simples. CREATE TABLE tab1(codigo INTEGER PRIMARY KEY); CREATE TABLE tab2(codigo INTEGER PRIMARY KEY,codigo_tab01 INTEGER REFERENCES tab1); Arquivo a ser carregado: COPY tab1 FROM '/tmp/arquivo_tabela1.txt' WITH DELIMITER ';' NULL AS ''; COPY tab2 FROM '/tmp/arquivo_tabela2.txt' WITH DELIMITER ';' NULL AS ''; Abs Em 17 de março de 2010 08:51, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.com escreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? Você quer carregar os dados de duas tabelas para um banco é isso? De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção “normal” (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Inserção de grandes volumes
Olá, Em 17 de março de 2010 09:46, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: Conforme disse entendi a ideia de usar o loader, Contudo vc usa dois arquivos arquivo_tabela1.txt e arquivo_tabela2.txt. Minha pergunta era: Séria possível utilizar um único arquivo? Acho que agora entendi o que você quis dizer :) Na verdade eu teria um arquivo que chamaria os arquivos contendo os dados das tabelas, neste caso poderiam ser vários arquivos, um para cada tabela. E a sua dúvida é, ter todos os dados em um único arquivo e carregar este arquivo, até onde eu sei isso não seria possível, pois não vejo como interpretar quando termina os dados de uma tabela e quando começam os dados do próxima tabela. Obrigado Em 17 de março de 2010 09:34, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 09:21, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: JotaComm, Ok posso usar o pgloader. Entretanto, não consigo imaginar como carregar dados para duas tabela A e B utilizando um unico arquivo. Imagine, a chave de A é colocada em B, ok. Ex: A1 A2 B1,A1 B2,A1 B3,A1 B1,A2 Como o banco saberia que A1 tem os filhos ( B1, B2, B3)? Usar o loader é tranquilo, mas não vejo uma forma de orgazinar a estrutura das tabelas em um unico arquivo, principalmente ser for um modelo mais complexo. Segundo o que você falou sua dúvida era como carregar dados para duas tabelas, vamos ao exemplo bem simples. CREATE TABLE tab1(codigo INTEGER PRIMARY KEY); CREATE TABLE tab2(codigo INTEGER PRIMARY KEY,codigo_tab01 INTEGER REFERENCES tab1); Arquivo a ser carregado: COPY tab1 FROM '/tmp/arquivo_tabela1.txt' WITH DELIMITER ';' NULL AS ''; COPY tab2 FROM '/tmp/arquivo_tabela2.txt' WITH DELIMITER ';' NULL AS ''; Abs Em 17 de março de 2010 08:51, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.com escreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? Você quer carregar os dados de duas tabelas para um banco é isso? De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção “normal” (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Inserção de grandes volumes
Isso mesmo, Tenho a restrição de utilizar um único arquivo. Obrigado pela ajuda! Se alguém da lista tiver mais alguma ideia: Como carregar múltiplas tabelas utilizando um único arquivo para o pgloader? []s Em 17 de março de 2010 09:52, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 09:46, Jesus Rodrigues jesusrodrigu...@gmail.comescreveu: Conforme disse entendi a ideia de usar o loader, Contudo vc usa dois arquivos arquivo_tabela1.txt e arquivo_tabela2.txt. Minha pergunta era: Séria possível utilizar um único arquivo? Acho que agora entendi o que você quis dizer :) Na verdade eu teria um arquivo que chamaria os arquivos contendo os dados das tabelas, neste caso poderiam ser vários arquivos, um para cada tabela. E a sua dúvida é, ter todos os dados em um único arquivo e carregar este arquivo, até onde eu sei isso não seria possível, pois não vejo como interpretar quando termina os dados de uma tabela e quando começam os dados do próxima tabela. Obrigado Em 17 de março de 2010 09:34, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 09:21, Jesus Rodrigues jesusrodrigu...@gmail.com escreveu: JotaComm, Ok posso usar o pgloader. Entretanto, não consigo imaginar como carregar dados para duas tabela A e B utilizando um unico arquivo. Imagine, a chave de A é colocada em B, ok. Ex: A1 A2 B1,A1 B2,A1 B3,A1 B1,A2 Como o banco saberia que A1 tem os filhos ( B1, B2, B3)? Usar o loader é tranquilo, mas não vejo uma forma de orgazinar a estrutura das tabelas em um unico arquivo, principalmente ser for um modelo mais complexo. Segundo o que você falou sua dúvida era como carregar dados para duas tabelas, vamos ao exemplo bem simples. CREATE TABLE tab1(codigo INTEGER PRIMARY KEY); CREATE TABLE tab2(codigo INTEGER PRIMARY KEY,codigo_tab01 INTEGER REFERENCES tab1); Arquivo a ser carregado: COPY tab1 FROM '/tmp/arquivo_tabela1.txt' WITH DELIMITER ';' NULL AS ''; COPY tab2 FROM '/tmp/arquivo_tabela2.txt' WITH DELIMITER ';' NULL AS ''; Abs Em 17 de março de 2010 08:51, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 08:32, Jesus Rodrigues jesusrodrigu...@gmail.com escreveu: Pessoal, Preciso realizar carga de grandes volumes em banco postgre. Segue um exemplo do problema. Uma correção, o nome do banco não é Postgre e sim Postgres ou PostgreSQL. Tenho duas tabela A e B, em que A contém múltiplas ocorrências de B (1 para N). Gostaria de carregar essas tabelas via loader, semelhante ao comando existente no oracle. Meu modelo é mais complexo, mas esse foi apenas um pequeno exemplo. Pergunta-se: 1º Existe um processo de carga semelhante (carga via loader) no postgre? Você quer carregar os dados de duas tabelas para um banco é isso? De uma olhada no pgloader [1] [1] http://pgloader.projects.postgresql.org/ 2º É possível carregar as duas tabelas (A e B) utilizando um único arquivo? Por exemplo, se esse arquivo tiver os dados estruturados em forma de um xml ou de forma hierárquica. Ou é necessário possuir dois arquivos, uma para os dados da tabela A e outro para os dados da tabela B? Pode ser um arquivo para carregar as duas tabelas. 3º Para carga de grandes volumes, um processo via loader é mais eficiente que um processo de inserção “normal” (abre transação, insere tudo, commit, fecha fecha transação)? Obrigado, ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Criar Linguagem Pl TCL no banco
Boa tarde a todos, Estou tetando criar a linguagem pltcl no meu banco de dados com o seguinte comando: createlang.exe -U postgres -d nomebanco pltcl E esta dando o seguinte erro: createlang: instalação de linguagem falhou: ERRO: não pôde carregar biblioteca C:/Program Files/PostgreSQL/8.4/lib/pltcl.dll: unknown error 126 Versão do Postgres: 8.4.2-1 SO: Windos Vista Alguem sabe como resolver este problema, e criar a linguagem no banco? Abraço a todos. Gabriel dos Santos. _ Não deixe rastros ao navegar na Internet. Instale Grátis o Internet Explorer 8 agora. http://go.microsoft.com/?linkid=9707132___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Timer no Servidor Postgres para Dispa rar funções
Boa tarde a todos, Gostaria de saber se tem como de fazer programar no Servidor Postgres um timer para disparar umas funções de tempo em tempo. Deixar tipo um timer dentro do banco. Tudo de bom, a todos Gabriel _ Com o Internet Explorer 8 você fica mais protegido contra ameaças da web. Saiba mais. http://go.microsoft.com/?linkid=9707132___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Timer no Servidor Postgres para Dispa rar funções
Olá, Em 17 de março de 2010 13:47, GABRIEL DOS SANTOS gabrielworks...@hotmail.com escreveu: Boa tarde a todos, Gostaria de saber se tem como de fazer programar no Servidor Postgres um timer para disparar umas funções de tempo em tempo. Deixar tipo um timer dentro do banco. Você se refere a tarefas agendadas que de tempos em tempos entram em execução? De uma olhada no pgAgent [1] e no crontab (Linux) [2]. [1] http://www.pgadmin.org/docs/1.4/pgagent.html [2] http://pt.wikipedia.org/wiki/Crontab Tudo de bom, a todos Gabriel -- Transforme-se em personagens engraçados. Conheça o novo site de I Love Messenger.http://ilm.windowslive.com.br/?ocid=ILM:ILM:Hotmail:Tagline:1x1:Tagline ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Criar Linguagem Pl TCL no banco
Olá, Em 17 de março de 2010 13:43, GABRIEL DOS SANTOS gabrielworks...@hotmail.com escreveu: Boa tarde a todos, Estou tetando criar a linguagem pltcl no meu banco de dados com o seguinte comando: createlang.exe -U postgres -d nomebanco pltcl E esta dando o seguinte erro: createlang: instalação de linguagem falhou: ERRO: não pôde carregar biblioteca C:/Program Files/PostgreSQL/8.4/lib/pltcl.dll: unknown error 126 A biblioteca esta no caminho apontado pela mensagem de erro? Versão do Postgres: 8.4.2-1 SO: Windos Vista Alguem sabe como resolver este problema, e criar a linguagem no banco? Abraço a todos. Gabriel dos Santos. -- Acesse todas as suas contas de e-mail num único login dentro do Hotmail. Veja como.http://www.windowslive.com.br/public/tip.aspx/view/16?product=1ocid=HotmailPlan:WindowsLive:Hotmail:Tagline:1x1:DicasWL ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] REF. PSQLODBC - Instalação Sile nciosa.
Ola Pessoal, Preciso executar a instalação silenciosa do psqlodbc; para não precisar instalar o banco em maquinas que irei precisar apenas do ODBC. Alguem tem um link ? Att, Paulo. VisualP Sistemas. ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] Duvida Nested Loop
Pessoal estou executando a seguinte consulta(segue abaixo) com o resultado de explain(segue abaixo) a tabela possui a mesma quantidade de registros 1.000.000, ambas possuem indices para os campos de juncao e campos da condicao. Porem o valor de Nested Loop esta alto.Teria algo que possa ser feito para melhorar isto? Limit (cost=0.00..22827.32 rows=1 width=39) - Nested Loop (cost=0.00..760910.00 rows=33 width=39) Join Filter: (a.datahora_processamento b.datahora_processamento) - Seq Scan on cnpj_rf b (cost=0.00..24554.00 rows=100 width=23) - Index Scan using cnpjkey on ecnpj_teste_repro a (cost=0.00..0.72 rows=1 width=39) Index Cond: (a.cnpj = (b.cnpj)::bpchar) Filter: ((a.flag_processamento = 22) AND (a.flag_relacional = 0)) select a.cnpj as cnpj_atual, cdmatriz_changed , data_abertura_changed, razao_social_changed , fantasia_changed, cdnatureza_changed, logradouro_changed, numero_changed, complemento_changed, cep_changed, bairro_changed, municipio_changed, uf_changed, cdsitcadastral_changed, cdmotivosituacao_changed, cdsitcadastralesp_changed, cnaes_changed, a.datahora_processamento as data_atual from ecnpj_teste_repro a left join cnpj_rf b on a.cnpj=b.cnpj where a.flag_processamento=22 and a.flag_relacional=0 and a.datahora_processamento b.datahora_processamento LIMIT 1 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] (sem assunto)
Pessoal, boa tarde. Sou novo na lista, e já tenho um problema no mínimo curioso: Todos as noites rodamos o VACUUM (sem opção full) em algumas tabelas, porém as mesmas estão crescendo dia após dia de tamanho. A impressão que tenho é q o vacuum não está marcando os registros removidos para reutilização, porém não acusa erro e fica um tempo processando. São tabelas de histórico, q armazenam normalmente 7 dias de informação, então uma vez por dia removemos o dia mais antigo e aplicamos o vacuum. Trabalhamos na versão 7.2 do Postgresql. Fiz um teste com vacuum full e, após 7 horas de processamento, o espaço foi liberado. Tamanho original da base: 60 GB e após vacuum full: 45 GB. Se alguém souber alguma coisa ou tiver uma sugestão de investigação eu agradeço! Abraços!! Fabio Barros _ Quer transformar suas fotos em emoticons para Messenger? Conheça o I Love Messenger. http://ilm.windowslive.com.br/?ocid=ILM:ILM:Hotmail:Tagline:1x1:Tagline___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Duvida Nested Loop
Olá, Em 17 de março de 2010 16:51, Tiago Valério tiagosvale...@gmail.comescreveu: Pessoal estou executando a seguinte consulta(segue abaixo) com o resultado de explain(segue abaixo) a tabela possui a mesma quantidade de registros 1.000.000, ambas possuem indices para os campos de juncao e campos da condicao. Porem o valor de Nested Loop esta alto.Teria algo que possa ser feito para melhorar isto? Quando foi a última vez que rodou o ANALYZE? Limit (cost=0.00..22827.32 rows=1 width=39) - Nested Loop (cost=0.00..760910.00 rows=33 width=39) Join Filter: (a.datahora_processamento b.datahora_processamento) - Seq Scan on cnpj_rf b (cost=0.00..24554.00 rows=100 width=23) - Index Scan using cnpjkey on ecnpj_teste_repro a (cost=0.00..0.72 rows=1 width=39) Index Cond: (a.cnpj = (b.cnpj)::bpchar) Filter: ((a.flag_processamento = 22) AND (a.flag_relacional = 0)) select a.cnpj as cnpj_atual, cdmatriz_changed , data_abertura_changed, razao_social_changed , fantasia_changed, cdnatureza_changed, logradouro_changed, numero_changed, complemento_changed, cep_changed, bairro_changed, municipio_changed, uf_changed, cdsitcadastral_changed, cdmotivosituacao_changed, cdsitcadastralesp_changed, cnaes_changed, a.datahora_processamento as data_atual from ecnpj_teste_repro a left join cnpj_rf b on a.cnpj=b.cnpj where a.flag_processamento=22 and a.flag_relacional=0 and a.datahora_processamento b.datahora_processamento LIMIT 1 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] (sem assunto)
Olá, Em 17 de março de 2010 16:52, fabio barros fabi...@hotmail.com escreveu: Pessoal, boa tarde. Sou novo na lista, e já tenho um problema no mínimo curioso: Todos as noites rodamos o VACUUM (sem opção full) em algumas tabelas, porém as mesmas estão crescendo dia após dia de tamanho. A impressão que tenho é q o vacuum não está marcando os registros removidos para reutilização, porém não acusa erro e fica um tempo processando. São tabelas de histórico, q armazenam normalmente 7 dias de informação, então uma vez por dia removemos o dia mais antigo e aplicamos o vacuum. Você fez um VACUUM VERBOSE? Qual o resultado dele? Trabalhamos na versão 7.2 do Postgresql. Qual a dificuldade em migrar para um versão mais nova? Fiz um teste com vacuum full e, após 7 horas de processamento, o espaço foi liberado. Tamanho original da base: 60 GB e após vacuum full: 45 GB. Se alguém souber alguma coisa ou tiver uma sugestão de investigação eu agradeço! Abraços!! Fabio Barros -- Quer falar com seus amigos do Messenger sem instalar nada? Clique aqui e veja como.http://www.windowslive.com.br/public/tip.aspx/view/24?product=1ocid=HotmailPlan:WindowsLive:Hotmail:Tagline:1x1:DicasWL ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Duvida Nested Loop
Ja tinha feito isto antes de dar o explain porem na duvida fiz novamente e a saida foi a mesma Limit (cost=0.00..22827.32 rows=1 width=39) - Nested Loop (cost=0.00..760910.00 rows=33 width=39) Join Filter: (a.datahora_processamento b.datahora_processamento) - Seq Scan on cnpj_rf b (cost=0.00..24554.00 rows=100 width=23) - Index Scan using cnpjkey on ecnpj_teste_repro a (cost=0.00..0.72 rows=1 width=39) Index Cond: (a.cnpj = (b.cnpj)::bpchar) Filter: ((a.flag_processamento = 22) AND (a.flag_relacional = 0)) Em 17 de março de 2010 16:55, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 16:51, Tiago Valério tiagosvale...@gmail.comescreveu: Pessoal estou executando a seguinte consulta(segue abaixo) com o resultado de explain(segue abaixo) a tabela possui a mesma quantidade de registros 1.000.000, ambas possuem indices para os campos de juncao e campos da condicao. Porem o valor de Nested Loop esta alto.Teria algo que possa ser feito para melhorar isto? Quando foi a última vez que rodou o ANALYZE? Limit (cost=0.00..22827.32 rows=1 width=39) - Nested Loop (cost=0.00..760910.00 rows=33 width=39) Join Filter: (a.datahora_processamento b.datahora_processamento) - Seq Scan on cnpj_rf b (cost=0.00..24554.00 rows=100 width=23) - Index Scan using cnpjkey on ecnpj_teste_repro a (cost=0.00..0.72 rows=1 width=39) Index Cond: (a.cnpj = (b.cnpj)::bpchar) Filter: ((a.flag_processamento = 22) AND (a.flag_relacional = 0)) select a.cnpj as cnpj_atual, cdmatriz_changed , data_abertura_changed, razao_social_changed , fantasia_changed, cdnatureza_changed, logradouro_changed, numero_changed, complemento_changed, cep_changed, bairro_changed, municipio_changed, uf_changed, cdsitcadastral_changed, cdmotivosituacao_changed, cdsitcadastralesp_changed, cnaes_changed, a.datahora_processamento as data_atual from ecnpj_teste_repro a left join cnpj_rf b on a.cnpj=b.cnpj where a.flag_processamento=22 and a.flag_relacional=0 and a.datahora_processamento b.datahora_processamento LIMIT 1 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Duvida Nested Loop
Opa, Em 17 de março de 2010 17:01, Tiago Valério tiagosvale...@gmail.comescreveu: Ja tinha feito isto antes de dar o explain porem na duvida fiz novamente e a saida foi a mesma Limit (cost=0.00..22827.32 rows=1 width=39) - Nested Loop (cost=0.00..760910.00 rows=33 width=39) Join Filter: (a.datahora_processamento b.datahora_processamento) - Seq Scan on cnpj_rf b (cost=0.00..24554.00 rows=100 width=23) - Index Scan using cnpjkey on ecnpj_teste_repro a (cost=0.00..0.72 rows=1 width=39) Index Cond: (a.cnpj = (b.cnpj)::bpchar) Filter: ((a.flag_processamento = 22) AND (a.flag_relacional = 0)) Olhando rapidamente, o problema me parece na leitura sequencial que esta acontecendo na tabela cnpj_rf, acredito que um índice nesta tabela deve resolver o problema. Em 17 de março de 2010 16:55, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 16:51, Tiago Valério tiagosvale...@gmail.comescreveu: Pessoal estou executando a seguinte consulta(segue abaixo) com o resultado de explain(segue abaixo) a tabela possui a mesma quantidade de registros 1.000.000, ambas possuem indices para os campos de juncao e campos da condicao. Porem o valor de Nested Loop esta alto.Teria algo que possa ser feito para melhorar isto? Quando foi a última vez que rodou o ANALYZE? Limit (cost=0.00..22827.32 rows=1 width=39) - Nested Loop (cost=0.00..760910.00 rows=33 width=39) Join Filter: (a.datahora_processamento b.datahora_processamento) - Seq Scan on cnpj_rf b (cost=0.00..24554.00 rows=100 width=23) - Index Scan using cnpjkey on ecnpj_teste_repro a (cost=0.00..0.72 rows=1 width=39) Index Cond: (a.cnpj = (b.cnpj)::bpchar) Filter: ((a.flag_processamento = 22) AND (a.flag_relacional = 0)) select a.cnpj as cnpj_atual, cdmatriz_changed , data_abertura_changed, razao_social_changed , fantasia_changed, cdnatureza_changed, logradouro_changed, numero_changed, complemento_changed, cep_changed, bairro_changed, municipio_changed, uf_changed, cdsitcadastral_changed, cdmotivosituacao_changed, cdsitcadastralesp_changed, cnaes_changed, a.datahora_processamento as data_atual from ecnpj_teste_repro a left join cnpj_rf b on a.cnpj=b.cnpj where a.flag_processamento=22 and a.flag_relacional=0 and a.datahora_processamento b.datahora_processamento LIMIT 1 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Duvida Nested Loop
O curioso eh que a juncao do join esta sendo feito por dois campos com pk, em um ele usa o indice da pk e no outro nao.E mesmo para os outros campos do where tambem tem indices . Em 17 de março de 2010 17:04, JotaComm jota.c...@gmail.com escreveu: Opa, Em 17 de março de 2010 17:01, Tiago Valério tiagosvale...@gmail.comescreveu: Ja tinha feito isto antes de dar o explain porem na duvida fiz novamente e a saida foi a mesma Limit (cost=0.00..22827.32 rows=1 width=39) - Nested Loop (cost=0.00..760910.00 rows=33 width=39) Join Filter: (a.datahora_processamento b.datahora_processamento) - Seq Scan on cnpj_rf b (cost=0.00..24554.00 rows=100 width=23) - Index Scan using cnpjkey on ecnpj_teste_repro a (cost=0.00..0.72 rows=1 width=39) Index Cond: (a.cnpj = (b.cnpj)::bpchar) Filter: ((a.flag_processamento = 22) AND (a.flag_relacional = 0)) Olhando rapidamente, o problema me parece na leitura sequencial que esta acontecendo na tabela cnpj_rf, acredito que um índice nesta tabela deve resolver o problema. Em 17 de março de 2010 16:55, JotaComm jota.c...@gmail.com escreveu: Olá, Em 17 de março de 2010 16:51, Tiago Valério tiagosvale...@gmail.comescreveu: Pessoal estou executando a seguinte consulta(segue abaixo) com o resultado de explain(segue abaixo) a tabela possui a mesma quantidade de registros 1.000.000, ambas possuem indices para os campos de juncao e campos da condicao. Porem o valor de Nested Loop esta alto.Teria algo que possa ser feito para melhorar isto? Quando foi a última vez que rodou o ANALYZE? Limit (cost=0.00..22827.32 rows=1 width=39) - Nested Loop (cost=0.00..760910.00 rows=33 width=39) Join Filter: (a.datahora_processamento b.datahora_processamento) - Seq Scan on cnpj_rf b (cost=0.00..24554.00 rows=100 width=23) - Index Scan using cnpjkey on ecnpj_teste_repro a (cost=0.00..0.72 rows=1 width=39) Index Cond: (a.cnpj = (b.cnpj)::bpchar) Filter: ((a.flag_processamento = 22) AND (a.flag_relacional = 0)) select a.cnpj as cnpj_atual, cdmatriz_changed , data_abertura_changed, razao_social_changed , fantasia_changed, cdnatureza_changed, logradouro_changed, numero_changed, complemento_changed, cep_changed, bairro_changed, municipio_changed, uf_changed, cdsitcadastral_changed, cdmotivosituacao_changed, cdsitcadastralesp_changed, cnaes_changed, a.datahora_processamento as data_atual from ecnpj_teste_repro a left join cnpj_rf b on a.cnpj=b.cnpj where a.flag_processamento=22 and a.flag_relacional=0 and a.datahora_processamento b.datahora_processamento LIMIT 1 ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral []s -- JotaComm http://jotacomm.wordpress.com ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] (sem assunto)
Em 17 de março de 2010 16:52, fabio barros fabi...@hotmail.com escreveu: Pessoal, boa tarde. Sou novo na lista, e já tenho um problema no mínimo curioso: Todos as noites rodamos o VACUUM (sem opção full) em algumas tabelas, porém as mesmas estão crescendo dia após dia de tamanho. A impressão que tenho é q o vacuum não está marcando os registros removidos para reutilização, porém não acusa erro e fica um tempo processando. São tabelas de histórico, q armazenam normalmente 7 dias de informação, então uma vez por dia removemos o dia mais antigo e aplicamos o vacuum. Trabalhamos na versão 7.2 do Postgresql. Caramba! Uma versão de 2002! Provavelmente foram feitos muitos melhoramentos no VACUUM desde esta versão. Além disso não é mais dado suporte a esta versão, veja: http://wiki.postgresql.org/wiki/PostgreSQL_Release_Support_Policy Atualize para uma versão mais recente o quanto antes. (A atual é a 8.4.3 de 15.mar.2010) Fiz um teste com vacuum full e, após 7 horas de processamento, o espaço foi liberado. Tamanho original da base: 60 GB e após vacuum full: 45 GB. Se alguém souber alguma coisa ou tiver uma sugestão de investigação eu agradeço! Osvaldo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Criar Linguagem Pl TCL no banco
JotaCom verifiquei o caminho..e o arquivo esta sim no caminho apontado...pela mensagem... Tem outra ideia do que seja? Valeu...a força.. Gabriel --- Olá, Em 17 de março de 2010 13:43, GABRIEL DOS SANTOS gabrielworks...@hotmail.com escreveu: Boa tarde a todos, Estou tetando criar a linguagem pltcl no meu banco de dados com o seguinte comando: createlang.exe -U postgres -d nomebanco pltcl E esta dando o seguinte erro: createlang: instalação de linguagem falhou: ERRO: não pôde carregar biblioteca C:/Program Files/PostgreSQL/8.4/lib/pltcl.dll: unknown error 126 A biblioteca esta no caminho apontado pela mensagem de erro? Versão do Postgres: 8.4.2-1 SO: Windos Vista Alguem sabe como resolver este problema, e criar a linguagem no banco? Abraço a todos. Gabriel dos Santos. _ Navegue sem medo com o Internet Explorer 8. Clique aqui para instalar gratuitamente. http://go.microsoft.com/?linkid=9707132___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Criar Linguagem Pl TCL no banco
Voce esta executando esse comando com o usuario postgres ??? Em 17 de março de 2010 18:02, GABRIEL DOS SANTOS gabrielworks...@hotmail.com escreveu: JotaCom verifiquei o caminho..e o arquivo esta sim no caminho apontado...pela mensagem... Tem outra ideia do que seja? Valeu...a força.. Gabriel --- Olá, Em 17 de março de 2010 13:43, GABRIEL DOS SANTOS gabrielworks...@hotmail.com escreveu: Boa tarde a todos, Estou tetando criar a linguagem pltcl no meu banco de dados com o seguinte comando: createlang.exe -U postgres -d nomebanco pltcl E esta dando o seguinte erro: createlang: instalação de linguagem falhou: ERRO: não pôde carregar biblioteca C:/Program Files/PostgreSQL/8.4/lib/pltcl.dll: unknown error 126 A biblioteca esta no caminho apontado pela mensagem de erro? Versão do Postgres: 8.4.2-1 SO: Windos Vista Alguem sabe como resolver este problema, e criar a linguagem no banco? Abraço a todos. Gabriel dos Santos. -- Coloque sua foto num tema anos 60, 70 e 80. Conheça o novo site de I Love Messenger.http://ilm.windowslive.com.br/?ocid=ILM:ILM:Hotmail:Tagline:1x1:Tagline ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral Antes de imprimir pense em seu compromisso com o Meio Ambiente ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
[pgbr-geral] RES: Criar Linguagem Pl TCL no banco
Tipo tem que instalar o activesate tcl 8.4 antes de instalar o postgres 8.3.9 por que ai na hora que você instalar o pg ele libera o pltcl na instalação para escolher De: pgbr-geral-boun...@listas.postgresql.org.br [mailto:pgbr-geral-boun...@listas.postgresql.org.br] Em nome de GABRIEL DOS SANTOS Enviada em: quarta-feira, 17 de março de 2010 18:02 Para: Comunidade PostgreSQL Assunto: Re: [pgbr-geral] Criar Linguagem Pl TCL no banco JotaCom verifiquei o caminho..e o arquivo esta sim no caminho apontado...pela mensagem... Tem outra ideia do que seja? Valeu...a força.. Gabriel --- Olá, Em 17 de março de 2010 13:43, GABRIEL DOS SANTOS gabrielworks...@hotmail.com escreveu: Boa tarde a todos, Estou tetando criar a linguagem pltcl no meu banco de dados com o seguinte comando: createlang.exe -U postgres -d nomebanco pltcl E esta dando o seguinte erro: createlang: instalação de linguagem falhou: ERRO: não pôde carregar biblioteca C:/Program Files/PostgreSQL/8.4/lib/pltcl.dll: unknown error 126 A biblioteca esta no caminho apontado pela mensagem de erro? Versão do Postgres: 8.4.2-1 SO: Windos Vista Alguem sabe como resolver este problema, e criar a linguagem no banco? Abraço a todos. Gabriel dos Santos. _ Coloque sua foto num tema anos 60, 70 e 80. Conheça o novo site de I Love Messenger. http://ilm.windowslive.com.br/?ocid=ILM:ILM:Hotmail:Tagline:1x1:Tagline ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] Criar Linguagem Pl TCL no banco
Boa noite, Pelo o jeito, a dll tem dependências, e muito provavelmente esta dependencia é o proprio TCL. Você pode instalar o Tcl/Tk (site da ActiveState), que provavelmente isso é resolvido, ou entao, usar o dependecy walker do windows, para ver as dependencias (dll), e colocar estas em algum local do PATH do seu sistema. []s Boa Sorte Em 17 de março de 2010 18:02, GABRIEL DOS SANTOS gabrielworks...@hotmail.com escreveu: JotaCom verifiquei o caminho..e o arquivo esta sim no caminho apontado...pela mensagem... Tem outra ideia do que seja? Valeu...a força.. Gabriel --- Olá, Em 17 de março de 2010 13:43, GABRIEL DOS SANTOS gabrielworks...@hotmail.com escreveu: Boa tarde a todos, Estou tetando criar a linguagem pltcl no meu banco de dados com o seguinte comando: createlang.exe -U postgres -d nomebanco pltcl E esta dando o seguinte erro: createlang: instalação de linguagem falhou: ERRO: não pôde carregar biblioteca C:/Program Files/PostgreSQL/8.4/lib/pltcl.dll: unknown error 126 A biblioteca esta no caminho apontado pela mensagem de erro? Versão do Postgres: 8.4.2-1 SO: Windos Vista Alguem sabe como resolver este problema, e criar a linguagem no banco? Abraço a todos. Gabriel dos Santos. -- Coloque sua foto num tema anos 60, 70 e 80. Conheça o novo site de I Love Messenger.http://ilm.windowslive.com.br/?ocid=ILM:ILM:Hotmail:Tagline:1x1:Tagline ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] REF. PSQLODBC - Instalação Sile nciosa.
Em 17 de março de 2010 14:18, VisualP Sistemas pa...@visualpsistemas.com.br escreveu: Ola Pessoal, Preciso executar a instalação silenciosa do psqlodbc; para não precisar instalar o banco em maquinas que irei precisar apenas do ODBC. Alguem tem um link ? Você já olhou as opções em: http://www.postgresql.org/ftp/odbc/versions/ ? Osvaldo ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral