Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Resolvendo problemas de performance em aplicações Delphi e bancos de dados

4,951 views

Published on

Encontrar as causas dos problemas de desempenho em aplicações e banco de dados consome muito tempo e não é uma tarefa simples. Durante esta apresentação através de um cenário real vamos conhecer como a integração entre ER/Studio, RAD Studio e DB Optimizer nos pode ajudar a localizar e resolver os problemas no código, SQL e banco de dados.

Published in: Technology
  • Be the first to comment

Resolvendo problemas de performance em aplicações Delphi e bancos de dados

  1. 1. Resolvendo problemas de performance em aplicações Delphi e bancos de dados<br />Andreano Lanusse<br />Technical Lead Evangelist, Developer Relations<br />
  2. 2. DB Optimizer Visão Geral<br />
  3. 3. Ferramenta para performance e tuning<br />Para QAs e Dev<br />Resolve problemas rapidamente<br />Permite aos desenvolvedores identificar e resolver problema de performance antes de enviar a produção<br />O que é DB Optimizer?<br />
  4. 4. DB Optimizer é pra você? <br />Dev / QA <br />Fácil (não teu um DBA)<br />Seguro (profile tem impacto mínimo e somente leitura)<br />Poderoso (abra a caixa preta do banco de dados)<br />DBAs<br />Ferramenta comum para dialogar com Dev, QAs e gerência<br />Gerente/Diretor<br />Ajuda nas discussões e tomada de decisão<br />Por exemplo, onde alocar recurso no desenvolvimento, DBA ou hardware<br />Barato<br />Quantos mais tarde se encontra o problema, mais caro será para arrumá-lo<br />Caro<br />
  5. 5. Colaboração<br />Antes DB Optimizer<br />Desenvolvedor culpa o banco de dados<br />Após DB Optimizer<br />Acaba o jogo de empurra<br />Abre o debate<br />Permite a colaboração<br />
  6. 6. Funcionalidades<br />Profile<br />
  7. 7. Funcionalidades<br />Profile<br />Tune<br />Load Test<br />SQL IDE<br />
  8. 8. Funcionalidades<br />Profile<br />Tune<br />Load Test<br />SQL IDE<br />
  9. 9. Funcionalidades<br />Profile<br />Tune<br />Load Test<br />SQL IDE<br />
  10. 10. Pergunte a vocês mesmo ou seu time<br />Para DBAs<br />Como identificar problemas de performance em SQL? Pró ativo? Reativo<br />Como você gerencia problemas inesperados de performance em SQL? <br />Quanto tempo você gasta tentando resolver estes problemas? Você tem uma ferramenta de Profile? E uma ferramenta para avaliar stress-test?<br />O que você utiliza para otimizar código SQL? <br />Se você utiliza múltiplos DBMSs: Você tem uma ferramenta para de profile e tune para cada DBMS?<br />Para Developers e QA<br />Você está escrevendo código SQL? Como você otimiza o SQL?<br />O que você acha de execute teste de strees no código SQL e otimizá-lo antes de enviar para DBAs e QA?<br />Como você e/ou QA tem certeza que o SQL terá boa performance em produção?<br />
  11. 11. Melhores práticas em otimização de SQL<br />Problemas de performance?<br />Capture uma imagem da situação<br />Diagnosticar gargalos<br />Otimizar top SQL<br />Profile e stress test para validar<br />Análise avançada e otimização<br />Não foi o suficiente?<br />
  12. 12. 1. Problemas na aplicação<br />insert into foo values ('a');<br />commit;<br />insert into foo values ('a');<br />commit;<br />insert into foo values ('a');<br />commit;<br />insert into foo values ('a');<br />commit;<br />insert into foo values ('a');<br />commit;<br />insert into foo values ('a');<br />commit;<br />insert into foo values ('a');<br />commit;<br />
  13. 13. 2. Problemas no banco de dados<br />begin<br /> for i in 1..1000 loop<br /> insert into foo values ('a');<br /> end loop;<br />end;<br />/<br />Commit;<br />
  14. 14. 3. Servidor mal dimencionado<br />
  15. 15. 4. Precisa otimizar os SQLs<br />
  16. 16. Demo<br />
  17. 17. Perguntas<br />EDN – Embarcadero Developer Network<br />http://edn.embarcadero.com/br (Artigos e Vídeos)<br />Trial Download<br />http://www.embarcadero.com/downloads<br />
  18. 18. Dados para Contato<br />Email:Andreano.Lanusse@embarcadero.com<br />Blog:http://www.andreanolanusse.com<br />Twitter:http://twitter.com/andreanolanusse<br />

×