Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
O Analysis Services armazena dados em cache para aumentar o desempenho da consulta. Este tópico fornece recomendações para usar o comando XMLA ClearCache para limpar caches criados em resposta a uma consulta MDX. Os efeitos da execução do ClearCache variam dependendo se você estiver usando um modelo tabular ou multidimensional.
Quando limpar o cache para modelos multidimensionais
Para bancos de dados multidimensionais, o Analysis Services cria caches no mecanismo de fórmula ao avaliar um cálculo e no mecanismo de armazenamento para os resultados de consultas de dimensão e consultas de grupo de medidas. As consultas do conjunto de medidas ocorrem quando o mecanismo de fórmula precisa de dados de medida para uma coordenada de célula ou subcubo. As consultas de dimensão ocorrem ao consultar hierarquias não naturais e ao aplicar autoexists.
É recomendável limpar o cache ao realizar testes de desempenho. Ao limpar o cache entre as execuções de teste, você garante que o cache não distorça nenhum resultado de teste que meça o impacto de uma alteração de design de consulta.
Quando limpar o cache para modelos tabulares
Os modelos de tabela geralmente são armazenados na memória, em que agregações e outros cálculos são executados no momento em que uma consulta é executada. Dessa forma, o comando ClearCache tem um efeito limitado em modelos tabulares. Para um modelo de tabela, os dados poderão ser adicionados aos caches do Analysis Services se as consultas MDX forem executadas nele. Em particular, as medidas DAX referenciadas por operações MDX e autoexists podem armazenar em cache os resultados no cache de fórmulas e no cache de dimensões, respectivamente. No entanto, observe que hierarquias não naturais e consultas de grupo de medidas não armazenam resultados em cache no mecanismo de armazenamento. Além disso, é importante reconhecer que as consultas DAX não armazenam em cache os resultados na fórmula e no mecanismo de armazenamento. Na medida em que os caches existem como resultado de consultas MDX, a execução do ClearCache em um modelo tabular invalidará todos os dados armazenados em cache do sistema.
A execução do ClearCache também limpará os caches em memória no mecanismo de análise xVelocity (VertiPaq). O mecanismo xVelocity mantém um pequeno conjunto de resultados armazenados em cache. A execução do ClearCache invalidará esses caches no mecanismo xVelocity.
Por fim, a execução do ClearCache também removerá os dados residuais deixados na memória quando um modelo tabular for reconfigurado para o modo DirectQuery. Isso é particularmente importante se o modelo contiver dados confidenciais sujeitos a controles rígidos. Nesse caso, executar o ClearCache é uma ação de precaução que você pode tomar para garantir que os dados confidenciais existam apenas onde você espera que estejam. Limpar o cache manualmente é necessário se você estiver usando o Management Studio para implantar o modelo e alterar o modo de consulta. Por outro lado, o uso das Ferramentas de Dados do SQL Server para especificar DirectQuery no modelo e nas partições limpará automaticamente o cache quando você alternar o modelo para usar esse modo de consulta.
Em comparação com as recomendações para limpar caches de modelo multidimensional durante o teste de desempenho, não há uma recomendação ampla para limpar caches de modelo de tabela. Se você não estiver gerenciando a implantação de um modelo tabular que contenha dados confidenciais, não haverá nenhuma tarefa administrativa específica que exija a limpeza do cache.
Limpar o cache para modelos do Analysis Services
Para limpar o cache, use o XMLA e o SQL Server Management Studio. Você pode limpar o cache no nível do banco de dados, cubo, dimensão, tabela ou grupo de medidas. As etapas a seguir para limpar o cache no nível do banco de dados se aplicam a modelos multidimensionais e modelos tabulares.
Observação
Testes de desempenho rigorosos podem exigir uma abordagem mais abrangente para limpar o cache. Para obter instruções sobre como liberar o Analysis Services e caches do sistema de arquivos, consulte a seção sobre como limpar caches no Guia de Operações do SQL Server 2008 R2 Analysis Services.
Para modelos multidimensionais e tabulares, limpar alguns desses caches pode ser um processo de duas etapas que consiste em invalidar o cache quando ClearCache é executado, seguido pelo esvaziamento do cache quando a próxima consulta é recebida. Uma redução no consumo de memória só ficará evidente depois que o cache for realmente esvaziado.
Limpar o cache requer que você forneça um identificador de objeto para a ClearCache instrução em uma consulta XMLA. A primeira etapa neste tópico explica como obter um identificador de objeto.
Etapa 1: Obter o identificador de objeto
No Management Studio, clique com o botão direito do mouse em um objeto, selecione Propriedades e copie o valor da propriedade ID no painel Propriedades . Essa abordagem funciona para o banco de dados, cubo, dimensão ou tabela.
Para obter a identificação do grupo de medidas, clique com o botão direito do mouse no grupo de medidas e selecione Script Measure Group As. Escolha Criar ou Alterar e envie a consulta para uma janela. A ID do grupo de medidas ficará visível na definição do objeto. Copie a ID da definição do objeto.
Etapa 2: Executar a consulta
No Management Studio, clique com o botão direito do mouse em um banco de dados, aponte para Nova Consulta e selecione XMLA.
Copie o exemplo de código a seguir na janela de consulta XMLA. Altere
DatabaseIDpara a ID do banco de dados na conexão atual.<ClearCache xmlns="https://schemas.microsoft.com/analysisservices/2003/engine"> <Object> <DatabaseID> Adventure Works DW Multidimensional</DatabaseID> </Object> </ClearCache>Como alternativa, você pode especificar um caminho de um objeto filho, como um grupo de medida, para limpar o cache apenas para esse objeto.
<ClearCache xmlns="https://schemas.microsoft.com/analysisservices/2003/engine"> <Object> <DatabaseID>Adventure Works DW Multidimensional</DatabaseID> <CubeID>Adventure Works</CubeID> <MeasureGroupID>Fact Currency Rate</MeasureGroupID> </Object> </ClearCache>Pressione F5 para executar a consulta. Você verá o seguinte resultado:
<return xmlns="urn:schemas-microsoft-com:xml-analysis"> <root xmlns="urn:schemas-microsoft-com:xml-analysis:empty" /> </return>
Consulte Também
Tarefas administrativas de script no Analysis Services
Monitorar uma instância do Analysis Services