Esta página foi traduzida por máquina. Leia o original em inglês. English

Biblioteca IBSurgeon

Testando as consultas da aplicação (trecho do "Guia de Migração para o Firebird 3")

Este é um trecho do livro " Guia de Migração para Firebird 3", de Carlos Cantu.

Mudar de uma versão do Firebird para outra pode causar problemas com consultas existentes, desde baixo desempenho até falha total quando consultas usam palavras reservadas recentemente ou SQL incorreto que havia sido aceito.

Um aplicativo geralmente inclui centenas de consultas, desde a navegação de informações na tela até a criação de relatórios, passando por entrada e validação de dados. Pode haver scripts externos e geradores de consultas que geram consultas SQL dinamicamente, portanto não é possível verificar todas as combinações de consultas SQL, mesmo com uma verificação minuciosa dos fontes do aplicativo.

HQbird FBScanner da IBSurgeon é uma ferramenta que pode ajudar você a verificar se os aplicativos existentes funcionam com o Firebird 3 e descobrir se há erros ou lentidão nas consultas SQL de aplicativos em migração. O FBScanner faz parte do HQbird Standard, o pacote de ferramentas de análise que monitora e otimiza servidores Firebird. Ele permite registrar consultas na sua versão atual do Firebird e testá-las no novo servidor Firebird.

O FBScanner funciona como um proxy entre os clientes e o servidor, registrando todas as comunicações: conexões, transações, textos de instruções SQL, número de buscas, planos SQL, erros e tempos de preparação e execução das consultas.

Você pode instalar o FBScanner enquanto usa sua versão atual do Firebird; configure-o para monitorar a comunicação e armazenar consultas em um banco de dados de log. A configuração mais popular é instalar o FBScanner no mesmo servidor, na porta 3050, e alterar a porta do Firebird para outros valores (3053, por exemplo): nesse caso, os aplicativos Firebird existentes continuarão funcionando com o(s) banco(s) de dados no servidor sem qualquer alteração na string de conexão:

Além disso, é possível configurar o FBScanner em um computador de terceiros e rotear apenas alguns clientes pelo FBScanner para capturar apenas as comunicações deles.

Após alguns dias de monitoramento, o banco de dados de log contém um grande número de consultas usadas nos seus aplicativos. Idealmente, deve cobrir toda a atividade SQL no banco de dados, com detalhes sobre tempos e execução:

O FBScanner permite executar as consultas que você registrou. Usando o banco de dados de log, você pode configurar um servidor de teste Firebird 3, restaurar o banco de dados original nele e usar o Analisador de Log do FBScanner para executar as consultas registradas.

O FBScanner exibe o resultado em uma grade, incluindo as informações de desempenho, para que você possa comparar o tempo de execução atual com o que obteve no servidor antigo e comparar o PLANO antigo com o novo PLANO.

As informações na grade podem ser exportadas para uma planilha do Excel.

Ao comparar o tempo de execução das consultas, lembre-se de que fatores externos influenciam o resultado. Uma consideração é se os caches do sistema operacional ou do Firebird estão “frios” ou “quentes”. Obviamente, consultas executadas quando a maioria das informações já está em cache são mais rápidas do que quando os dados são recuperados do disco.

Você pode comprar a versão completa do “Guia de Migração para Firebird 3” aqui.

O HQbird Standard (que contém o FBScanner) pode ser comprado aqui. Oferecemos 10% de desconto no HQbird Standard para aqueles que compraram o “Guia de Migração para Firebird 3” - entre em contato conosco para obter um código de cupom de desconto.

A IBSurgeon também oferece um abrangente " Serviço de Migração para Firebird" - podemos ajudar a migrar bancos de dados com procedimentos armazenados complexos, consultas e outra lógica, de versões antigas do Firebird (1.0, 2.0, 2.1, 2.5) para versões modernas (2.5, 3.0 ou até 4.0).