Buscar

OTB_BD_01

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.
*
*
*
*
*
*
*

Continue navegando