Arquivos integração de dados - Analyticsbr
Arquivo da tag integração de dados
Início / Posts com a tagintegração de dados"
Esta etapa é uma das fases mais criticas de um Data Warehouse, pois envolve a fase de movimentação dos dados. A mesma se dá basicamente em três passos, extração, transformação e carga dos dados, esses são os mais trabalhosos, complexos e também muito detalhados, embora tenhamos várias ferramentas (falaremos mais abaixo) que nos auxiliam na execução desse trabalho.
O primeiro passo a ser tomado n o processo de ETL é simplesmente a definição das fontes de dados e fazer a extração deles. As origens deles podem ser várias e também em diferentes formatos, onde poderemos encontrar desde os sistemas transacionais das empresas até planilhas, flat files (arquivos textos) , dados que vem do grande porte e também arquivos do tipo DBF, do Dbase.
Definidas as fontes, partimos para o segundo passo que consiste em transformar e limpar esses dados. Mas o que afinal de contas o que é isso?
Bem vamos descrever de uma forma bem simples. Quando obtemos os dados de uma fonte, que na maioria das vezes é desconhecida nossa, e foi concebida ha muito tempo atrás, os mesmos possuem muito lixo e há muita inconsistência. Por exemplo. Quando um vendedor de linhas telefônicas for executar uma venda, ou inscrição, ele está preocupado em vender, e não na qualidade dos dados que está inserindo na base, então se por acaso o cliente não tiver o número do CPF a mão, ele cadastra um número qualquer, desde que o sistema aceite, um dos mais utilizados é o 999999999-99. Agora imagine um diretor de uma companhia telefônica consultar o seu Data Warehouse (DW) para ver quais são os seus maiores clientes, e aparecer em primeiro lugar o cliente que tem o CPF 999999999-99 ? Seria no mínimo estranho. Por isso, nessa fase do DW, fazemos a limpeza desses dados, para haver compatibilidade entre eles.
Além da limpeza, temos de fazer na maioria das vezes uma transformação, pois os dados provêm de vários sistemas, e por isso, geralmente uma mesma informação tem diferentes formatos, por exemplo: Em alguns sistemas a informação sobre o sexo do cliente pode estar armazenada no seguinte formato : "M" para Masculino e "F" para Feminino, porém em algum outro sistema está guardado como "H" para Masculino e "M" para Feminino e assim sucessivamente. Quando levamos esses dados para o DW, deve-se ter uma padronização deles, ou seja, quando o usuário for consultar o DW, ele não pode ver informações iguais em formatos diferentes, então quando fazemos o processo de ETL, transformamos esses dados e deixamos num formato uniforme sugerido pelo próprio usuário. No DW, teremos somente M e F, fato esse que facilitará a análise dos dados que serão recuperados pela ferramenta OLAP.
Como o volume de dados é muito grande, há muitos casos que não temos condições de processar as extrações e transformações na janela de tempo em que o DW não está sendo usado, então temos de fazer uso do que chamamos de staging área (ver mais detalhes) para conseguirmos executar os processos com sucesso.
A extração de dados do ambiente operacional para o ambiente de data warehouse demanda uma mudança na tecnologia. Os dados são transferidos de bancos de dados hierárquicos, tal como o adabas, ou de bases do grande porte, como o DB2, para uma nova estrutura de SGBD relacional para Data Warehouse, tal como o Sap Sybase IQ, DB2 UDB, Oracle, Teradata e etc;
O data warehouse espelha as informações históricas necessárias, enquanto o ambiente operacional focaliza as informações pontuais correntes.
A parte de carga dos dados também possui uma enorme complexidade, e os seguintes fatores devem ser levados em conta:
Apesar de existirem ferramentas de ETL como o SSIS (Sql Server Integration Services) Data Stage, Business Objects Data Integrator e o Informática PowerCenter, ainda tem-se a necessidade de criar rotinas de carga para atender determinadas situações que poderão ocorrer. Pode ser em shell script, SQL puro ou em C, quando necessita-se de performance.
As ferramentas de ETL mais utilizadas no mercado são o Data Stage da IBM, o PowerCenter da Informática, O SSIS – SQL Server Integration Services da Microsoft, Pentaho (Open Source), Talend (Open Source), Sap Data Integrator ou Data Services e o ODI – Oracle Data Integrator da Oracle. Todos tem os seus diferenciais e cada um poderá ser utilizado dependendo do caso de cada empresa. Algumas ferramentas tem a curva de aprendizado mais suave, outras um pouco mais íngrime, mas em certos casos mesmo sendo uma ferramenta de difícil aprendizado exigindo maiores investimentos em pessoal, serão compensados com a performance e flexibilidade da mesma. Há outras ferramentas que tem custo zero de aquisição pois, vem embutida junto com um SGBD (Sistema Gerenciador de Banco de Dados) e tem as open source que, dependendo do porte do projeto, podem atender satisfatoriamente.