Read without ads and support Scribd by becoming a Scribd Premium Reader.
 
 Otimização de Bancode Dados
 
Otimização de Banco de dados
2
SUMÁRIOCapítulo 1 – Visão Geral da Otimização
.......................................................031.1 - Limitações do Projeto MySQL/Trocas ...........................................031.2 - Portabilidade .................................................................................041.3 - Para que Utilizamos o MySQL? ....................................................051.4 - O Pacote de Benchmark do MySQL .............................................071.5 - Utilizando seus Próprios Benchmarks ..........................................08
Capítulo 2 –
 
Otimizando SELECTs e Outras Consultas
..............................102.1 - Sintaxe de EXPLAIN (Obter informações sobre uma SELECT) ...102.2 - Estimando o Desempenho de uma Consulta ................................192.3 - Velocidade das Consultas que Utilizam SELECT .........................202.4 - Como o MySQL Otimiza Cláusulas WHERE ................................202.5 - Como o MySQL Otimiza IS NULL .................................................222.6 - Como o MySQL Otimiza Cláusulas DISTINCT .............................232.7 - Como o MySQL Otimiza LEFT JOIN e RIGHT JOIN ....................242.8 - Como o MySQL Otimiza Cláusulas ORDER BY ...........................252.9 - Como o MySQL Otimiza Cláusulas LIMIT ....................................272.10 - Performance das Consultas que Utilizam INSERT .....................272.11 - Performance das Consultas que Utilizam UPDATE ...................302.12 - Performance das Consultas que Utilizam DELETE ....................302.13 - Mais Dicas sobre Otimizações ....................................................30
Capítulo 3 – Detalhes Sobre Locks
...............................................................343.1 - Como o MySQL Trava as Tabelas ................................................343.2 - Detalhes sobre Lock de Tabelas ...................................................35
Capítulo 4 – Otimizando a Estrutura de Banco de Dados
...........................374.1 - Opções do Projeto ........................................................................374.2 - Deixando os Dados com o Menor Tamanho Possível ..................374.3 - Como o MySQL Utiliza Índices .....................................................394.4 - Índices de Colunas ........................................................................414.5 - Índices de Múltiplas Colunas ........................................................424.6 - Como o MySQL Conta as Tabelas Abertas ..................................434.7 - Como o MySQL Abre e Fecha as Tabelas ...................................434.8 - Desvantagem em Criar um Número Grande de Tabelas no MesmoBanco de Dados ...............................................................................................45
Capítulo 5 – Otimizando o Servidor MySql
...................................................465.1 - Sintonia dos Parâmetros em Tempo de Sistema/Compilação e naInicialização ......................................................................................................465.2 - Parâmetros de Sintonia do Servidor .............................................475.3 - Como a Compilação e a Ligação Afetam a Velocidade do MySql 495.4 - Como o MySQL Utiliza a Memória ................................................515.5 - Como o MySQL Utiliza o DNS ......................................................535.6 - Sintaxe de SET .............................................................................53
Capítulo 6 – Detalhes de Disco
......................................................................596.1 - Utilizando Links Simbólicos ...........................................................616.1.1 - Utilizando Links Simbólicos para Bancos de Dados ........616.1.2 - Utilizando Links Simbólicos para Tabelas ........................626.1.3 - Usando Links Simbólicos para Bancos de Dados noWindows ...........................................................................................................63.
 
 
Otimização de Banco de dados
3
1. Visão Geral da Otimização
1.1. Limitações do Projeto MySQL/Trocas1.2. Portabilidade1.3. Para que Utilizamos o MySQL?1.4. O Pacote de Benchmark do MySQL1.5. Utilizando seus Próprios Benchmarks
A parte mais importante para obter um sistema rápido é com certeza o projetobásico. Você também precisa saber quais tipos de coisas seus sistema estará fazendo, equais são gargalos existentes.Os gargalos mais comuns são:
 
Pesquisa em disco É necessário tempo para o disco encontrar uma quantidade dedados. Com discos modernos em 1999, o tempo médio para isto eranormalmente menor que 10ms, portanto em teoria poderíamos fazer 100 buscaspor segundo. Este tempo melhora moderadamente com discos novos e isso émuito difícil otimizar para uma única tabela. A maneira de otimizar isto écolocando os dados em mais de um disco.
 
Leitura de disco/Escrita (I/O) Quando o disco estiver na posição corretaprecisaremos que os dados sejam lidos. Com discos mais modernos em 1999,um disco retorna algo em torno de 10-20Mb/s. Isto é mais fácil de otimizar queas buscas porque você pode ler vários discos em paralelo.
 
Ciclos de CPU. Quando tivermos os dados na memória principal (ou se eles jáestiverem lá) precisaremos processá-los para conseguir nosso resultado. O fatorde limitação mais comum é ter ppequenas tabelas, comparadas com a memória.Mas, com pequenas tabelas, normalmente não teremos problemas comvelocidade.
 
Largura de banda da memória. Quando a CPU precisa de mais dados que podemcaber no cache da CPU a largura da banda da memória principal se torna umgargalo. Isto é um gargalo muito incomum para a maioria dos sistema, mas ébom estarmos ciente dele.
1.1. Limitações do Projeto MySQL/Trocas
Quando usamos o mecanismos de armazenamento MyISAM, o MySQL utilizatravamento de tabela extremamente rápidos (múltiplas leituras / única escrita). O maiorproblema com este tipo de tabela ocorre quando você tem uma mistura do fluxo fixo deatualizações e seleções lentas na mesma tabela. Se isto for um problema com algumastabelas, você pode usa outro tipo de tabela.O MySQL pode trabalhar com tabelas transacionais e não transacionais. Paratrabalhar sem problemas com tabelas não transacionais (nas quais não se pode fazer umrollback se alguma coisa der errada), o MySQL tem as seguintes regras:
Search History:
Searching...
Result 00 of 00
00 results for result for
  • p.
  • Notes
    Load more