Lar Bases de dados O que a desfragmentação faz para sistemas sql?

O que a desfragmentação faz para sistemas sql?

Anonim

Q:

O que a desfragmentação faz para sistemas SQL?

UMA:

A manutenção e o monitoramento contínuos do banco de dados são os principais elementos a serem considerados para executar um sistema SQL sem problemas. Quando um banco de dados é criado e preenchido, inicialmente os dados são colocados em um local físico contíguo (se houver espaço físico contíguo suficiente). Portanto, nesse caso, a ordem lógica e a ordem física dos dados provavelmente são semelhantes e aumenta o desempenho.

Quando os dados são modificados, excluídos ou atualizados, os índices relevantes também são atualizados automaticamente para refletir essas alterações. Como resultado, os índices ficam fragmentados e as informações espalhadas pelo espaço de armazenamento. Ele altera a ordem física dos dados (à medida que perde a alocação contígua) e a recuperação se torna demorada, resultando em desempenho lento do banco de dados.

A solução para esse problema é executar a desfragmentação periodicamente. A desfragmentação na verdade recria ou reorganiza os índices para corresponder à ordem lógica dos dados com a ordem física. Antes de executar qualquer operação de desfragmentação, todos os índices devem ser analisados ​​corretamente. Os resultados da análise determinam se é necessária uma reorganização ou reconstrução.

As duas operações principais executadas pelo processo de desfragmentação são:

  • Reorganização do índice - A reorganização do índice é executada quando a fragmentação está em um nível baixo e o desempenho não é severamente afetado. Na verdade, esse processo faz a reordenação física das páginas no nível da folha para corresponder à ordem lógica. Não cria novas páginas; apenas reordena as páginas existentes. A reorganização pode ser realizada enquanto o sistema estiver online sem bloquear as operações normais do banco de dados.
  • Reconstrução do índice - O processo de reconstrução do índice é executado quando a fragmentação está em um nível mais profundo e o desempenho é muito lento. Nesse processo, o índice original é descartado e um novo índice é criado. Portanto, a ordem física e lógica é recolocada nas posições originais e o desempenho melhora a variedade. A reconstrução também pode criar novas páginas, conforme necessário, e pode ser executada no modo offline ou online.

Portanto, a desfragmentação deve fazer parte do processo de manutenção do SQL Server e precisa ser levada a sério. Um plano de análise de consulta adequado deve ser construído e seguido. Com base na saída da análise de consulta, é necessário reconstruir ou reorganizar os índices. Em resumo, a desfragmentação é essencial para melhorar o desempenho dos sistemas SQL.

O que a desfragmentação faz para sistemas sql?