Otimização de consulta: implantação e mais

Ao longo deste artigo, você aprenderá tudo o que precisa para otimização de consulta no SGBD; melhorar consideravelmente os tempos de resposta desses sistemas tecnológicos.

otimização de consulta-1

DBMS principal hoje.

Otimização de consulta, o que são DBMS?

Antes de começarmos a falar sobre algumas dicas e recomendações para melhorar o otimização de consulta do seu site ou aplicativos. É importante que você conheça um pouco sobre os SGBD que existem hoje.

O SGBD, cuja sigla significa Database Management System; São um conjunto de programas que permitem ao usuário manipular determinadas informações em todos os sentidos, alojadas em um banco de dados; como extrair, armazenar e / ou modificar estes.

Além disso, ajudam a dar toda a segurança necessária a esta base de dados, para gerenciar e controlar o fluxo de entradas e saídas do usuário; até mesmo a proteção destes caso a informação tenha sido corrompida e desaparecido, sendo recuperada. Como um ponto importante, eles também são uma parte relevante do otimização de consulta.

Ou seja, para que um aplicativo, computador ou site funcione corretamente, é necessária a presença de um sistema de banco de dados, caso contrário, ele não teria utilidade alguma.

Entre os exemplos mais notáveis ​​que podemos citar dos SGBD, que existem hoje; tenho: Microsoft SQL Server; CouchDB (este voltado especificamente para a parte de documentos); MongoDB (orientado igual ao anterior); e o mais famoso deles e o mais usado, MySQL, relacional, código aberto, usado por plataformas como o WordPress.

Se você quiser saber mais sobre o banco de dados e especificamente sobre MySQL; Recomendamos o seguinte artigo, onde você aprenderá mais sobre este software tão amplamente utilizado hoje: Tipos de dados em MYSQL.

O que é otimização de consulta?

Basicamente, é para melhorar consideravelmente e de forma otimizada os tempos de resposta do DBMS; de forma que possam fornecer aos seus usuários as informações solicitadas em tempo recorde. Acontece em alguns casos, onde certas aplicações ou outras costumam ser tão complexas que, ao consultar, o tempo para obter uma resposta é bastante longo; Em muitos casos, essa resposta geralmente não é a mais "ótima", ou seja, a melhor possível.

Existem certos otimizadores baseados em custos e estes, por sua vez, baseados em certos planos; que serão aqueles que, através da análise, poderão dar como resultado, os melhores caminhos a seguir para otimizar a consulta; tomando, é claro, aqueles planos com os custos mais baixos possíveis.

Um ponto importante é que os usuários não podem acessar diretamente o otimizador; Eles primeiro têm que passar por um processo de análise e após essa etapa, o usuário já pode ter acesso à otimização

Como eles funcionam?

A maioria dos otimização de consulta, é implementado por meio de uma árvore de nós, para representá-los graficamente. Cada nó presente nessa árvore representa um plano e esses planos, encapsulados nesses nós, nada mais são do que simples operações.

É possível que cada nó tenha outros nós filhos, com planos; mas que da mesma maneira eles operarão o mesmo plano que seu nó pai. No caso das folhas desta "árvore de nós", elas representam os resultados dessas operações realizadas por todos os nós presentes.

Como dados importantes, nos sistemas de gerenciamento de banco de dados; os nós são JOINs, que permitem combinar registros de tabelas (podem ser várias ou apenas uma) em um banco de dados. Na verdade, a palavra Cadastrartraduzido do inglês, significa "unir".

Tendo dito o que está escrito no parágrafo anterior, um dos fatores importantes no otimização de consulta e que maior influência eles têm; Está na ordem em que as tabelas de dados são operadas, ou seja, na ordem em que o JOIN é feito. Otimização posterior poderia ser determinada pela operação das tabelas pequenas em vez das grandes primeiro; se feito ao contrário, o processo pode demorar muito mais do que o previsto.

Muitos otimizadores fazem uso de um certo algoritmo, implementado por Projeto de banco de dados System R; que segue uma série de etapas de análise e busca; que no final, eles produzirão os melhores resultados possíveis. Esses resultados devem ser considerados melhores do que outros, se seguirem a mesma ordem; pois isso poderia reduzir ainda mais os tempos de resposta.

O que são tuplas?

Uma tupla é uma das mais importantes em um banco de dados; desde objetos que contêm a informação de ditos dados (no caso da definição matemática). Indo ao campo do computador, não difere muito da definição anterior, exceto que, neste caso, corresponde a uma linha, de uma tabela específica; Os últimos, portanto, são os que contêm os dados salvos.

Como na área da matemática, os dados armazenados nesses objetos são desordenados, pois mais do que uma lista, são um conjunto de dados; e não há duplicação e nenhum tipo de replicação de uma tupla, pois matematicamente, isso seria impossível.

Processos de otimização

La otimização de consulta, segue uma série de etapas ou um processo. Nesse caso, vamos simplesmente nomeá-los e, na próxima seção, daremos algumas dicas a serem lembradas para melhorar o desempenho.

O primeiro passo é o Representação interna de consultas, que deve ter uma série de características (mencionadas na próxima seção) e sistemas, para poder representar as expressões lógicas. A segunda etapa, Conversão para a forma canônica, uma expressão equivalente (derivada do original) será encontrada aqui, que se tornará a forma canônica da consulta e melhorará o desempenho da consulta.

O terceiro processo, Escolha de procedimentos de baixo nível, aqui você encontrará vários pontos (como índices e caminhos alternativos) para a consulta. E finalmente, o Geração e escolha de planos de consulta

Algumas dicas para otimização de consulta

Nesta seção, nomearemos os quatro principais processos de otimização, mas acima de tudo; alguns aspectos a levar em conta, para melhorar o tempo de resposta, que é o ponto principal deste post. Algo muito importante a se levar em conta é ter a presença de um plano (que já citamos anteriormente), pois assim o processo ficará bastante acelerado.

Outra coisa relevante é a escolha de uma estratégia, para poder realizar todo o processo de consulta; Este, por sua vez, será dividido em dois, que serão: a seleção de um algoritmo, que se encarregará de executar a operação; e selecionar índices, bem detalhados e concretos, pois evitariam problemas e atrasos.

Quanto ao plano a ser executado, este consiste em duas fases ou etapas a ter em conta; intimamente relacionado à otimização. A primeira etapa consiste em: gerar expressões lógicas, que se relacionam com a expressão principal; Com "expressões", referimo-nos às ações específicas dadas, para a busca ou obtenção dos dados, portanto, as demais expressões devem estar relacionadas com a principal então.

A segunda etapa, visto que a partir da primeira, certos resultados serão obtidos; Nessa nova fase, esses resultados devem ser registrados, que serão novas expressões lógicas; que servirão de alternativas para poder gerar planos de avaliação posteriormente, então será muito importante.

O acima mencionado irá melhorar consideravelmente o tempo de resposta às consultas. No entanto, você pode ter os seguintes pontos em mente, para melhor eficiência e eficácia na consulta de dados: seja claro sobre um bom ponto de partida para começar com as próximas etapas; oferecem um certo grau de liberdade, que é suficiente, para que mais otimizações possam ser feitas na consulta.

No próximo vídeo que deixaremos abaixo, você poderá aprender mais sobre o otimização de consulta de forma gráfica, o que o ajudará a entender melhor tudo relacionado a esse aspecto da computação. Já que por escrito é muito difícil tentar explicá-lo.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Blog da Actualidad
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.