Partilhar via


Análise exploratória com o Orientador de Otimização do Mecanismo de Banco de Dados

Administradores de banco de dados podem usar o Orientador de Otimização do Mecanismo de Banco de Dados para executar análise exploratória. A análise exploratória envolve o uso de uma combinação de ajuste manual e ajuste com a ajuda de ferramentas. Para executar análise exploratória com o Orientador de Otimização do Mecanismo de Banco de Dados, use o recurso de configuração especificado pelo usuário. O recurso de configuração especificado pelo usuário permite especificar configurações de ajuste de estruturas de design físicas existentes e hipotéticas, como índices, exibições indexadas e particionamentos. O benefício de especificar estruturas hipotéticas é que você pode avaliar seus efeitos em seus bancos de dados sem incorrer na sobrecarga de implementá-las primeiro.

Embora a GUI (Interface gráfica do usuário) do Orientador de Otimização do Mecanismo de Banco de Dados e o utilitário de linha de comando dta ofereçam suporte à análise exploratória, o dta fornece mais flexibilidade pois pode usar um arquivo de entrada XML. Esse arquivo de entrada XML usa o esquema XML do Orientador de Otimização do Mecanismo de Banco de Dados, um esquema publicado que você pode descarregar acessando Database Engine Tuning Advisor Schema.

Depois de navegar até essa URL, role para baixo as linhas da tabela até encontrar o link para o esquema do Orientador de Otimização do Mecanismo de Banco de Dados. A URL exata para esse esquema está na coluna adjacente. Esse esquema XML oferece suporte à especificação de configurações hipotéticas de análise que são avaliadas isoladamente, ou de configurações hipotéticas que são avaliadas em relação à configuração atual. Em comparação, a GUI do Orientador de Otimização do Mecanismo de Banco de Dados só oferece suporte completo à avaliação de um subconjunto de estruturas de uma recomendação gerada pelo Orientador de Otimização do Mecanismo de Banco de Dados.

Dois modos de análise exploratória

A análise exploratória pode ser executada em qualquer um dos dois modos seguintes com o Orientador de Otimização do Mecanismo de Banco de Dados:

  • Modo de avaliação

    No modo de avaliação, o Orientador de Otimização do Mecanismo de Banco de Dados compara o custo da configuração atual (C) com o custo de uma configuração especificada pelo usuário (U), para a mesma carga de trabalho. C é sempre uma configuração real pois consiste em estruturas de design físicas que existem atualmente no banco de dados. Em comparação, U é uma configuração que consiste em estruturas de design físicas hipotéticas e reais. Se o Orientador de Otimização do Mecanismo de Banco de Dados informar que o custo de U é inferior ao o custo de C, é provável que o design físico de U executará melhor do que o de C.

    Por exemplo, o modo de avaliação é útil nas seguintes situações:

    • Um administrador quer determinar o impacto de desempenho de adicionar um índice não-cluster a uma tabela.

    • Um administrador acabou de usar o Orientador de Otimização do Mecanismo de Banco de Dados para ajustar um banco de dados e recebeu a recomendação (R). Depois de examinar R, o administrador quer ajustar R, modificando-o. Por exemplo, ele quer adicionar dois índices não-cluster e excluir um índice não-cluster que era parte de R. Depois de modificar R, o administrador usa a recomendação modificada como entrada para o Orientador de Otimização do Mecanismo de Banco de Dados e faz novo ajuste para medir o impacto de desempenho de suas modificações.

  • Modo de ajuste

    No modo de ajuste, um administrador de banco de dados já sabe que uma parte do design físico do banco deveria ser fixa, mas ele quer que o Orientador de Otimização do Mecanismo de Banco de Dados recomende as melhores estruturas de design físicas para o resto da configuração.

    Por exemplo, o modo de ajuste é útil nas seguintes situações:

    • Um administrador de banco de dados sabe que uma tabela de fatos deve ser particionada porque é muito grande. Ele deve escolher entre particioná-la por mês ou por trimestre. Qualquer forma de particionar a tabela funcionaria, mas o administrador quer escolher o método de particionamento que forneça o melhor desempenho para uma determinada carga de trabalho. Para determinar o melhor método de particionamento, o administrador pode usar o Orientador de Otimização do Mecanismo de Banco de Dados para ajustar a carga de trabalho duas vezes. Primeiro, ele ajusta a carga de trabalho por meio de uma configuração especificada pelo usuário com a tabela hipoteticamente particionada por mês. Depois, ele ajusta a carga de trabalho com a tabela hipoteticamente particionada por trimestre. Depois que a carga de trabalho foi ajustada com as configurações hipotéticas, o administrador pode comparar a porcentagem de aprimoramento para determinar qual método de particionamento fornece o melhor desempenho.

    • Uma tabela Ordens deve ter um índice cluster em sua coluna ship_date. O administrador do banco de dados quer determinar o melhor conjunto de índices não-cluster para a tabela Ordens. Ele pode reparar parcialmente o design do banco de dados físico especificando uma configuração especificada pelo usuário que tem um índice cluster na coluna ship_date da tabela Ordens. Em seguida, pode usar o Orientador de Otimização do Mecanismo de Banco de Dados no modo de ajuste para determinar os efeitos de desempenho da configuração especificada pelo usuário.

Comparando duas configurações para uma carga de trabalho específica

Um cenário comum é comparar duas configurações diferentes para uma carga de trabalho específica. Por exemplo, o Orientador de Otimização do Mecanismo de Banco de Dados recomenda uma determinada configuração e o administrador quer ver o impacto caso uma configuração ligeiramente diferente seja usada. Para comparar a nova configuração com a original usando a mesma carga de trabalho, é importante utilizar o utilitário de linha de comando dta no lugar da interface gráfica do usuário, porque o utilitário de linha de comando permite especificar quantos eventos de carga de trabalho o Orientador de Otimização do Mecanismo de Banco de Dados deve ajustar (com a opção -n ). Se você especificar o mesmo número de eventos que o Orientador de Otimização do Mecanismo de Banco de Dados deve ajustar para cada configuração, poderá ter a certeza de que as duas sessões de ajuste são equivalentes e, portanto, comparáveis. Isso é importante pois toda a carga de trabalho pode não ser ajustada pelo Orientador de Otimização do Mecanismo de Banco de Dados dentro do tempo especificado. Para obter mais informações, consulte Utilitário dta e Como ajustar um banco de dados usando o utilitário dta.

Considerações para usar a configuração especificada pelo usuário

Observe o seguinte:

  • Configurações especificadas pelo usuário podem consistir nos seguintes objetos de design físico: índices, exibições indexadas, particionamentos de índices e estatísticas.

  • Você pode usar a GUI do Orientador de Otimização do Mecanismo de Banco de Dados para importar uma configuração especificada pelo usuário em uma sessão de ajuste. Para importar uma configuração, no menu Arquivo, clique em Definição da Sessão de Importação.

  • Você também pode usar a GUI do Orientador de Otimização do Mecanismo de Banco de Dados para selecionar um subconjunto de índices de uma de suas recomendações e lançar uma sessão nova com esse subconjunto selecionado de configurações recomendadas para avaliação.

Limitações da configuração especificada pelo usuário

As configurações especificadas pelo usuário têm as seguintes limitações:

  • A especificação de configuração deve se adequar ao esquema XML, DTAschema.xsd, do Orientador de Otimização do Mecanismo de Banco de Dados que pode ser encontrada neste site da Microsoft.

  • A configuração não deve especificar a adição de um índice ou exibição indexada já existente ao banco de dados.

  • A configuração não deve conter qualquer exibição na qual os índices não possam ser criados.

  • A configuração não deve tentar descartar um índice inexistente ou um índice que força uma restrição (por exemplo, uma restrição de chave primária ou exclusiva).

  • A configuração não pode criar e descartar o mesmo índice. Por exemplo, você não pode criar o índice I na tabela T e descartá-lo. Nem pode fazer o oposto: descartar o índice I na tabela T e criá-lo novamente.