Baixe o app para aproveitar ainda mais
Prévia do material em texto
* OTIMIZAÇÃO E BALANCEAMENTO DE BANCO DE DADOS Introdução 2018/02 Prof. Carlos Garcia * Conteúdo Apresentações Referências Bibliográficas Planejamento do módulo Visão geral da otimização e balanceamento de banco de dados * Apresentações Mestrando em Engenharia Eletrônica e Computação - ITA Área de Engenharia de Software Garcia.fatec@gmail.com Atuação em BD há 24 anos Programador Oracle (PL/SQL, Forms, Reports) DBA Oracle e SQL Server BD’s já utilizados: Oracle, SQL Server, DB2/400, MySQL, PostgreSQL. * Objetivo Ao final da disciplina o aluno será capaz de: analisar e otimizar o desempenho de Bancos de Dados. * Referências - Livros ENGLAND, K., POWELL, G. Microsoft SQL Server 2005 Performance Optimization and Tuning Handbook. Elsevier Digital Press, 2005. NIEMIEC, R.Oracle Database 10g - Performance Tuning Tips & Tech. Mc-graw Hill, 2007. SHASHA, D., BONNET, P.Database Tuning: Principles, Experiments, and Troubleshooting Techniques. San Francisco, CA-USA: Morgan Kaufmann, 2003. * Referências - www VLDB (Very Large Data Bases) Conference ACM SIGMOD International Conference on Management of Data ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems http://www.vldb.org http://www.sigmod09.org http://www.oracle.com Executive Briefing Computerworld: O Futuro do banco de dados [http://lt.idg.com.br/lt_form/270] DeWitt, D., Gray, J. Parallel Database Systems: The Future of Database Processing or a Passing Fad?. ACM SIGMOD Record, Volume 19, Issue 4, 1990 * Planejamento Como tratar os problemas mais frequentes Consultas Parâmetros de memória Gargalos Monitoramento Atividades Ferramentas Otimização Metodologia Ferramentas Storage Particionamento * Avaliação Prova bimestral (50%) Relatórios dos laboratórios (50%) * Tópicos abordados Monitoramento diário de banco de dados. Metodologia de otimização. Ferramentas de otimização de desempenho. Reestruturação de arquivos para desempenho. Identificação e solução de problemas de I/O. Armazenagem de dados e configuração de banco de dados para desempenho. Problemas comuns de otimização e desempenho. Dimensionamento de pool de compartilhamento. Processamento de consultas e otimização. * Princípios básicos da otimização Considere os princípios básicos a seguir durante o processo de otimização: Pense globalmente, corrija localmente Particionamento elimina gargalos Custos de inicialização são altos, custos de execução são baixos Aprimore a utilização do servidor prepare-se para os ajustes e desvios * Pense globalmente, corrija localmente Ajustes efetivos geralmente envolvem compreensão global do problema e intervenção mínima Implica em medidas corretas que levam a conclusões exatas Quando corrigindo uma consulta lenta, um modo de pensar global é conhecer as transações envolvidas com aquela consulta Para isso, faz-se necessário conhecer o projeto da aplicação. * Particionamento elimina gargalos É raro que um sistema esteja lento porque todas as suas partes estão. Usualmente uma parte do sistema limita o seu funcionamento geral. Esta parte é o gargalo. Similar a uma rodovia, o gargalo é como uma pista interditada de uma rodovia. * Particionamento em SGBD É a técnica utilizada para reduzir a carta em certo componente do sistema. Isto pode ser acrescentando mais componentes na mesma função, ou Distribuindo a carga ao longo do tempo. Particionamento pode levar a excesso de comunicação entre as frações. * Custos iniciais são altos Em geral os objetos feitos pelo apresentam grande uso de recursos para iniciar seu funcionamento. Exemplo: os carros, as lâmpadas fluorescentes. Os bancos de dados também são assim, como visto a seguir: Iniciar leitura em disco; Latência no envio de mensagens; Custo de parse e verificação de semântica dos comandos; Abertura de conexões; * Alocação adequada dos recursos do servidor A melhor performance de um sistema implica não somente no ajuste do servidor Ajustes entre servidor e cliente devem buscar a distribuição entre essas partes. Esta alocação implica em três principais aspectos: Os recursos disponíveis no cliente Onde a informação está disponível A interação do BD com as telas * Aspectos gerais Se o servidor está sobrecarregado, então todas as requisições serão iguais e para resolver deve-se delegar ao cliente. Eventos do BD liberam a aplicação de fazer pooling. Transações podem segurar recursos do banco enquanto aguarda a interface. * * * * * * *
Compartilhar