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.
Usando o serviço SQL Server Agent, você pode agendar tarefas administrativas do Analysis Services para serem executadas na ordem e nos horários necessários. As tarefas agendadas ajudam você a automatizar processos executados em ciclos regulares ou previsíveis. Você pode agendar tarefas administrativas, como processamento de cubo, para serem executadas durante tempos de atividade comercial lenta. Você também pode determinar a ordem em que as tarefas são executadas criando etapas de trabalho em um trabalho do SQL Server Agent. Por exemplo, você pode processar um cubo e executar um backup do cubo.
As etapas do trabalho fornecem controle sobre o fluxo de execução. Se um trabalho falhar, você poderá configurar o SQL Server Agent para continuar a executar as tarefas restantes ou interromper a execução. Você também pode configurar o SQL Server Agent para enviar notificações sobre o êxito ou a falha da execução do trabalho.
Este tópico é um passo a passo que mostra duas maneiras de usar o SQL Server Agent para executar o script XMLA. O primeiro exemplo demonstra como agendar o processamento de uma única dimensão. O exemplo dois mostra como combinar tarefas de processamento em um único script executado em um agendamento. Para concluir este passo a passo, você precisará atender aos pré-requisitos a seguir.
Pré-requisitos
O serviço SQL Server Agent deve ser instalado.
Por padrão, os trabalhos são executados na conta de serviço. No SQL Server 2012, a conta padrão do SQL Server Agent é NT Service\SQLAgent$<instancename>. Para executar uma tarefa de backup ou processamento, essa conta deve ser um administrador do sistema na instância do Analysis Services. Para obter mais informações, consulte Conceder permissões de administrador do servidor (Analysis Services).
Você também deve ter um banco de dados de teste para trabalhar. Você pode implantar o banco de dados de exemplo multidimensional AdventureWorks ou um projeto do tutorial multidimensional do Analysis Services para usar neste guia passo a passo. Para obter mais informações, consulte Instalar Dados de Exemplo e Projetos para o Tutorial de Modelagem Multidimensional do Analysis Services.
Exemplo 1: Processando uma dimensão em uma tarefa agendada
Este exemplo demonstra como criar e agendar um trabalho que processa uma dimensão.
Uma tarefa agendada do Analysis Services é um script XMLA inserido em um trabalho do SQL Server Agent. Este trabalho está agendado para ser executado em horários e frequência desejados. Como o SQL Server Agent faz parte do SQL Server, você trabalha com o Mecanismo de Banco de Dados e o Analysis Services para criar e agendar uma tarefa administrativa.
Criar um script para processar uma dimensão em um trabalho do SQL Server Agent
No SQL Server Management Studio, ligue-se ao Analysis Services. Abra uma pasta de banco de dados e localize uma dimensão. Clique com o botão direito do mouse na dimensão e selecione Processo.
Na caixa de diálogo Dimensão do Processo , na coluna Opções de Processo na lista De objetos, verifique se a opção para esta coluna é Process Full. Se não estiver, em Opções de Processo, clique na opção e selecione Processo Completo na lista suspensa.
Clique em Script.
Esta etapa abre uma janela consulta XML que contém o script XMLA que processa a dimensão.
Na caixa de diálogo Dimensão do Processo , clique em Cancelar para fechar a caixa de diálogo.
Na janela Consulta XMLA , realce o script XMLA, clique com o botão direito do mouse no script realçado e selecione Copiar.
Esta etapa copia o script XMLA para a Área de Transferência do Windows. Você pode deixar o script XMLA na Área de Transferência ou pode colá-lo no Bloco de Notas ou em outro editor de texto. Veja a seguir um exemplo do script XMLA.
<Batch xmlns="https://schemas.microsoft.com/analysisservices/2003/engine"> <Parallel> <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Object> <DatabaseID>Adventure Works DW Multidimensional</DatabaseID> <DimensionID>Dim Account</DimensionID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> </Parallel> </Batch>
Criar e agendar a tarefa de processamento de dimensão
Conecte-se a uma instância do Mecanismo de Banco de Dados e abra o Pesquisador de Objetos.
Expanda o SQL Server Agent .
Clique com o botão direito do mouse em Trabalhos e selecione Novo Trabalho.
Na caixa de diálogo Novo Trabalho , insira um nome de trabalho em Nome.
Em Selecionar uma página, selecione Etapas e clique em Novo.
Na caixa de diálogo Nova Etapa do Trabalho , insira um nome de etapa no Nome da Etapa.
No Servidor, digite localhost para uma instância padrão do Analysis Services e localhost\<instance name> para uma instância nomeada.
Se você executar o trabalho em um computador remoto, use o nome do servidor e o nome da instância em que o trabalho será executado. Use o formato <nome do servidor> para uma instância padrão e o formato <nome do servidor>\<nome da instância> para uma instância nomeada.
No Tipo, selecione o Comando do SQL Server Analysis Services.
No Comando, clique com o botão direito do mouse e selecione Colar. O script XMLA gerado na etapa anterior deve aparecer na janela de comando.
Clique em OK.
Em Selecionar uma página, clique em Agendas e clique em Novo.
Na caixa de diálogo Novo Agendamento de Trabalho , insira um nome de agendamento em Nome e clique em OK.
Esta etapa cria uma agenda para domingo às 00h00. A próxima etapa mostra como executar manualmente o trabalho. Você também pode especificar um agendamento que executa o trabalho enquanto você o estiver monitorando.
Na caixa de diálogo Novo Trabalho , clique em OK.
No Pesquisador de Objetos, expanda Trabalhos, clique com o botão direito do mouse no trabalho criado e selecione Iniciar Trabalho na Etapa.
Como o trabalho tem apenas uma etapa, o trabalho é executado imediatamente. Se o trabalho contiver mais de uma etapa, você poderá selecionar a etapa na qual o trabalho deve ser iniciado.
Quando o trabalho for concluído, clique em Fechar.
Exemplo 2: Processamento em lote de uma dimensão e uma partição em uma tarefa agendada
Os procedimentos neste exemplo demonstram como criar e agendar um trabalho que processa em lote uma dimensão de banco de dados do Analysis Services e, ao mesmo tempo, processar uma partição de cubo que depende da dimensão de agregação. Para obter mais informações sobre o processamento em lote de objetos do Analysis Services, consulte Processamento em Lote (Analysis Services).
Criar um script para processamento em lote de uma dimensão e partição em um trabalho do SQL Server Agent
Usando o mesmo banco de dados, expanda Dimensões, clique com o botão direito do mouse na dimensão Cliente e selecione Processo.
Na caixa de diálogo Dimensão do Processo, na coluna Opções do Processo na lista de objetos, verifique se a opção para esta coluna é Processar Completo.
Clique em Script.
Esta etapa abre uma janela consulta XML que contém o script XMLA que processa a dimensão.
Na caixa de diálogo Dimensão do Processo , clique em Cancelar para fechar a caixa de diálogo.
Expanda Cubos, expanda Adventure Works, expanda Grupos de Medidas, expanda Vendas pela Internet, expanda Partições, clique com o botão direito do mouse na última partição na lista e selecione Processo.
Na caixa de diálogo Partição de Processo, na coluna Opções de Processo na lista de objetos, verifique se a opção para esta coluna é Process Full.
Clique em Script.
Esta etapa abre uma segunda janela de Consulta XML que contém o script XMLA que processa a partição.
Na caixa de diálogo Partição de Processo , clique em Cancelar para fechar o editor.
Neste ponto, você deve mesclar os dois scripts e garantir que a dimensão seja processada primeiro.
Aviso
Se a partição for processada primeiro, o processamento de dimensão subsequente fará com que a partição fique não processada. Em seguida, a partição exigiria um segundo processamento para alcançar um estado processado.
Na janela Consulta XMLA que contém o script XMLA que processa a partição, realce o código dentro das marcas
BatcheParallel, clique com o botão direito do mouse no script realçado e selecione Copiar.<Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Object> <DatabaseID> Adventure Works DW Multidimensional</DatabaseID> <CubeID>Adventure Works</CubeID> <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID> <PartitionID> Internet_Sales_2004</PartitionID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process>Abra a janela consulta XMLA que contém o script XMLA que processa a dimensão. Clique com o botão direito no script à esquerda da
</Process>tag e selecione Colar.O exemplo a seguir mostra o script XMLA revisado.
<Batch xmlns="https://schemas.microsoft.com/analysisservices/2003/engine"> <Parallel> <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Object> <DatabaseID>Adventure Works DW Multidimensional</DatabaseID> <DimensionID>Dim Customer</DimensionID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Object> <DatabaseID>Adventure Works DW Multidimensional</DatabaseID> <CubeID>Adventure Works</CubeID> <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID> <PartitionID>Internet_Sales_2004</PartitionID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> </Parallel> </Batch>Realce o script XMLA revisado, clique com o botão direito do mouse no script realçado e selecione Copiar.
Esta etapa copia o script XMLA para a Área de Transferência do Windows. Você pode deixar o script XMLA na Área de Transferência, salvá-lo em um arquivo ou cole-o no Bloco de Notas ou em outro editor de texto.
Criar e agendar o trabalho de processamento em lote
Conecte-se a uma instância do SQL Server e abra o Pesquisador de Objetos.
Expanda o SQL Server Agent . Inicie o serviço caso não esteja em execução.
Clique com o botão direito do mouse em Trabalhos e selecione Novo Trabalho.
Na caixa de diálogo Novo Trabalho , insira um nome de trabalho em Nome.
Em Etapas, clique em Novo.
Na caixa de diálogo Nova Etapa do Trabalho , insira um nome de etapa no Nome da Etapa.
No Tipo, selecione o Comando do SQL Server Analysis Services.
Em Executar como, selecione a Conta de Serviço do SQL Server Agent. Lembre-se da seção de Pré-requisitos que essa conta deve ter autorização administrativa no Analysis Services.
No Servidor, especifique o nome do servidor da instância do Analysis Services.
No Comando, clique com o botão direito do mouse e selecione Colar.
Clique em OK.
Na página Agendas , clique em Novo.
Na caixa de diálogo Novo Agendamento de Trabalho , insira um nome de agendamento em Nome e clique em OK.
Esta etapa cria uma agenda para domingo às 00h00. A próxima etapa mostra como executar manualmente o trabalho. Você também pode selecionar uma agenda que executará o trabalho enquanto você o estiver monitorando.
Clique em OK para fechar a caixa de diálogo.
No Pesquisador de Objetos, expanda Trabalhos, clique com o botão direito do mouse no trabalho que você criou e selecione Iniciar Trabalho na Etapa.
Como o trabalho tem apenas uma etapa, o trabalho é executado imediatamente. Se o trabalho contiver mais de uma etapa, você poderá selecionar a etapa na qual o trabalho deve ser iniciado.
Quando o trabalho for concluído, clique em Fechar.
Consulte Também
Opções e configurações de processamento (Analysis Services)
Tarefas administrativas de script no Analysis Services