Testar sua migração

Concluído

Digamos que você seja um administrador de banco de dados de um escritório de advocacia e que tenha atualizado alguns dos bancos de dados da empresa. Agora você precisa garantir que tudo esteja funcionando normalmente antes de reconfigurar os aplicativos para usar os novos bancos de dados. É importante localizar e corrigir as consultas com falhas e substituir os recursos preteridos. Você também precisa que o desempenho do banco de dados seja igual ou melhor do que a versão existente.

Você quer uma ferramenta para automatizar esse processo. Não seria possível testar exaustivamente vários aplicativos antes que os usuários tenham que retomar o trabalho.

Tarefas pós-migração

Antes que seus aplicativos comecem a consumir os novos bancos de dados de destino, você deve encontrar e corrigir os problemas de compatibilidade. Se você estiver fazendo uma operação de atualização em larga escala em bancos de dados críticos da empresa, os problemas de compatibilidade serão cruciais, pois o ideal é ter o menor tempo de inatividade possível. Além disso, você precisa manter os níveis de desempenho atuais ou fazer melhorias no que for possível.

É natural supor que migrar seu banco de dados para um novo hardware e para a versão mais recente do SQL Server aumentaria o desempenho. Essa suposição pode atrair DBAs, já que novos recursos podem ser reprojetados de forma a degradar o desempenho de bancos de dados mais antigos. Os procedimentos armazenados podem não funcionar de maneira ideal no novo servidor. Testá-los com antecedência ajuda você a evitar descobrir apenas depois que a alteração entrar em vigor e os usuários sofrerem as consequências das consultas lentas.

Otimizar usando o Assistente para Experimentos de Banco de Dados

O DEA (Assistente para Experimentos de Banco de Dados) permite automatizar o processo de teste da carga de trabalho do banco de dados atual em um servidor de destino. Ele foi projetado para testes A/B e permite que você teste como o banco de dados fará em uma versão atualizada do SQL Server. Você também pode testar o desempenho em um hardware diferente ou com novos recursos adicionados. O ponto crucial dos testes A/B é que você altera um elemento: essa abordagem fornece uma linha de base em relação à qual você testa uma única variante.

Screenshot of the Database Experimentation Assistant with the welcome screen displayed.

Na prática, um servidor pode ter desenvolvedores e DBAs constantemente fazendo alterações. Quando uma consulta fica mais lenta, pode ser difícil identificar a alteração que causa a degradação. Ao testar o banco de dados em uma versão atualizada, você pode criar o banco de dados e reproduzir uma amostra da carga de trabalho atual no banco de dados atualizado usando o DEA.

O DEA compara um banco de dados de origem e de destino idênticos, exceto por uma variação: o banco de dados atualizado. Você executa um rastreamento no servidor de produção de origem para capturar as consultas que formam uma carga de trabalho típica. A execução do rastreamento tem um impacto mínimo no servidor, portanto, você pode executar rastreamentos mesmo durante períodos de alta demanda. A ferramenta DEA localiza consultas degradadas e gera relatórios detalhados para realçar o código que é executado mais lentamente no ambiente de destino. Em seguida, você pode otimizar o código antes de alternar o sistema de produção para o banco de dados de destino.

Como executar testes realistas

No escritório de advocacia, você originalmente tinha uma situação complexa com muitos bancos de dados distribuídos em servidores executando diversas versões do SQL Server.

Antes de fazer qualquer atualização, certifique-se de usar o DEA para analisar o desempenho do sistema original. Em seguida, você pode comparar o desempenho depois de fazer a atualização. Essa análise garantirá que a alteração não tenha um impacto negativo no desempenho.

A ferramenta DEA reduz o tempo administrativo e elimina o erro humano, automatizando grande parte do processo de teste depois que você atualiza os bancos de dados. Ao gerar um relatório de análise que realça erros de consulta, informações de plano de consulta e estatísticas, você pode corrigir e ajustar consultas rapidamente para fazer com que os aplicativos voltem a funcionar. O DEA foi projetado para testes A/B, para que você possa testar o impacto de uma única alteração em seu banco de dados. O DEA é ideal para otimizar seus bancos de dados antes de fazer uma atualização.