Re: [pgbr-geral] I/O no Postgresql
Pessoal Não sei se ficou bem claro minhas perguntas no outro email. Na verdade, eu preciso saber principalmente se quando o SGBD tem que fazer um FULL SCAN, se ele joga tudo na memória para trabalhar, e por isso tem pouca leitura na base de dados neste caso, cfm grafico do link. Abs 2008/8/12 [EMAIL PROTECTED] [EMAIL PROTECTED] Pessoal deem uma olhada nesse link: http://br.geocities.com/wendelwgp/arquivos/graficos_benchmark.html Gerei uns graficos com o Benchmark DBT-2 no postgresql, executando em um cenário com índices no banco de dados e outro sem índice no banco de dados, preciso agora entender duas questões: - Com a base com índices a entrada e saida (I/O) é maior devido ao SGBD conseguir processar mais dados, correto? - Com a base de dados sem índices, a I/O é muito mais baixa, mas porque? Será que é porque o SGBD joga todos os dados para a memoria RAM, assim não faz tanta leitura e escrita? Até mais ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] I/O no Postgresql
o shared buffer é justamente feito para evitar acesso ao disco , que por sinal é muito caro. Tanto o uso de índices como full scan são ACESSOS A DISCO! O que pode ter acontecido, não sei se foi o caso , que vários dados na primeira consulta já estavam no shared buffer Pessoal Não sei se ficou bem claro minhas perguntas no outro email. Na verdade, eu preciso saber principalmente se quando o SGBD tem que fazer um FULL SCAN, se ele joga tudo na memória para trabalhar, e por isso tem pouca leitura na base de dados neste caso, cfm grafico do link. Abs 2008/8/12 [EMAIL PROTECTED] [EMAIL PROTECTED] Pessoal deem uma olhada nesse link: http://br.geocities.com/wendelwgp/arquivos/graficos_benchmark.html Gerei uns graficos com o Benchmark DBT-2 no postgresql, executando em um cenário com índices no banco de dados e outro sem índice no banco de dados, preciso agora entender duas questões: - Com a base com índices a entrada e saida (I/O) é maior devido ao SGBD conseguir processar mais dados, correto? - Com a base de dados sem índices, a I/O é muito mais baixa, mas porque? Será que é porque o SGBD joga todos os dados para a memoria RAM, assim não faz tanta leitura e escrita? Até mais ___ 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] I/O no Postgresql
2008/8/12 [EMAIL PROTECTED] [EMAIL PROTECTED]: Pessoal deem uma olhada nesse link: http://br.geocities.com/wendelwgp/arquivos/graficos_benchmark.html Gerei uns graficos com o Benchmark DBT-2 no postgresql, executando em um cenário com índices no banco de dados e outro sem índice no banco de dados, preciso agora entender duas questões: - Com a base com índices a entrada e saida (I/O) é maior devido ao SGBD conseguir processar mais dados, correto? - Com a base de dados sem índices, a I/O é muito mais baixa, mas porque? Será que é porque o SGBD joga todos os dados para a memoria RAM, assim não faz tanta leitura e escrita? Por que o banco de dados esta' conseguindo realizar MUITO mais com os indices do que sem os indices, 9 vezes a mais quase (63,71 TPM vs 4,24 TPM). BD realizando mais = mais dados. Digo isso sem saber o que esse teste a te referes esta' fazendo, mas essa e' minha leitura. O numero que interessa mais para mim e' o numero de TPM. Roberto ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
Re: [pgbr-geral] I/O no Postgresql
Giraya, From: [EMAIL PROTECTED] [EMAIL PROTECTED] Subject: [pgbr-geral] I/O no Postgresql - Com a base com índices a entrada e saida (I/O) é maior devido ao SGBD conseguir processar mais dados, correto? _Coincidentemente_ sim. _U_m_ dos motivos para ter mais acessos a disco certamente foi o fato de fazer mais transações por segundo, mas há casos em que você tem mais transações por segundo quando faz menos acessos a disco. Tudo depende de que tipo de transações você está fazendo, quão complexas são suas consultas e quão bem escolhidos são seus índices. - Com a base de dados sem índices, a I/O é muito mais baixa, mas porque? Provavelmente porque o disco está entediado esperando o servidor terminar os malditos NESTED LOOPs e HASH JOINs em memória que ele deve ser obrigado a fazer por não ter índices. Será que é porque o SGBD joga todos os dados para a memoria RAM, assim não faz tanta leitura e escrita? Talvez. O mais provável é que o gargalo seja a CPU. Sem índices, fica muito mais difícil fazer JOINs entre as tabelas, e com tabelas grandes inteiras na memória o servidor vai achar vantajoso fazer intermináveis nested loops ou hash joins. O disco quase não é usado porque a tabela inteira deve estar na memória, porém a CPU deve estar sendo completamente desperdiçada. Provavelmente o desempenho empataria se você pusesse uns *15* processadores no servidor sem índices, e neste caso os acessos a disco no servidor sem índices provavelmente aumentariam, apesar de ser hilário ver alguém levando adiante uma idéia dessas. Não vejo motivo para fazer mais testes, os resultados são evidentes. Usar índices neste caso deixou o servidor quinze vezes mais rápido, o que apenas confirma as boas práticas consagradas em toda a literatura sobre o assunto. Não sou o primeiro a falar, mas não custa ressaltar: comparar o plano das consultas seria muito mais elucidativo e prático do que montar baterias de testes dessa magnitude para tentar provar o óbvio. Atenciosamente, Mozart Hasse ___ pgbr-geral mailing list pgbr-geral@listas.postgresql.org.br https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral