Olá, Em 7 de julho de 2010 23:00, Carlos Augusto Machado <[email protected]>escreveu:
> Caros, > > Estou fazendo meu TCC sobre melhoria de performance em BD implementados > sobre o PostgreSQL. > Muito legal :) > > O trabalho tem duas seções específicas, as quais estou começando a > desenvolver exemplos práticos: > - Otimização de índices > - Otimização de consultas > Primeira dúvida. O que você chama de otimização de índices? Criação de um índice para ver se melhora a performance? > > Em ambos os casos, vou precisar monitorar um BD para apresentar os > problemas antes de otimizar, as soluções dadas e como ficou o desempenho > após a solução. > Você tem um banco de dados para isso? > > Para isso, venho até a lista para pedir apoio e dicas. > Meu ambiente de trabalho é um notebook com Windows Seven, PostgreSQL 8.4, > 3GB RAM. > Também posso simular ambientes com máquina virtual rodando Windows XP ou > Linux. > Isso não seria problema. > > Quanto ao monitoramento, pensei em usar uma ferramenta própria para essa > atividade. > Que tipo de ferramenta? Você já pensou em utilizar as views de sistema? - pg_stat_activity - pg_stat_user_tables - pg_stat_user_indexes Além disso tem o pg_fouine [1] onde você pode gerar as consultas utilizadas pelo sistema. > Estudei o BenchmarkSQL, porém ele analisa a configuração do ambiente e > hardware, usando um esquema de BD próprio para seu tipo de teste (criando > tabelas próprias e definindo pesos para consultas). > Você pode usar o pgtune [2] para auxiliar e ajudar na configuração dos parâmetros de configuração. No entanto, se eu precisar analisar o BD de uma aplicação qualquer, pelo que > entendi, o benchmarkSQL não vai ser tão útil. > Então pergunto, há alguma ferramenta que faça o monitoramento de um BD já > existente? (PS. Preferencialmente livre e que rode em Windows). > Como assim ferramenta de um BD já existente? > > Uma alternativa que verifiquei é o uso do comando EXPLAIN. Esse comando se > aplica mais para a otimização de consultas e, nesse caso, eu preciso saber > antecipadamente quais as consultas que deverão ser analisadas. > O comando EXPLAIN mostra o plano de execução de cada consulta, porém para ele funcionar bem é necessário que as estatísticas do banco estejam atualizadas, vide comando ANALYZE do PostgreSQL. > A dúvida é como descobrir quais são as consultas que precisam ser analisada > em um BD qualquer. > Isso depende muito. Aconselho em primeiro lugar você aplicar o pg_fouine para ler as consultas geradas pela aplicação, a partir dai você tem que trabalhar nas consultas que podem trazer um ganho maior para um contexto global. > > Por fim, alguem sabe indicar onde poderia encontrar BDs PostgreSQL para > teste, sem precisar criar um ou mais específicos para o trabalho? > Isso é muito complicado, dificilmente você vai achar um banco pronto de testes para você aplicar testes de desempenho, eu iria sugerir você montar um ambiente para isso, e popular com bastantes dados as tabelas para ai sim pode trabalhar esta questão. Um bom ponto de início pode ser o pagila [3]. [1] http://pgfouine.projects.postgresql.org/ [2] http://pgfoundry.org/projects/pgtune/ [3] http://pgfoundry.org/projects/dbsamples/ > -- > Att, > Carlos Augusto Machado > Email: [email protected] > MSN: [email protected] > Fone: (49) 88532089 > > > _______________________________________________ > pgbr-geral mailing list > [email protected] > https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > []s -- JotaComm http://jotacomm.wordpress.com
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
