Tuesday, April 24, 2012

SQL Tuning: Otimizando sistemas que acessam Bancos de Dados

Olá pessoal,

No artigo de hoje, estou publicando parte de um artigo que escrevi para a revista SQL Magazine. Neste artigo, vamos entender melhor o que é tuning e porque devemos nos preocupar em tunar as intruções SQL das aplicações que a gente desenvolve. O termo tuning ainda pode ser um enigma para muitas pessoas, mas ele vem sendo desvendado e explorado cada vez mais pelos profissionais de Tecnologia da Informação (TI). Quando aplicado em TI, este termo refere-se basicamente ao conceito de propor mudanças e aplicar idéias para otimizar o desempenho na recuperação ou atualização de dados.

Com o aumento do legado de sistemas corporativos (Ex.:ERPsCRMsGEDsSistemas Financeiros e de Gestão), sistemas web (Ex.: E-Commerce, Internet Banking), e consequentemente o aumento da quantidade de usuários destes sistemas, torna-se um desafio cada vez maior para os profissionais de TI, desenvolver sistemas com boa performance para atrair, manter e satisfazer as necessidades de seus clientes e usuários. Com este cenário, os conhecimentos necessários para tunar sistemas estão tornando-se um requisito de grande importância para a contratação de profissionais de TI. Sites de E-Commerce, por exemplo, precisam ser rápidos para atender e satisfazer a quantidade de usuários que podem efetuar compras pela Internet. Sem este requisito, as chances de sucesso de um E-Commerce são quase nulas!

Objetivos do Tuning

Antes de meter a mão na massa e conhecer as dicas, devemos entender primeiramente quais são os objetivos de um trabalho de tuning. Entre os principais, podemos destacar:

Minimizar o tempo de resposta e de recuperação de dadosMinimizar a concorrência de acesso aos dados;Otimizar a taxa de transferência de dados;Otimizar a capacidade de carga do Banco de Dados.

Ao tunar instruções SQL, muitos profissionais não entendem por que devemos nos preocupar com esta atividade, ao invés de deixar o trabalho de tuning para um DBA, que pode tentar resolver o problema de performance configurando a instância de BD. Para entender isso, temos que ter ciência de que uma aplicação bem projetada pode executar bem mesmo em uma instância de BD não tunada, porém uma aplicação mal projetada executa mal mesmo em uma instância bem tunada. A má utilização de recursos é uma característica primária de uma aplicação mal projetada e SQL ruim é a causa número 1 de problemas de performance nas aplicações.

Para ajudar os profissionais que precisam tunar suas aplicações (sistemas) no acesso a bancos de dados Oracle 10G e 11G, este artigo irá demonstrar o porquê de otimizarmos instruções SQL e apresentará 5 dicas e técnicas (que fazem parte do meu treinamento de SQL Tuning) para que os sistemas possam ser tunados, e deste modo, apresentar melhor performance.

Para ler o conteúdo deste artigo na íntegra, veja o artigo Cinco dicas importantes para otimizar instruções SQL em Bancos de Dados Oracle 10G/11G, que eu escrevi para a revista SQL Magazine, edição nº 97,  que já está nas bancas .

Fonte original: http://www.fabioprado.net/2012/02/sql-tuning-otimizando-sistemas-que.html

[]s

0 comments:

Post a Comment