Use o código e tenha 10% de desconto!

Tuning de SQL Melhore a performance de suas aplicações Oracle

Eduardo Gonçalves

*Você terá acesso às futuras atualizações do livro.

Conteúdo

As instruções SQL são o principal ponto de análise quando falamos sobre performance de programas, pois a maneira como as informações são acessadas e processadas em um banco de dados pode ser a maior causa de demora na execução. Entender quando e como buscar por performance e, dessa maneira, atingir um desempenho adequado é o objetivo do Tuning de SQL.

Neste livro, Eduardo Gonçalves demonstrará diversas técnicas para escrever instruções SQL de forma apropriada para que o otimizador do banco de dados possa escolher um plano de execução eficaz para executá-las. Por meio de técnicas, como a criação de índices, uso de sugestões (hints), ajustes de sintaxe e métodos de acesso a tabelas, além de ferramentas de auxílio de Tuning SQL, você será capaz de analisar aplicações problemáticas, gerar estatísticas para o otimizador e obter informações das instruções executadas no banco de dados Oracle. Com isso, será possível criar uma cultura de pensar em desempenho desde a análise de uma aplicação, até sua concepção e implantação.

Saiba o que você vai aprender

 

Sumário

  • 1 Antes da técnica
  • 1.1 Tuning de SQL
  • 1.2 Monitoramento da performance
  • 1.3 Opte pela prevenção, não pela manutenção
  • 1.4 Modelagem é a base de tudo
  • 1.5 Desenvolvedores versus DBA: Trabalho em conjunto
  • 1.6 Por onde começar?
  • 2 Ajuste da SQL
  • 2.1 Otimizador de consultas
  • 2.2 O otimizador do Oracle
  • 2.3 O Modo baseado em Custos (CBO)
  • 2.4 O Modo baseado em Regras (RBO)
  • 2.5 SQL x PL/SQL: Como melhorar um cenário?
  • 3 Processando instruções SQL
  • 3.1 Passos para a execução de instruções SQL
  • 3.2 Shared SQL Areas
  • 4 Utilização de índices
  • 4.1 Tipos de índices
  • 5 Métodos de junção de tabelas
  • 5.1 Executando operações de junção no modo CBO
  • 5.2 Escolhendo métodos de junção no modo CBO
  • 5.3 Escolhendo planos de execução para tipos de junção no modo CBO
  • 5.4 NESTED LOOPS join
  • 5.5 SORT MERGE join
  • 5.6 HASH join
  • 5.7 CARTESIAN join
  • 5.8 Comparação entre os métodos NESTED LOOPS, SORT MERGE e HASH
  • 5.9 Tipos de junção
  • 6 Métodos de acesso
  • 6.1 Como o armazenamento e a leitura dos registros acontecem?
  • 6.2 FULL TABLE SCANS
  • 6.3 ROWID SCANS
  • 6.4 INDEX SCANS
  • 6.5 BITMAP SCANS
  • 6.6 CLUSTER SCANS
  • 6.7 HASH SCANS
  • 6.8 SAMPLE TABLE SCANS
  • 6.9 Escolhendo os métodos de acesso no modo RBO
  • 6.10 Escolhendo os métodos de acesso no modo CBO
  • 7 Tabela Controle (Driving Tables)
  • 7.1 Ordenando tabelas e filtros
  • 7.2 Forçando a Driving Table por hint
  • 7.3 Driving Tables e os métodos de junção
  • 7.4 Driving Tables e os Planos Cartesianos (CARTESIAN join)
  • 8 Otimizando através de hints
  • 8.1 hint CHOOSE
  • 8.2 hint RULE
  • 8.3 hint ALL_ROWS
  • 8.4 hint INDEX
  • 8.5 hint ORDERED
  • 8.6 hint PARALLEL
  • 8.7 hint FIRST_ROWS
  • 8.8 hint FULL
  • 8.9 hint LEADING
  • 8.10 hint CACHE
  • 8.11 hint USE_NL
  • 8.12 hint USE_HASH
  • 8.13 hint USE_MERGE
  • 8.14 Considerações sobre o uso de hints
  • 9 Planos de Execução (Explain Plan)
  • 9.1 Interpretando Planos de Execução
  • 10 Gerando estatísticas para o otimizador
  • 10.1 O pacote dbms_stats
  • 10.2 Quando eu devo gerar estatísticas?
  • 10.3 Geração automática de estatísticas
  • 11 Histogramas
  • 11.1 Gerando histogramas
  • 11.2 Quando e como utilizar ou não histogramas?
  • 12 Gerando e visualizando planos de execução
  • 12.1 SQL*Plus
  • 12.2 explain plan
  • 12.3 v$sql_plan
  • 12.4 autotrace
  • 12.5 dbms_xplan
  • 12.6 Rastreie e visualize com trace e tkprof
  • 13 Conclusão
  • 14 Referências bibliográficas

Autor

Eduardo Gonçalves

Formado em Tecnologia da Informação, possui mais de 15 anos de experiência em análise e desenvolvimento de sistemas voltados para tecnologias Oracle. Trabalhou para grandes empresas como Lojas Renner, Mundial S.A, Tigre S.A, Pernambucanas, Engie, Portobello Cerâmica, Bematech, Positivo, Ailos entre outras. É instrutor de cursos nas linguagens Oracle SQL e Oracle PL/SQL. Atualmente, desenvolve projetos na Supero Tecnologia.

Dados do produto

Número de páginas:
523
ISBN:
978-65-86110-94-4
Data publicação:
12/2021

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter