UNIÃO METROPOLITANA DE EDUCAÇÃO E CULTURA - CURSO DE BACHARELADO EM SISTEMAS DE INFORMAÇÃO TRAJANO CARLOS MONTASSIER NETO



Documentos relacionados
DATA WAREHOUSE. Introdução

Data Warehousing. Leonardo da Silva Leandro. CIn.ufpe.br

Data Warehouse. Debora Marrach Renata Miwa Tsuruda

Planejamento Estratégico de TI. Prof.: Fernando Ascani

Banco de Dados - Senado

Data Warehouse Processos e Arquitetura

Resumo dos principais conceitos. Resumo dos principais conceitos. Business Intelligence. Business Intelligence

DATA WAREHOUSE NO APOIO À TOMADA DE DECISÕES

Interatividade aliada a Análise de Negócios

Curso Data warehouse e Business Intelligence

Módulo 4. Construindo uma solução OLAP

Tópicos Avançados Business Intelligence. Banco de Dados Prof. Otacílio José Pereira. Unidade 10 Tópicos Avançados Business Inteligence.

Modelo de dados do Data Warehouse

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.


Conceitos de Banco de Dados

DATA WAREHOUSE. Rafael Ervin Hass Raphael Laércio Zago

ISO/IEC 12207: Gerência de Configuração

COMUNICAÇÃO DE PORTIFÓLIO UTILIZANDO DASHBOARDS EXTRAIDOS DO MICROSOFT PROJECT SERVER

As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes:

RESUMO DA SOLUÇÃO CA ERwin Modeling. Como eu posso gerenciar a complexidade dos dados e aumentar a agilidade dos negócios?

Data Warehouse. Compras. Caroline B. Perlin

INSTRUÇÃO DE TRABALHO PARA INFORMAÇÕES GERENCIAIS

ADMINISTRAÇÃO DOS RECURSOS DE DADOS

ADMINISTRAÇÃO DE ATIVOS DE TI GERENCIAMENTO DE CONFIGURAÇÃO

A importância da. nas Organizações de Saúde

Forneça a próxima onda de inovações empresariais com o Open Network Environment

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Thalita Moraes PPGI Novembro 2007

Curso Data warehouse e Business Intelligence Fundamentos, Metodologia e Arquitetura

Adriano Maranhão BUSINESS INTELLIGENCE (BI),

Checklist de Projeto de Data Warehouse

Sistemas de Informação I

agility made possible

UNIDADE 4. Introdução à Metodologia de Desenvolvimento de Sistemas

Requisitos de business intelligence para TI: O que todo gerente de TI deve saber sobre as necessidades reais de usuários comerciais para BI

Módulo 4: Gerenciamento de Dados

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.

Em 2012, a Prosoft planejou o lançamento da Versão 5 dos seus produtos.

Prof. Marcelo Machado Cunha

SERVIÇO DE ANÁLISE DE REDES DE TELECOMUNICAÇÕES APLICABILIDADE PARA CALL-CENTERS VISÃO DA EMPRESA

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

Sistema de Controle de Solicitação de Desenvolvimento

BRAlarmExpert. Software para Gerenciamento de Alarmes. BENEFÍCIOS obtidos com a utilização do BRAlarmExpert:

Inteligência Empresarial. BI Business Intelligence. Business Intelligence 22/2/2011. Prof. Luiz A. Nascimento

Como conduzir com sucesso um projeto de melhoria da qualidade

Plataformas de BI Qual é a mais adequada para o meu negócio?

Fornecendo Inteligência, para todo o mundo, a mais de 20 anos.

Uma análise de ferramentas de modelagem e gerência de metadados aplicadas ao projeto de BI/DW-UFBA

Planejando o aplicativo

UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO (Bacharelado)

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon

A Descrição do Produto ou Serviço e a Análise do Mercado e dos Competidores Fabiano Marques

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

Governança de TI. ITIL v.2&3. parte 1

SAM GERENCIAMENTO DE ATIVOS DE SOFTWARE

COMO EXPLORAR OS BENEFÍCIOS DOS INDICADORES DE DESEMPENHO NA GESTÃO DE UM CSC. Lara Pessanha e Vanessa Saavedra

ADMINISTRAÇÃO DOS RECURSOS DE DADOS

Disciplina de Banco de Dados Introdução

Orientação a Objetos

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Oracle Hyperion Essbase

Figura 1 - Arquitetura multi-camadas do SIE

Processos de gerenciamento de projetos em um projeto

Data Warehouse. Diogo Matos da Silva 1. Universidade Federal de Ouro Preto, Ouro Preto, MG, Brasil. Banco de Dados II

PLANO DE ENSINO PRÉ-REQUISITOS: ENS

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Conceitos Básicos de Rede. Um manual para empresas com até 75 computadores

Gerenciamento de Problemas

Aumente sua velocidade e flexibilidade com a implantação da nuvem gerenciada de software da SAP

Nome: Login: CA: Cidade: UF CARTÃO RESPOSTA QUESTÃO RESPOSTA QUESTÃO RESPOSTA

perspectivas e abordagens típicas de campos de investigação (Senra & Camargo, 2010).

3 SCS: Sistema de Componentes de Software

Material de Apoio. Sistema de Informação Gerencial (SIG)

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

IMPLANTAÇÃO DE UM SISTEMA DE AVALIAÇÃO DE DESEMPENHO NA UFG

SAD orientado a DADOS

SISTEMA DE GESTÃO DE PESSOAS SEBRAE/TO UNIDADE: GESTÃO ESTRATÉGICA PROCESSO: TECNOLOGIA DA INFORMAÇÃO

Governança Corporativa. A importância da Governança de TI e Segurança da Informação na estratégia empresarial.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Manual de Utilização

SISTEMAS DE GESTÃO São Paulo, Janeiro de 2005

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11

BancoEstado ganha eficiência de dados e mais rapidez no desenvolvimento de sistemas com CA ERwin

Gestão de Relacionamento com o Cliente CRM

Abordagem de Processo: conceitos e diretrizes para sua implementação

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

ERP. Enterprise Resource Planning. Planejamento de recursos empresariais

Gerenciamento de Incidentes

TÓPICOS AVANÇADOS EM ENGENHARIA DE SOFTWARE

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

ADMINISTRAÇÃO DE ATIVOS DE TI GERENCIAMENTO DE LIBERAÇÃO

Complemento I - Noções Introdutórias em Data Warehouses

Implantação. Prof. Eduardo H. S. Oliveira

Introdução a Computação

Transcrição:

UNIÃO METROPOLITANA DE EDUCAÇÃO E CULTURA - CURSO DE BACHARELADO EM SISTEMAS DE INFORMAÇÃO TRAJANO CARLOS MONTASSIER NETO AVALIAÇÃO DAS FERRAMENTAS ETL OPEN-SOURCE TALEND E KETTLE PARA PROJETOS DE DATA WAREHOUSE EM EMPRESAS DE PEQUENO PORTE LAURO DE FREITAS 2012

TRAJANO CARLOS MONTASSIER NETO AVALIAÇÃO DAS FERRAMENTAS ETL OPEN-SOURCE TALEND E KETTLE PARA PROJETOS DE DATA WAREHOUSE EM EMPRESAS DE PEQUENO PORTE Trabalho de Conclusão de Curso apresentado ao curso de Bacharelado em Sistema de Informações da UNIME, como requisito parcial para obtenção de grau de Bacharel em Sistema de Informação. Orientador: Professor Pablo Passos Nascimento. LAURO DE FREITAS 2012

AGRADECIMENTOS Em primeiro lugar, agradeço a Deus, que me deu forças e clareou o meu caminho, ajudando-me a superar as dificuldades e os obstáculos, mas no final, fui presenteado por este momento. A minha Mãe Cecilia (in memoriam), a quem dedico essa realização e que, durante muitos anos, foi para mim um exemplo de força e superação. Um especial agradecimento a minha esposa, Rosangela e ao meu filho Vitor, que me apoiaram em todos os momentos desta trajetória. Obrigado por compartilharem comigo essa caminhada; sem essa força não seria possível chegar ao fim. Igualmente agradeço aos meus tios Sylvio e Deolinda(in memoriam), sempre presentes na minha vida e responsáveis por um apoio incondicional no momento em que mais precisei no início de minha carreira profissional. Obrigado pelo carinho e o afeto que têm me concedido. Aos familiares e amigos, que estiveram ao meu lado ou de alguma forma fizeram parte desta história, dando-me forças para superar e não desistir e ainda me ajudando a esquecer as dificuldades desse percurso através dos momentos descontração e alegria em que passamos juntos. Também, não menos importante, meu agradecimento à direção da empresa Morais de Castro, que me apoiou e me incentivou-me a realizar o curso superior. A todos os Mestres com quem tive o prazer de compartilhar conhecimento nesse período, um muito obrigado. E, em especial, ao meu orientador Professor Pablo Passos, que acreditou em meu potencial e, com dedicação e empenho, ajudou-me a realizar este trabalho além de ser uma figura fundamental nesta orientação desde seu nascimento. Ao Coordenador Jorge Farias, que sempre se mostrou interessado em apoiar e ajudar seus alunos. Por fim, não poderia deixar de agradecer a minha Professora Cristiane Dutra por sua colaboração ajudando a engrandecer o resultado deste trabalho.

RESUMO Ferramentas de ETL são aplicações de software cuja função, em termos gerais, é extrair dados de diversas fontes, transformar esses dados para garantir padronização e consistência das informações carregá-los para um ambiente de consulta e análise, conhecido como data warehouse. As diversas ferramentas de ETL disponíveis no mercado atualmente possuem as funções básicas com características bem semelhantes e o nível de sofisticação fica por conta de recursos mais específicos que vão diferenciar umas das outras. Na perspectiva das empresas de pequeno e médio porte, às quais possuem uma capacidade de investimento em ferramental tecnológico limitada, as ferramentas ETL open source configuram-se como uma alternativa interessante uma vez que o licenciamento e as atualizações são gratuitos. Através de pesquisas realizadas por organizações especializadas, foi possível identificar as ferramentas Kettle e Talend como as mais importantes atualmente no universo das ferramentas ETL open-source. Tal fato expõe a necessidade de desenvolver um método para avaliar as ferramentas ETL open-source Talend e Kettle/Pentaho através da definição de critérios relativos às características e funcionalidades importantes para a construção de um projeto de DW. Os resultados de cada um dos critérios foram coletados através da utilização das ferramentas em um estudo de caso prático no âmbito de uma empresa de pequeno porte. Palavras-chave: Ferramenta ETL, Kettle, Talend, CloverETL, Business Intelligence, Data Warehouse.

ABSTRACT ETL tools are software applications whose function, in general terms, is to extract data from several sources, then transform it to ensure standardization and consistency of information, upload it to an environment of consultation and analysis, known as data warehouse. The several ETL tools available on the market these days have the basic functions with very similar characteristics and the level of sofistication is on more specific features that will differentiate one another. From the perspective of small and medium businesses, which have a limited capacity of investment in technological tools, the ETL open-source tools are an interesting alternative since the licensing and upgrades are for free. Through research conducted by organizations it was possible to identify the Kettle and Talend as the currently most important ones in the world of ETL open-source tools. This fact explains the need to develop a method to evaluate the ETL open-source Talend and Kettle / Pentaho tools by defining criteria pertaining to the characteristics and features that are important to build a DW project. The results of each of the criteria were collected through the use of tools in a practical case study within a small business. Keywords: ETL Tools, Kettle, Talend, CloverETL, Business Intelligence, Data Warehouse.

LISTA DE FIGURAS Figura 1 O Ambiente de um Data Warehouse... 19 Figura 2 - Staging Area ou ODS... 22 Figura 3 Arquitetura de Data Mart Independente... 23 Figura 4 Arquitetura de Data Mart Integrado... 24 Figura 5 Modelo de Implementação Top Down em Data Mart Dependente... 25 Figura 6 Modelo de Implementação Botton Up para Data Mart Independente... 27 Figura 7 Modelo Multidimensional Snowflake... 30 Figura 8 Modelo Multidimensional Star Schema... 31 Figura 9 Representação de Granularidade... 32 Figura 10 - Dimensão que Muda Lentamente Tipo-1... 34 Figura 11 - Dimensão que Muda Lentamente Tipo-2... 35 Figura 12 - Dimensão que Muda Lentamente Tipo-3... 36 Figura 13 - Estratégia de Carregamento de Tabelas de Fatos de Nível Básico... 37 Figura 14 Representação das Origens de Metadados... 40 Figura 15 Modelo Clover Designer... 49 Figura 16 Modelo Talend Open Studio... 53 Figura 17 Modelo PDI / Kettle... 56 Figura 18 - Ambiente OLAP - Modelagem Esquema Star... 61 Figura 19 - Ambiente Transacional Modelagem 3FN... 62 Figura 20 Menu Conexão Banco de Dados no Kettle/Pentaho... 63 Figura 21 - Conexão Banco de Dados no Kettle/Pentaho... 63 Figura 22 Menu Conexão Banco de Dados no Talend... 64 Figura 23 - Conexão Banco de Dados no Talend... 64 Figura 24 - Movimentação de Dados para Staging Area no Kettle... 65 Figura 25 - Movimentação de Dados para Staging Area no Talend... 66 Figura 26 Componente tmap do Talend Open Studio Tabela Cliente... 67 Figura 27 Componente tmap do Talend Open Studio Calculo da Margem de Contribuição... 67 Figura 28 Componente Database Lookup do Kettle Tabela Cliente... 68

Figura 29 Componente Calculator do Kettle Calculo da Margem de Contribuição... 68 Figura 30 Componente Dimension Lookup/Update do Kettle SCD tipo 1 e 2... 71 Figura 31 Componente tpostgresqlscd do Talend SCD tipo 1, 2 e 3... 72 Figura 32 Componente Database lookup do Kettle Carga Tabela Fato Vendas... 72 Figura 33 Componente tmap do Talend Carga Tabela Fato Vendas... 73 Figura 34 Modelo do Talend Carga Tabela Fato Vendas... 73 Figura 35 Exemplo Facilidade para Criar Componentes a Partir de Conexões... 75 Figura 36 - Controle de Versão da Transformação no Kettle... 105 Figura 37 - Controle de Versão da Transformação no Talend... 106 Figura 38 - Consulta Versão de um Trabalho no Talend... 107 Figura 39 Consulta Histórico das Versões de um Trabalho no Talend... 107 Figura 40 - Controle de Status das Versões de um Trabalho no Talend... 108 Figura 41 Exemplo de Tratamento de Erro no Kettle... 109 Figura 42 - Conjunto de Componentes para Manipulação de Erros no Talend... 110 Figura 43 - Exemplo Relatório Análise de Impacto no Kettle... 111 Figura 44 - Exemplo de Rastreabilidade e Propagação de Atributos no Kettle... 112 Figura 45 - Relatório de Rastreabilidade dos Atributos no Kettle... 113 Figura 46 - Exemplo de Propagação de Atributos no Talend... 113 Figura 47 - Exemplo de Rastreabilidade e Manipulação de Atributos no Talend... 114 Figura 48 - Relatório de Documentação Automática do Kettle... 115 Figura 49 - Chamada ao Gerador de Documentação no Talend... 115 Figura 50 - Relatório de Documentação no Talend... 116 Figura 51 - Exemplo de Compartilhamento de Recursos do Kettle... 117 Figura 52 - Modelo de um Painel com Jobs e Metadados Compartilhados no Talend.. 118 Figura 53 - Exemplo de Execução Passo-a-Passo no Kettle... 119 Figura 54 - Modelo dos Painéis de Depuração Passo-a-Passo no Talend... 120 Figura 55 - Exemplo de Configuração do Ponto de Parada no Kettle... 120 Figura 56 - Exemplo de Configuração do Ponto de Parada no Talend... 121 Figura 57 - Exemplo do Recurso de Validação no Kettle... 122

LISTA DE GRÁFICOS Gráfico 1 Quadrante Mágico para Ferramentas de Qualidade de Dados... 52 Gráfico 2 Por Categoria de Requisitos... 88

LISTA DE TABELAS Tabela 1 Vantagens e Desvantagens da Implementação TOP DOWN... 25 Tabela 2 Vantagens e Desvantagens da Implementação BOTTON-UP... 26 Tabela 3 Matriz de Processo de Negócio - Parte 1... 59 Tabela 4 Matriz de Processo de Negócio Parte 2 (continuação)... 59 Tabela 5 Requisitos Relevantes com as Respectivas Avaliações... 81 Tabela 6 - Pontuações por Item de Requisito... 87 Tabela 7 - Resumo das Pontuações por Categoria de Requisitos... 88

LISTA DE SIGLAS 3FN Terceira Forma Normal API Interface de Programação de Aplicativos BI Business Intelligence DB2 Banco de Dados da IBM DM Data Mart DSS Sistema de Suporte a Decisão DW Data Warehouse EIS Sistema de Informações Executivas ER Entidade de Relacionamento ETL Extract, Transformation and Load IDC International Data Corporation MDM Master Data Management MPP Multi-Processamento Paralelo ODBC Open Database Connectivity ODS Staging Area ou Operacional Data Store OLAP On-line Analitycal Processing OLTP On-line Transactional Processing PDI Pentaho Data Integration SAD Sistema de Apoio a Decisão SAP Sistemas Aplicativos e Produtos - Software Gestão Empresarial SGBD Sistema Gerenciador de Banco de Dados SMP Multi-processamento Simétrico TXT Padrão de Arquivo Texto VM Máquina Virtual XML Padrão de Arquivo

SUMÁRIO 1 INTRODUÇÃO... 12 2 Data Warehouse... 18 2.1 A HISTÓRIA DO EIS AO DATA WAREHOUSE... 18 2.2 CONCEITOS E PROPRIEDADES DO DATA WAREHOUSE... 19 2.3 ARQUITETURA DO DATA WAREHOUSE... 21 2.3.1 Staging Area... 21 2.3.2 Data Mart... 23 2.4 FORMAS DE IMPLEMENTAÇÕES... 24 2.5 ETAPAS DA IMPLANTAÇÃO DO PROJETO... 28 2.5.1 Modelagem... 28 2.5.2 ETL... 33 2.5.3 ANÁLISE DE INFORMAÇÕES... 41 3 ETL EXTRAÇÃO, TRANSFORMAÇÃO E CARGA DE DADOS... 42 3.1 ABRANGÊNCIA DO ETL... 42 3.2 ETAPAS DO PROCESSO DE ETL... 43 4 FERRAMENTAS DE ETL... 45 4.1 CONCEITO... 45 4.2 CARACTERÍSTICAS E BENEFÍCIOS... 45 4.3 MODELO OPEN SOURCE... 47 4.3.1 Ferramenta CloverETL... 48 4.3.2 Ferramenta TALEND... 51 4.3.3 Ferramenta KETTLE (PENTAHO)... 54 5 Estudo de caso: empresa de pequeno Porte... 57 5.1 ANÁLISE DE REQUISITOS E DESENVOLVIMENTO DA MATRIZ DO PROCESSO DE NEGÓCIO... 58 5.2 DEFINIÇÃO DO MODELO DIMENSIONAL... 60 5.3 EXTRAÇÃO DOS DADOS, MOVIMENTAÇÃO PARA STAGING AREA... 62 5.4 NECESSIDADES DE TRANSFORMAÇÃO, DIMENSÃO E FATO... 66 5.5 PLANEJAMENTO DE CARGA DAS DIMENSÕES... 69 5.6 PLANEJAMENTO DE CARGA DA TABELA FATO... 72 5.7 NOTAS DO DESENVOLVIMENTO... 74

6 AVALIAÇÃO DAS FERRAMENTAS DE ETL... 78 6.1 IDENTIFICAÇÃO DOS REQUISITOS... 78 6.2 AVALIAÇÃO DOS REQUISITOS... 79 6.2.1 Resumo das pontuações... 86 7 CONCLUSÃO... 89 REFERÊNCIAS:... 91 ANEXO 1 INFRA-ESTRUTURA UTILIZADA NA EXECUÇÃO DO LABORATÓRIO... 94 ANEXO 2 LISTA DE CRITÉRIOS PARA AVALIAÇÃO DAS FERRAMENTAS ETL... 95 ANEXO 3 ANÁLISE COMPLEMENTAR DOS CRITÉRIOS RELEVANTES... 105

1 INTRODUÇÃO A economia mundial, nas últimas décadas, vem migrando de uma economia industrial, voltada ao produto, em que os bens manufaturados são o principal fator, para uma economia baseada na informação e no conhecimento (MACHADO, 2008). E, neste cenário, encontra-se a maioria das empresas, revendo seus sistemas de gestão e muitas delas em pleno processo de implantação do Planejamento Estratégico, buscando um sistema que forneça informações que agregue valor ao seu negócio. Ou seja, informações que sejam de rápido acesso, fácil de consultar, que integre as diversas fontes de dados e que esses estejam organizados em um formato padronizado de tal modo que possa fornecer subsídios aos níveis gerenciais e direção no apoio às decisões estratégicas. Para atender a essa demanda, essas empresas vêm buscando desenvolver seus sistemas de apoio à decisão baseado em arquiteturas de DW (data warehouse). No entanto, a grande maioria enfrenta dificuldades logo de início na escolha pelo modelo de desenvolvimento e quais ferramentas serão utilizadas, uma vez que, independente do modelo adotado, será necessário cumprir o processo de extração, transformação e carga de dados, também conhecido como ETL (Extract, Transform and Load). Esta é a fase mais crítica, complexa e demorada na construção de um data warehouse, cuja finalidade é aglutinar os dados de múltiplas origens e integrar em um formato padronizado e consistente para ser carregado no data warehouse. Segundo Corey (2001, p. 227), os sistemas de origem tem os dados; o data warehouse é estruturado para apresentar informações e o processo de ETL é a caixa preta que transforma os primeiros no último.. Desta forma, o conceito de ETL contribui fortemente no processo de construção do data warehouse, visto que tem a responsabilidade de capturar, transformar e consolidar os dados dos sistemas transacionais, também conhecido como OLTP (On-line Transactional Processing), assim como moldar esses dados e entregá-los formatados em dimensões estruturadas com o objetivo de facilitar aos sistemas de consultas ou OLAP (On-line Analitycal Processing) disponibilizando, assim, a inteligência empresarial para ser explorada pelos usuários finais. Entende-se por captura e consolidação de dados um complexo trabalho de congregar fontes de dados de diversas origens com formatos e critérios variados em um único ambiente consistente e organizado. 12

Existe uma advertência comum entre dois dos principais gurus sobre data warehouse, a exemplo de Ralf Kimball e Bill Inmon. Eles afirmam que a atividade de ETL ocupa boa parte do tempo em projetos data warehouse, algo que varia entre 60% até 80% do tempo total gasto em um projeto. E esse percentual pode se acentuar ou não se a opção for pelo desenvolvimento manual do código ou pelo uso de ferramentas especializadas em ETL. Vale observar que, quando a opção for por implementação manual de rotinas ETL, o desenvolvedor poderá encontrar possíveis limitações ou dificuldades em tarefas que vão exigir do desenvolvedor um grande esforço de trabalho, além de um tempo maior de dedicação, assim como ficará mais suscetível a ocorrência de erros durante o desenvolvimento do código, consequentemente deixando de ganhar produtividade no projeto e principalmente não garantindo a qualidade das informações armazenadas para as análises dos gestores que podem levar a decisões equivocadas, trazendo sérios prejuízos para as organizações. Segundo Corey (2001), as principais dificuldades em uma implementação manual estão no desenvolvimento de código, nas funções de metadados (detalhes no capítulo 2.5.2.3), nas conexões com ambientes heterogêneos, no próprio gerenciamento do desenvolvimento, assim como na elaboração da documentação do projeto. Considerar a alternativa pelo uso de ferramentas de ETL frente ao desenvolvimento manual é algo importante, por tratar-se de um conjunto de recursos que apoia a construção de um data warehouse. Essas ferramentas de ETL disponibilizam recursos, como: geração de metadados; conectividade nativa com os principais SGBD (Sistema Gerenciador de Banco de Dados) dentre outros tipos de arquivos como XML, planilhas e TXT; funções facilitadoras para transformação de dados; melhor aproveitamento para reutilização de códigos; solução para gerenciamento centralizado de projetos; facilidade no desenvolvimento de código através de diagramas; facilidade na elaboração da documentação técnica, entre outros. Desta forma, é possível afirmar que há benefícios em utilizar uma ferramenta ETL ante o desenvolvimento manual, salvo necessidades muito específicas em que às ferramentas ETL não atendem de forma esperada. Segundo Corey (2001, p. 226) bons programadores podem escrever bons processos de ETL. E geralmente podem fazer melhor 13

do que qualquer ferramenta ETL, porém Corey (2001, p. 226) ainda complementa dizendo uma ferramenta ETL reúne dados sobre os processos de ETL, os torna reutilizáveis, é mais fácil de gerenciar e transferir conhecimento Como bem coloca Corey (2001), não é impossível desenvolver um data warehouse sem utilizar ferramentas de ETL, entretanto a utilização deste recurso trará, além dos benefícios já citados, a qualidade como um todo para o projeto. Atualmente, o mercado dispõe de uma enorme variedade de ferramentas de ETL com recursos e características bem diversificadas. Na perspectiva das empresas de pequeno e médio porte, às quais possuem uma capacidade de investimento em ferramental tecnológico limitada, as ferramentas ETL open source configuram-se como uma alternativa interessante, pois o licenciamento e os upgrades (atualizações) são gratuitos. Outro fator que confirma a possibilidade de utilização das ferramentas ETL open source é que as principais funcionalidades existentes nos software proprietários já estão disponíveis na versão de código aberto. Com isso, o padrão oferecido pelas ferramentas de ETL atendem satisfatoriamente as necessidades para esse porte de organizações. Também há evidências sobre o grau de maturidade do modelo open source para ferramentas de ETL com crescente aderência até entre as organizações mais regulamentadas. Isso mostra que apresenta níveis confiáveis de execução. Segundo o artigo publicado pela COMPUTERWORD (2010), metade de um universo de 300 organizações pesquisadas de grande porte já está comprometida com soluções de código aberto e outros 28% já realizaram testes ou empregam esse tipo de software em serviços mais específicos. A pesquisa intitulada Visão Geral do Mercado: Ferramentas ETL Open Source realizada pela Forrester Research (2007) relata a existência de dezenas de projetos de código aberto que realizam uma ou mais funções de ETL. Contudo, pondera que apenas algumas destas soluções oferecem um conjunto mais completo de recursos e dentre as que se encaixam dentre as mais completas soluções open-source destacam-se o Kettle e Talend. De acordo com a pesquisa, as características técnicas desses projetos têm muito mais semelhanças do que diferenças. Além disso, suas estratégias de mercado representam o grosso de sua diferenciação em relação às demais soluções open-source. A identificação das ferramentas citadas como as mais importantes atualmente no universo de ferramentas ETL open-source expõe a necessidade de uma avaliação mais 14

aprofundada no tocante às funcionalidades e características destas soluções. Esta questão se configura como motivador para avaliação do emprego destas ferramentas em um estudo de caso prático em uma empresa de pequeno porte, o que permitiu a definição da solução que melhor se adequou ao contexto de avaliação. 1.1 OBJETIVO O objetivo deste trabalho é desenvolver um método para avaliar as ferramentas ETL open-source Talend e Kettle/Pentaho através de critérios relativos às características e funcionalidades destas soluções. Os resultados de cada um dos critérios definidos foram identificados através da utilização das soluções em um estudo de caso prático no âmbito de uma empresa de pequeno porte. A comparação dos resultados obtidos permitiu a definição da solução que melhor se adequou ao contexto de avaliação. 1.2 MOTIVAÇÃO Durante muitos anos, as empresas buscaram aprimorar os elementos de controle operacional, primeiro com os sistemas funcionais, depois evoluíram para automação dos processos e, atualmente, o foco está direcionado para o tratamento das informações estratégicas. Essa necessidade de transformar os dados operacionais em informações de valor sempre existiu, porém, como bem coloca Machado (2008, p.15), as falhas estruturais, os custos de desenvolvimento de sistemas, entre outros, sempre deixaram para o último lugar as necessidades executivas de informação. Um exemplo prático é o próprio estudo de caso aplicado neste trabalho, cujo projeto pertence a uma empresa de médio porte que já consolidou sua etapa de automação dos processos e agora deseja investir na implantação de um data warehouse. E, entre as principais dificuldades, passou-se pela decisão de escolha de uma ferramenta ETL, uma das razões que motivou o desenvolvimento de uma metodologia para escolha de ferramenta ETL. Outra motivação 15

foi destacar a importância merecida à etapa de ETL quase sempre renegada a segundo plano nos projetos de BI, que é bem lembrada por Gonçalves (2003, p. 4) quando diz: Os fornecedores de software que atuam nesta área preocupam-se em desenvolver as ferramentas finais para os usuários, mas esquecem de tratar a questão da integração de dados, um requisito para o data warehouse e algo que somente as ferramentas ETL podem atender. 1.3 METODOLOGIA Para o desenvolvimento deste trabalho é importante que conceitos de Data Warehouse, suas etapas de construção, principalmente a ETL, e o papel das ferramentas ETL sejam bem definidos. Para essa tarefa, é imprescindível uma revisão bibliográfica a respeito do estado da arte para os tópicos citados. Além disso, foi realizado levantamento das principais características e recursos oferecidos pelas ferramentas de ETL Open Source. Uma análise documental dos produtos de ETL selecionados foi realizada através de pesquisas nos sites dos fornecedores, trabalhos bibliográficos correlatos e avaliações de organizações independentes. A análise propiciou a definição dos critérios para avaliação das ferramentas em questão e os resultados desta avaliação foram aferidos a partir de um estudo de caso de implantação de DW em uma organização de pequeno porte. Este laboratório funcionou como uma forma de validação do método de avaliação de ferramentas ETL open-source, objetivo deste trabalho. 1.4 ORGANIZAÇÃO DO TEXTO A organização deste trabalho está dividida em sete capítulos descritos a seguir: 16

O primeiro capítulo faz uma breve introdução sobre o cenário atual das empresas, também procurando demonstrar o objetivo, a metodologia e motivação do conteúdo abordado neste trabalho. No segundo capítulo, são descritos os conceitos básicos, a arquitetura, elementos e fundamentos sobre data warehouse. No terceiro capítulo, são definidos os conceitos sobre ETL, sua abrangência e as etapas. O quarto capítulo mostra o que é e o que faz uma ferramenta ETL, assim como uma breve referência sobre as ferramentas CloverETL, Talend e Kettle/Pentaho. No quinto capítulo, é apresentado o desenvolvimento do estudo de caso de um data mart para uma empresa de pequeno porte. No sexto capítulo, está registrada a avaliação das ferramentas ETL open-source alvo do trabalho com a classificação e pontuação dos requisitos para o desenvolvimento do estudo de caso. O sétimo capítulo finaliza com a conclusão dos resultados obtidos e sugestões para trabalhos futuros. Três anexos fazem parte deste trabalho, onde o primeiro descreve a infra-estrutura utilizada no estudo de caso; o segundo traz uma lista de critérios importantes para avaliação das ferramentas ETL que serviu como base para o foco do trabalho que é a avaliação de ferramentas ETL open-source voltada para projetos de DW em empresas de pequeno porte; e o terceiro apresenta uma análise complementar dos critérios relevantes aplicados no estudo de caso. 17

2 DATA WAREHOUSE Neste capítulo, aborda-se a fundamentação teórica do trabalho, cujo objetivo é prover o conhecimento básico para o entendimento dos conceitos que envolvem a construção de um data warehouse, além de mostrar uma breve história da evolução do DW, a arquitetura, as formas e etapas de implementação do DW. 2.1 A HISTÓRIA DO EIS AO DATA WAREHOUSE As primeiras aparições de desenvolvimento de sistemas para fornecimento de informações empresariais foi com a chegada das planilhas eletrônicas por volta de 1990, conhecidos como Sistemas de Informações Executivas EIS e, nessa época, seu desenvolvimento era restrito à equipe de TI com conteúdos limitados e cálculos simples de somas, contagens e acessando os dados diretamente no ambiente operacional. Já no final dos anos 90, com a evolução das aplicações, surgiram os Sistemas de Apoio a Decisão SAD ou Sistemas de Suporte a Decisão DSS, facilitado pelas linguagens de 4º geração. Isso permitiu que o usuário final assumisse um papel mais ativo, proporcionando maior flexibilidade nos relatórios e nas consultas sob demanda. Todavia, a extração dos dados ainda era de fontes relacionais pouco versáteis para atender as expectativas das necessidades gerenciais. Outro problema surgiu quando houve a necessidade de se pesquisar um histórico mais antigo dos dados, porque os ambientes operacionais não se mantêm muitos anos armazenados. Além disso, o desempenho era prejudicada com o uso concorrente do ambiente operacional. O novo conceito, válido até os dias atuais, mas ainda em franca evolução, ficou conhecido como data warehouse DW, ou armazém de dados, com objetivos bem definidos: fornecer informações confiáveis a partir de uma base corporativa única e integrada; proporcionar acesso rápido aos usuários finais sem depender do pessoal de TI; e 18

permitir que os próprios analistas de negócio produzam modelos do tipo ad-hoc, ou seja, sob demanda (COREY, 2001). De acordo com Gonçalves (2003), o DW pode ser considerado como a separação física entre os sistemas de dados operacionais (aplicativos que controlam as funções críticas do negócio da empresa) e os sistemas de suporte à decisão de uma empresa. Esse conceito define bem os elementos da arquitetura física, como ilustra a figura 1, o modelo de ambiente data warehouse. Figura 1 O Ambiente de um Data Warehouse Fonte: MACHADO, 2008, p. 26 2.2 CONCEITOS E PROPRIEDADES DO DATA WAREHOUSE O barateamento de armazenamento de dados em disco propiciou às organizações guardarem seus dados operacionais por muito mais tempo, porém o imenso volume de dados armazenados neste formato dificulta seu aproveitamento na preparação de informações estratégicas na tomada de decisão. Alguns motivos levam a isso: dados 19

dispersos, falta de integração com outras bases de dados, o formato não adequado para favorecer consultas a um grande volume de dados, ausência de estrutura para uma visão unificada dos dados entre outros. Esses problemas tornaram-se um grande desafio para as organizações e foi para atender a essa demanda que surgiu os data warehouse (GONÇALVES, 2003). Segundo Corey (2001 apud INMON, 1997, p.12), para um data warehouse é necessário atender as seguintes propriedades:. Orientado ao assunto: Refere-se ao formato da organização das informações de modo a facilitar as consultas, ou seja, os dados serão agrupados por assunto dos negócios da empresa, por exemplo: vendas, compras, produção, RH e etc.. Integrado: O data warehouse tem a função de armazenar os dados em um único ambiente, integrando dados de diversas fontes, arquivos XML, entre outros. No entanto, para a real integração, é necessário adotar alguns cuidados antecipadamente ao armazenamento no data warehouse.. Não volátil: Além de garantir a durabilidade das informações no tempo, essa propriedade também garante que os usuários somente terão acesso ao data warehouse com a possibilidade de somente leitura. Isso não significa que não haverá atualização dos dados, mas ocorrerá através de novas cargas de dados e, uma vez carregado, não mais poderá ser apagado. Diferentemente dos ambientes transacionais OLTP, por intermédio das aplicações, os usuários podem executar: inclusão, alteração, exclusão e consulta dos dados.. Variante no tempo: Sem o elemento tempo, o data warehouse não teria muito sentido. O registro dos históricos das atualizações permite ao usuário conhecer qual era o estado de um determinado dado após uma atualização, uma vez que as novas entradas sempre serão mapeadas em um novo registro, ou seja, os dados contidos referem-se a algum momento de tempo específico. Para isso, os registros, quando carregados, recebem um atributo da unidade de tempo e nunca mais são atualizados. É essa característica que possibilita os analistas de negócios fazerem análises de tendências e visualizarem as variações das informações ao longo do tempo. E a 20

maior justificativa para os grandes volumes de dados dos data warehouse é exatamente a necessidade de manter os registros de históricos por tempo a fio. 2.3 ARQUITETURA DO DATA WAREHOUSE Segundo Machado (2008), a arquitetura define o modelo lógico da instalação, independente da estrutura física do data warehouse. A escolha da arquitetura passa por uma decisão gerencial que está relacionada a fatores relativos à infra-estrutura disponível pelo formato da instalação, se central ou distribuída em instalações remotas ou locais. Também se devem levar em consideração os recursos disponíveis para investimento, porte da empresa e a cultura dos usuários, etc. Corey (2001) comenta que há uma infinidade de possibilidades ao se adotarem estratégias para construir um data warehouse, inclusive a de não ter um data warehouse em situações onde os sistemas transacionais OLTP sejam suficientemente fortes para suportar consultas dos usuários finais. Obviamente, são situações onde não existe necessidade de integração com outras fontes de dados. 2.3.1 Staging Area A Staging area ou Operational Data Store ODS é um armazenamento de dados intermediário, entre os sistemas transacionais e o data warehouse, cuja finalidade é facilitar a integração entre esses dois ambientes. Essa técnica por um lado, exige mais uma etapa no desenvolvimento do projeto e uma demanda maior por espaço em disco; por outro, os ganhos podem ser muito maiores, como por exemplo, o desempenho durante o processo de atualização do DW, também diminui o tempo de concorrência com o ambiente transacional durante a leitura dos dados. Nesta etapa já é possível aplicar a limpeza dos dados e tirar as inconsistências. Do mesmo modo, em ambientes complexos e heterogêneos, a Staging area possibilita integrar todos os tipos de dados em um único formato fazendo com que a 21