ustify>

Capa SQl 33

Clique aqui para ler todos os artigos desta edição

Microsoft Analysis Services 2000 na prática – Parte 3

Integração no Framework da Microsoft

Boas ferramentas se tornam ainda melhores quando são capazes de trabalhar em conjunto. O MSAS é uma excelente solução OLAP, mas ele vai muito além dos cálculos e recursos para análise de dados graças à sua integração com outras ferramentas.

Neste artigo, exploramos a integração do MSAS com alguns outros componentes da plataforma Microsoft que, juntos, formam uma solução simples e robusta.

Automação da carga de dados

No segundo artigo desta série, apresentamos os tipos de processamento disponíveis no MSAS para atualização de dados. Mas, naquele ponto, falávamos de uma atualização manual das bases OLAP.

Em termos práticos, seria absurdo mantermos um processo desta importância de forma manual. É neste ponto que entra a integração do MSAS com o SQL Server, mais especificamente com dois componentes:

·         Data Transformation Services (DTS): destinado a tratamento de dados e processos de ETL (Extract-Transformation-Load) em geral;

·         SQL Agent: serviço do SQL Server que administra jobs e outras tarefas agendadas.

 

Basicamente, o que precisaremos fazer para automatizar o processo de carga de dados no MSAS será construir um pacote DTS, ou seja, um conjunto de instruções para tratamento de dados, e em seguida criar um job para que este pacote seja executado periodicamente.

É importante lembrar que SQL Server e MSAS podem funcionar em servidores separados. Pessoalmente, considero até recomendável que seja assim, para evitarmos a concorrência de operações OLTP e OLAP processando na mesma máquina. Através do pacote DTS que iremos criar, os dados OLTP serão carregados para a base OLAP. E o pacote DTS irá sempre rodar no servidor em que reside o SQL Server. 

Vamos começar apresentando a criação do pacote DTS. Para isso, abriremos o SQL Server Enterprise Manager. Vamos então nos conectar ao servidor SQL desejado. É importante observar que o job de atualização pode ser criado em qualquer servidor SQL existente na sua rede. Em nosso ambiente de teste, usaremos a mesma máquina para rodar o servidor SQL e o servidor OLAP.

Em seguida expandiremos a árvore de objetos e clicaremos com o botão direito sobre Local Packages, escolhendo a opção New Package, como mostra a Figura 1.

 

Figura 1. Criando um pacote DTS.

 

 

 

O DTS oferece um ambiente visual de desenvolvimento. A idéia principal é especificar fonte e destino dos dados, as ações a serem executadas e o fluxo do trabalho. A Figura 2 mostra a tela de desenvolvimento do DTS, com a barra de ferramentas exibindo os objetos de conexão (Connection) e as tarefas a serem executadas (Task).

 

Figura 2. O ambiente de desenvolvimento do DTS.

 

 

No caso específico da integração do DTS com o MSAS, devemos lembrar que as definições de fonte e destino dos dados já fazem parte da própria definição do cubo. Portanto, basta que especifiquemos no DTS qual cubo ou Database desejamos atualizar.

Para isso, existe uma ação pré-definida chamada Analysis Services Processing Task. Clique sobre esta ação e digite um nome e uma descrição da ação, que no futuro lhe servirá como comentário. Em seguida, especifique qual o servidor OLAP, Database e cubo desejamos tratar.

Devemos também especificar que tipo de processamento será considerado, ou seja, se iremos considerar Full Process, Incremental Update ou ainda Refresh Data. Cada uma destas opções é discutida em detalhes no artigo anterior desta série sobre o MSAS (ver SQL Magazine 39). Neste exemplo, consideraremos a opção Refresh Data.

Não se esqueça de deixar marcada a opção Incrementally Update Dimensions, pois esta opção garante que as dimensões serão atualizadas também durante o processamento. Assim, os novos elementos que aparecerem na fonte de dados serão reconhecidos e incluídos na dimensão. Clique OK para concluir (veja a Figura 3).

 

Figura 3. Configurando a ação Analysis Services Processing Task.

 

...

Quer ler esse conteúdo completo? Tenha acesso completo