evolução dos métodos de otimização de performance em banco de dados oracle sandro gonçalves...
TRANSCRIPT
![Page 1: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/1.jpg)
Evolução dos Métodos de Otimização de Performance em Banco de Dados
Oracle
Sandro Gonçalves Murara
![Page 2: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/2.jpg)
Agenda
• Histórico sobre o Oracle Database Server
• Performance
• Arquitetura Oracle
• Otimizador Oracle
• Evolução
• Tendências Futuras
• Perguntas
![Page 3: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/3.jpg)
ORACLE - Histórico
Versão Ano Características
Oracle 1 1978 Não foi lançado oficialmente
Escrito em Assembly
Oracle 2 1979 1º SGBDR Comercial
Oracle 3 1983 Portabilidade
Escrito em C
Oracle 4 1984 Leitura Consistente
Oracle 5 1985 Cliente/Servidor
Oracle 6 1988 Row-level locking
Hot backup
PL/SQL
![Page 4: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/4.jpg)
ORACLE - Histórico
Versão Ano Características
Oracle 7 1992 Performance
Utilities e Development Tools
Segurança
Triggers
Stored Procedures e Functions
Integridade Referencial
Cost Based Optmizer (CBO)
Oracle 8 1997 All-your-data Database
Particionamento
Oracle 8i 1999 Internet Database
Java e XML
![Page 5: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/5.jpg)
ORACLE - Histórico
Versão Ano Características
Oracle 9i 2001 Real Application Cluster
“Unbreakable”
Oracle 10g 2003 Grid Computing
Workload Repository
Oracle 11g 2007 Real Application Testing
![Page 6: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/6.jpg)
Performance
Performance = Desempenho
Tempo de resposta de acordo com a expectativa do usuário.
![Page 7: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/7.jpg)
Infra-estrutura de TI
![Page 8: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/8.jpg)
Otimização de Performance
• Banco de Dados– Ajustes de Configuração (tunning)
• Aplicação– Modelagem de Sistemas– SQL– Programação
![Page 9: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/9.jpg)
Arquitetura Oracle
![Page 10: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/10.jpg)
SQL - Fases de Processamento
SELECT * FROM EMPWHERE EMPNO = :1 PARSE
EXECUTEFETCHPLANO
EXECUÇÂOSQL
EMPNO ENAME SALARY DEPTNO----- -------------------------- ------- ------ 110 JOHN LEE 1.500 10 111 ALBERT COLLINS 1.000 10 120 ROBERT SMITH 3.000 20 ...
![Page 11: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/11.jpg)
A Evolução
ProcessoUsuário
SGA
Shared Pool
ProcessoServidorDedicado
Arquivos do BD
DB Buffer• Subdivisões da SGA - Diferentes Estruturas de Memória
• Processos Específicos• Processos Servidores Compartilhados
ProcessoUsuário
ProcessoUsuário
ProcessoUsuário
ProcessosUsuários
DatabaseWriter
ProcessoServidor
Compartilhado
• Cost Based Optimizer / Rule Based Optimizer
• Clustered Tables• Bitmap Indexes• Index Organized Tables• Particionamento
![Page 12: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/12.jpg)
Modos do Otimizador
• RULE BASED OPTIMIZER (RBO)– Regras– Formatação do comando SQL– Método Default
• COST BASED OPTIMIZER (CBO)– Menor Custo de I/O + CPU– Estatíticas Tabelas e Índices– Comando ANALYZE
![Page 13: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/13.jpg)
A evolução continua...
• ORACLE 8 e 8i– Evolução método CBO– Database Resource Manager– Novos tipos de índices
• ORACLE 9i– Gerenciamento Dinâmico da SGA– Monitores de utilização de memória (views)– Coleta de estatísticas mais seletiva e eficiente
(DBMS_STAT)– Novos Parâmetros de BD
• Memória• Otimizador
![Page 14: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/14.jpg)
A evolução continua...
• ORACLE 10g– Diagnóstico e ajustes automáticos de performance– Coleta automática de estatísticas– Gerenciamento automático de memória SGA– Fim do método Rule Based Optimizer– Workload Repository – SQL Access Advisor e SQL Performance Analizer– SQL Profile
• ORACLE 11g– Evolução dos recursos existentes no 10g– Gerenciamento Total de Memória (SGA + PGA)
![Page 15: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/15.jpg)
Resumo da Evolução
• Processos Oracle• Gerenciamento de Memória• Armazenamento e Indexação• Otimizador Geração de Planos de Execução
Otimizados• Informações de Carga e Processamento• Processos e métodos de tunning automatizados• Ajustes de SQL• Ferramentas de Otimização de Performance e
Monitoramento
![Page 16: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/16.jpg)
Tendências Futuras
• Auto Tunning
• Workload
• Compactação de Dados
• Otimização de SQL e Aplicações
![Page 17: Evolução dos Métodos de Otimização de Performance em Banco de Dados Oracle Sandro Gonçalves Murara sandro@sgmti.com.br](https://reader033.vdocuments.site/reader033/viewer/2022061603/552fc12f497959413d8d40f0/html5/thumbnails/17.jpg)
Perguntas?
SGM Tecnologia da Informação
http://www.sgmti.com.br
Fone: (48) 3028-2169
Sandro Murara