Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-22 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Por favor, RFC 1855!  Se teu cliente suporta, configure!  Se não,
troque.


Em Sex, 2007-06-22 às 11:42 -0300, Welington R. Braga escreveu:
> Em 22/06/07, Leandro Guimaraes Faria Corcete DUTRA <[EMAIL PROTECTED]>
> escreveu:
> > O Contrib costuma ser empacotado pelas distros também.
> 
> Vou da uma olhada no Debian (minha distro) 

Debian tem. 


> Dei uma procurada lá e não achei, vou olhar depois com mais calma, mas
> já vi que vou ter que comprar alguns livros. 

Sim, as melhores informações nessa área ainda estão nos livros,
especificamente os do Date, Darwen e Pascal.  O Codd publicou muito
pouco.


>Mas no auto-relacionamento isso não é necessário, só no
> modelo maluco
> do maluco do Celko.
> 
> Sincerametne confesso que não vi diferença entre o Celko e o
> autorelacionamento. Vou dar uma olhada com mais carinho, ao invés de
> só ver as figuras e o código SQL ;-)

Ops.  Auto-relacionamento é extremamente simples; o do Celko são os
conjuntos aninhados.  Completamente diferentes.

O ltree não analisei a fundo, mas parece ser intermediário entre os
dois, em termos de complexidade e sanidade.


> Não, use controle de transações.
> 
> [possivel bobagem] Mas as funções em pgplsql, não são executadas em
> uma única transação? [/possivel bobagem] 

Use the source, Luke.  BEGIN TRANSACTION … [COMMIT|ROLLBACK]

Cara, replicação é broca.  Eu diria que a coisa tem de ficar muito mais
madura para você querer fazer a sua própria.

-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-22 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Em Sex, 2007-06-22 às 10:25 -0300, Welington R. Braga escreveu:
> Meu receio de ficar enfiando essas gambiarras no Postgres

Então, gambiarra pero no mucho.  O Contrib já é tradicional.


> é que até a versão final sair pode mudar muita coisa

Use uma versão estável.


> e qualquer falha de segurança que tiver, ao invés de aproveitar a
> correção que já está no repositório da minha distribuição eu terei que
> fazer mais uma compilação e ai vou ficar perdendo tempo com
> compilações. 

O Contrib costuma ser empacotado pelas distros também.


> Bem, já sentaram o pau nos links que passei - opinião é opinião e não
> estou criticando, mesmo porque estou entrando nesta questão agora - ,
> porque referem-se ao auto-relacionamento e alguns até citaram o método
> do Fabin Pascal, mas não achei nenhum link a respeito do método dele. 
> 
> Alguém pode me passar algum?

Infelizmente não lembro agora.  Você pode procurar em
http://dbdebunk.com./, que está inativo mas ainda tem os arquivos; de
outro modo, teria de comprar o livro.  Mas não tem muito segredo, é só
evitar o auto-relacionamento que é meio feio, fazendo uma tabela com os
dados e outra com os pares pai–filho.


> A priori o autorelacionamento pareceu-me bem atraente por simplificar
> a consulta e agilizar o retorno dos dados de saída. Mas realmente
> torci o nariz para o fato de ter que dar um 'update' em quase toda
> árvore quando precisar incluir um novo taxon.

O que é um taxon?

Mas no auto-relacionamento isso não é necessário, só no modelo maluco
do maluco do Celko.


> Se eu tiver várias pessoas acrescentando dados na árvore vai ser um
> caos e para evitá-lo teria que dar um lock em toda a tabela para
> impedir que bagunçem os relacionamentos,

Não, use controle de transações.


> Sinceramente, agora eu fiquei mais perdido que cego em tiroteio. Eu
> dei uma dobrada nos valores dos meus shared_buffer e o max_fsm_pages
> além de limitar o tempo do tcp_keepalives_idle para 2h, o que está de
> bom tamanho. E pra completar, depois de um 'vacuum full analize' que
> levou mais de 30m sendo 10m só na bendita tabela da árvore parece que
> as coisas normalizaram provisoriamente. 

Ah, isso explica muita coisa.  Que tal deixar agendado um periódico?
Deve demorar bem menos se for, por exemplo, semanal ou até mensal.  E se
você fizer, por exemplo diariamente, um mais /light/.

-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-21 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Em Qui, 2007-06-21 às 20:52 -0300, Euler Taveira de Oliveira escreveu:
> Leandro Guimaraes Faria Corcete DUTRA wrote:
> 
> > Se bem que o código com WITH, ao que me
> > lembro, é mais chato de escrever e ler que o com CONNECT BY.
> > 
> A sintaxe do WITH é bizarra, mas é SQL... Então o pessoal decidiu
> (depois de várias discussões calorosas) _por coerência_ implementá-la.
> Sem contar que outros bancos como o DB2 também implementam.

Tudo isso é verdade.  Mas de vez em quando, faz sentido um padrão ‘de
facto’.  Como TCP/IP, por exemplo.

-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-21 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Em Qua, 2007-06-20 às 20:40 -0300, Euler Taveira de Oliveira escreveu:
> 
> Infelizmente, a implementação do WITH não ficou pronta a tempo para
> entrar no 8.3. :( Então, espere para a 8.4.

Obrigado pelo resume!


> O ltree te resolve o problema, mas o que não gosto dele é a repetição da
> hierárquia em cada nó.

Idem ibidem.


> O CONNECT BY [1] é outra alternativa. É um patch rejeitado pela
> comunidade porque não implementa o padrão SQL e sim a sintaxe do ORACLE.

O que eu gosto nele é que não te força a bagunçar o modelo, como no
caso do ltree.  Ou seja, dá para fazer algo legal no modelo, gambiarrar
o código, e na 8.4 consertar o código.  Bem mais fácil que acertar o
código e bagunçar o modelo.  Se bem que o código com WITH, ao que me
lembro, é mais chato de escrever e ler que o com CONNECT BY.

Nem tudo que é ISO SQL é ouro…

-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-20 Por tôpico Euler Taveira de Oliveira
Welington R. Braga wrote:

> O problema é a natureza deste tipo de aplicação exige uso de arvores.
> Qual seria a melhor opção então, ou a sugestão de vocês sobre isso?
> Esta é somente uma das aplicações que exigem este perfil. Mas eu tenho
> outras que estão na mesma situação. Já pensei até em rever os meus
> livros de estrutura de dados e tentar implementar umas rotinas genéricas
> para trabalho com árvores de dados. Será que dá pé? ou tem algo agendado
> sobre isso para as próximas versões do postgres?
> 

Infelizmente, a implementação do WITH não ficou pronta a tempo para
entrar no 8.3. :( Então, espere para a 8.4.
O ltree te resolve o problema, mas o que não gosto dele é a repetição da
hierárquia em cada nó.
O CONNECT BY [1] é outra alternativa. É um patch rejeitado pela
comunidade porque não implementa o padrão SQL e sim a sintaxe do ORACLE.

[1] http://gppl.moonbone.ru/

-- 
  Euler Taveira de Oliveira
  http://www.timbira.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] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-20 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Em Qua, 2007-06-20 às 18:08 -0300, Leandro Guimaraes Faria Corcete DUTRA
escreveu:
> Em Qua, 2007-06-20 às 17:23 -0300, Thiago Risso escreveu:
> > Será que não seria algo assim [1] ...
> > 
> > [1] http://www.sai.msu.su/~megera/postgres/gist/ltree/
> 
>   Essa é uma alternativa, outra é o CONNECT BY, módulo do Contrib baseado
> no Oracle.

Aliás, desculpem a auto-resposta mas é uma alternativa de que não
gostei muito: inclui dados redundantes, vide um trecho do código de
amostra:

create table dmoz (
id  int,
nametext,
pathltree
);

copy dmoz from stdin;
1   Top Top
2   Adult   Top.Adult
3   BusinessTop.Adult.Business
4   Opportunities   Top.Adult.Business.Opportunities
5   Home_Based  Top.Adult.Business.Opportunities.Home_Based
6   InternetTop.Adult.Business.Opportunities.Internet


-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-20 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Em Qua, 2007-06-20 às 17:27 -0300, Welington R. Braga escreveu:
> Mas já é assim. Como eu disse no e-mail especificando o meu cenário:
> 
> "...Pra simplificar o cenário, basicamente eu tenho duas tabelas (é
> muito mais do que isso, mas como eu disse é só pra simplificar). Dadas
> essas duas tabelas: Uma tem essa hierarquia, e a outra são dados da
> espécie em si"
> 
Perfeito então, eu é que não li direito.  Acho que foi o Euler
(desculpe se não) quem falou em auto-relacionamento, e aí eu já
assustei…


> Eu achei uma documentação interessante sobre dados hierarquicos na
> documentação do MySQL
> (http://dev.mysql.com/tech-resources/articles/hierarchical-data.html) 

Fraquinho… o primeiro é o famigerado auto-relacionamento, o segundo o
terrível modelo do Celko.


> http://www.sitepoint.com/article/hierarchical-data-database/2
> http://logbr.reflectivesurface.com/2003/12/17/armazendo-arvores-em-banco-de-dados/
> http://www.intelligententerprise.com/001020/celko1_1.jhtml;jsessionid=NRVVJG3CR52DSQSNDLOSKHSCJUNN2JVN?_requestid=1193324

Não, o Celko não!  O método dele é pura enrolação de embira!  E todos
esses aí são baseados nessa [EMAIL PROTECTED]@¨$%&.

-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-20 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Em Qua, 2007-06-20 às 17:23 -0300, Thiago Risso escreveu:
> Será que não seria algo assim [1] ...
> 
> [1] http://www.sai.msu.su/~megera/postgres/gist/ltree/

Essa é uma alternativa, outra é o CONNECT BY, módulo do Contrib baseado
no Oracle.

O padrão seria o WITH do ISO.

-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-20 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Em Qua, 2007-06-20 às 13:12 -0300, Welington R. Braga escreveu:
> O problema é a natureza deste tipo de aplicação exige uso de arvores.

Sem problemas!


> Qual seria a melhor opção então, ou a sugestão de vocês sobre isso?

A minha seria a do Pascal: duas relações, uma com os dados dos nós,
outra com o relacionamento entre nós.  Isso evita o auto-relacionamento,
o NULL…


-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-20 Por tôpico Leandro Guimaraes Faria Corcete DUTRA
Em Ter, 2007-06-19 às 22:25 -0300, Euler Taveira de Oliveira escreveu:
> Enquanto o PostgreSQL não aceita consultas hierárquicas, não aconselho
> que use tabelas autorelacionadas que vão ter muitas consultas
> hierárquicas. :(
> O ideal como você mesmo adimitiu é reestruturar o sistema para separar a
> informação.

De fato, segundo alguns papas como o Fabian PASCAL, não é legal fazer
hierarquia via autorelacionamento porque o topo da hierarquia vai ter um
pai nulo, o que é uma anormalidade.

-- 
Leandro Guimarães Faria Corcete DUTRA  <[EMAIL PROTECTED]>
Atech Fundação Aplicação de Tecnologias Críticas  SP, BR
msnim:[EMAIL PROTECTED]
skype:leandro.gfc.dutra?chat +55 (11) 3040 7300 r151


- - - - -

Politica de Privacidade: Esta mensagem pode conter informacao confidencial e/ou 
privilegiada. Se voce nao for o destinatario ou a pessoa autorizada a receber 
esta mensagem, nao pode usar, copiar ou divulgar as informacoes nela contidas 
ou tomar qualquer acao baseada nessas informacoes. Se voce recebeu esta 
mensagem por engano, por favor avise imediatamente o remetente, respondendo o 
e-mail e em seguida apague-o. Agradecemos sua cooperacao.

Privacy Policy: This message may contain confidential and/or privileged 
information. If you are not the addressee or authorized to receive this for the 
addressee, you must not use, copy, disclose or take any action based on this 
message or any information herein. If you have received this message in error, 
please advise the sender immediately by reply e-mail and delete this message. 
Thank you for your cooperation.___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral


Re: [pgbr-geral] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-19 Por tôpico Euler Taveira de Oliveira
Welington R. Braga wrote:

> Deixa dar um resumo do meu cenário para ficar mais claro o problema.
> Conversando com o gerente do projeto acho que achei o problema ... é
> tudo ;-) e o sistema teria que ser todo reescrito:
> 



> Dadas essas duas tabelas: Uma tem essa hierarquia, e a outra são dados
> da espécie em si.
Enquanto o PostgreSQL não aceita consultas hierárquicas, não aconselho
que use tabelas autorelacionadas que vão ter muitas consultas
hierárquicas. :(
O ideal como você mesmo adimitiu é reestruturar o sistema para separar a
informação.


-- 
  Euler Taveira de Oliveira
  http://www.timbira.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] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-18 Por tôpico Euler Taveira de Oliveira
Welington R. Braga wrote:

> Já monitorei, mas nada indica qual processador esta em uso e o problema
> continua:
faça assim:
# top -u usuario-do-postgres
depois pressione '1'. Você vai ver as CPUs dai é só ver qual delas está
trabalhando.

> Eu tenho uma consulta que roda periodicamente importando dados de uma
> tabela para outra fazendo apenas algumas conversões de dados e numa
> quantidade na ordem de milhares de registros. Após executar essa
> consulta o acesso a base principal fica muito lento.
> 
Você está utilizando apenas uma transação? Acho o seu problema é
paralelizar a sua rotina de importação, assim você pode aproveitar
melhor os recursos de seu servidor.

> O problema pelo que percebi é que quando a consulta roda, o banco joga
> todos os registros para memória e lá ficam até ocorrer um commit.
> 
Por curiosidade que tipo de comandos SQL tem nessa rotina? INSERT? COPY?

> Eu notei que o uso de memória sobe absurdamente chegando a ocupar 100%
> dos meus 8GB de RAM - que não é muito mas não é tão baixo assim. E
> eventualmente um dos meu processadores grudam o "velocimetro" nos 100%
> também e assim ficam por um bom tempo.
> 
CPU a 100% é normal. Mas memória a 100% é problemático e se for por um
bom tempo é crítico. Acho que o problema todo está na sua rotina de
importação.


-- 
  Euler Taveira de Oliveira
  http://www.timbira.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] Compilação do PostgreSQL 8.1 para processamento simétrico

2007-06-18 Por tôpico Euler Taveira de Oliveira
Welington R. Braga wrote:

> Meu servidor tem dois processadores Xeon 3GHz e 8GB de RAM, rodando
> kernel 2.6.8-12-em64t-p4-smp  (Debian Sarge). O PostgreSQL é o 8.1.5
> 
> Alguém sabe dizer-me se o PostgreSQL precisa de uma flag especial ao
> compilar para trabalhar em máquinas multiprocessadas, aproveitando-se
> deste recurso?
> 
Não. Se o seu kernel suporta SMP *automagicamente* o PostgreSQL
aproveitará desse recurso. Isso porque o PostgreSQL abre um processo
para cada conexão. Assim o agendador do kernel "escolhe" a "melhor" CPU
para que o processamento ocorra naquele processo num determinado instante.
Para saber se os dois processadores estão sendo utilizados, experimente
monitorar por algum tempo com o top.


-- 
  Euler Taveira de Oliveira
  http://www.timbira.com/
___
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral