Data Warehouse ETL. Rodrigo Leite Durães.

Documentos relacionados
Arquitetura de um Ambiente de Data Warehousing

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída

Arquitetura de um Ambiente de Data Warehousing

AULA SISTEMAS DE GERENCIAMENTO DE BANCO DE DADOS

Arquitetura de um Ambiente de Data Warehousing

Tópicos Especiais em Informática Fatec Indaiatuba

Computação Distribuída

Introdução a Teste de Software

Banco de Dados. Perspectiva Histórica dos Bancos de Dados. Prof. Walteno Martins Parreira Jr

Banco de Dados. SGBDs. Professor: Charles Leite

20/3/2012. Gerenciamento Estratégico de Dados. Gerenciamento Estratégico de Dados. Gerenciamento Estratégico de Dados. Prof. Luiz A.

Introdução a Engenharia de Software

Sistemas Distribuídos

DDL). O resultado da compilação dos parâmetros DDLs é

Data Warehousing: Conceitos Básicos e Arquitetura

DESENHO DE CARGOS E TAREFAS

Sistemas Distribuídos

Sistemas Distribuídos

ara entender os Sistemas Gerenciadores de Banco de Dados é importante conhecer

Bancos de Dados Notas de Aula Introdução Prof. Dr. Daniel A. Furtado

SISTEMAS DE GERENCIAMENTO DE BANCO DE DADOS

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

BANCO DE DADOS AULA-01. Prof. Fabiano Papaiz IFRN

SGBD. Definição. Funções básicas

EAD-0750 INTELIGÊNCIA DE NEGÓCIOS. Prof. Sérgio Luiz de Oliveira Assis

Banco de Dados. Professor: Marcelo Machado Cunha IFS Campus Aracaju

Enterprise Application Integration (EAI)

Projeto Integrador. <Projeto Integrador> Documento Visão. Versão <1.0>

GERENCIAMENTO DE DADOS Exercícios

Sistemas da Informação. Banco de Dados I. Edson Thizon

CSI IT Solutions. WebReport2.5. Relatórios abertos. Informações detalhadas dos jobs!

Banco de Dados. Introdução. Profa. Flávia Cristina Bernardini

Arquiteturas para SGBD. Laboratório de Bases de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Quando Distribuir é bom

Executa em qualquer plataforma que possua o Java (JDK) da Oracle

Quando Distribuir é bom

Data Warehousing: Conceitos Básicos e Arquitetura

Formação de DBAs SQL Server 2008 Parte 1: Introdução

Unidade 1 Introdução

Universidade Federal da Paraíba CCEN Departamento de Informática Disciplina: Banco de Dados. Aula 1 Introdução a Banco de Dados

Conceitos de Sistemas de Banco de Dados INE 5323

Banco de Dados. Introdução e Definições

Tecnologia. Tecnologia WK. Fast Data. In Memory. 64 Bits. Menor TCO. Backups Online. Dinâmico e Escalável SOLUÇÕES WK. Veja + wk.com.

BD II (SI 587) Backup de Banco de Dados. Josenildo Silva.

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Gerência de Redes Visão Geral

Gerência e Planejamento de Projeto. Engenharia de Software Profa. Elisa Yumi Nakagawa 1 o semestre de 2016

Matéria Introdutória. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Teste de Software. Prof. Camila. Pedro de Assis Sobreira Jr.

Scripts de Redundância para Sistema de Supervisão InTouch

SGBD. Funções Básicas de um SGBD

Introdução às Bases de Dados

Sistemas de Arquivos Distribuídos. Bruno M. Carvalho Sala: 3F2 Horário: 35M34

Programação Distribuída. Metas de um Sistema Distribuído

Especificação Técnica Sistema de Acesso

Banco de Dados - Conceitos. Baseado no material da Profa. Vania Bogorny (UFSC)

Bancos de Dados Distribuídos. Bancos de Dados Distribuídos. Conteúdo. Motivação. Motivação. Introdução aos BDs Distribuídos.

Gerência e Planejamento de Projeto. Engenharia de Software I Profa. Elisa Yumi Nakagawa 1 o semestre de 2015

Modernizando a Informação: Atualização do Banco de Dados Oracle da versão 7 para a 10g

Prof. Claudio SIBC, TI e SGBD PRINCÍPIOS DE SISTEMAS DE INFORMAÇÃO

3 Arquitetura do Sistema

2.1 NesC Seguem alguns dos principais desafios impostos à linguagem NesC:

Objetos e Componentes Distribuídos: EJB e CORBA

BANCO DE DADOS. Introdução. Prof. Marcelo Machado Cunha

Informática Parte 11 Prof. Márcio Hunecke

Engenharia de Software II

Dados confiáveis para empresas em crescimento

GERAÇÃO DE ARQUIVOS DE SCRIPT EM PHP. Acadêmico: Leonardo Sommariva Orientador: Alexander Roberto Valdameri

[versão para impressão] Link original: comp=24763 Conhecendo o PL/SQL

Componentes de SIs. Pessoas Organiz. Tecnologia

Banco de Dados e Aplicações em Negócios: Introdução.

Aula 02. Evandro Deliberal

INTRODUÇÃO A SISTEMAS OPERACIONAIS

Palavras-chave: (banco de dados; prontuário médico; paciente); deve vir logo abaixo do resumo

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Princípios da Engenharia de Software aula 03

Banco de Dados Distribuído

Sistemas Gerenciadores de Banco de Dados

Sobre a b2finance Kreston Brasil

IMPLANTAÇÃO DA SOLUÇÃO DA MICROSOFT EPM

MODELAGEM DE DADOS UNIDADE 1 Visão Geral. Luiz Leão

Prof. Marcelo Machado Cunha

Integrando o WK Radar com e-commerce e Marketplaces

Sistemas Distribuídos

Prof. Luiz A. Nascimento

Manual do Usuário V Universidade Federal do Pampa Núcleo de Tecnologia da Informação e comunicação NTIC 26/01/2015

Estilos Arquiteturais

OUTROS TRABALHOS EM:

Auditoria de controles organizacionais. Prof. Dr. Joshua Onome Imoniana

Formação de DBAs SQL Server 2008

Vamos fazer um pequeno experimento

Software Para Geração de Consultas e Relatórios

Características de Sistemas Distribuídos

SISTEMA DE GERENCIAMENTO DE BANCO DE DADOS - SGBD

Transcrição:

Data Warehouse ETL Rodrigo Leite Durães rodrigo_l_d@yahoo.com.br

Introdução Um dos desafios da implantação de um DW é a integração dos dados de fontes heterogêneas e complexas, padronizando informações, mantendo sua consistência. A maioria dos projetos gasta a maior parte do tempo e dos esforços nessa fase. O sucesso do DW depende, em grande parte, da eficiência e eficácia do processo de ETC. Nesse processo há necessidade de criar as rotinas de extração dos dados que podem ser desenvolvidas por programadores em qualquer linguagem de programação ou pode-se utilizar ferramentas específicas para isso.

Visão Geral Essas ferramentas proporciona mais produtividade e qualidade ao processo de integração. Para que a integração de dados seja bem sucedida, é preciso escolher uma ferramenta que ofereça funcionalidades capazes de atender os requisitos do processo de ETC. Assim, para escolher a ferramenta adequada, é necessário verificar suas principais características e recursos, fazendo um comparativo entre as opções disponíveis para identificar aquela que melhor atende às necessidades do processo de ETC. É um processo trabalhoso, complexo e detalhado, mesmo com o auxílio das ferramentas de ETC disponíveis hoje em dia.

ETC Primeiramente são definidas as fontes de dados e realizada a extração, que consiste em coletar os dados das diversas fontes em diferentes plataformas. O segundo passo consiste em limpar e transformar esses dados. Com isso são eliminadas as inconsistências e realizada a padronização dos dados para garantir que o DW possuirá informações válidas, úteis e significativas. Após garantir a consistência, pode-se carregar os dados no DW. Assim, para possibilitar maior produtividade, evitando atrasos e re-trabalho, o ideal é determinar o melhor caminho para o transporte dos dados fontes para o DW antes de iniciar a construção das rotinas de ETC. Para fazer a melhor escolha, deve-se priorizar os requisitos do processo de ETC e selecionar a ferramenta que fornece a maioria deles.

ETC Para isso, é necessário realizar o projeto ETL do DW, analisar os dados fontes, identificar os mapeamentos de dados, obter ou criar os dados externos, determinar a lógica de conversão dos dados e especificar as rotinas de ETC. Existem sistemas que são programados para detectar automaticamente a ocorrência de mudanças significativas nas fontes, tornando o processo de atualização mais transparente para o usuário. Alterar a aplicação que gerencia a fonte de informação a fim de enviar notificações de alteração para o DW. Detectar modificações através da comparação dos registros correntes da fonte com os registros carregados anteriormente. À medida que os dados das fontes aumentam, o número de comparações deve aumentar, o que pode inviabilizar o processo.

ETC Uma estratégia p/ não inviabilizar é utilizar, também, o limite de data. Analisar o arquivo de log do sistema procurando por modificações significativas. Antes de publicar os dados, é necessário avaliar a integridade da carga. Se a carga estiver correta os dados são disponibilizados para os usuários. Caso o processo de carga esteja incompleto ou haja dados violados toda a carga deve ser executada novamente.

ETC Há soluções com custo zero de aquisição pois vêm embutidas em um SGBD, como por exemplo o PL/SQL no Oracle e o DTS no SQL Server. Tais recursos podem ser utilizados para realizar o ETC, mas podem ser limitados exigindo uma maior codificação dos processos. Além disso, podem ser restritas, já que geralmente fornecem suporte apenas ao SGBD que acompanham, enquanto as ferramentas ETC completas podem fornecer suporte a diversos tipos de arquivos e SGBDs.

ETC As ferramentas ETC próprias, desenvolvidas utilizando alguma linguagem de programação, apesar de atender às necessidades, podem tornar o processo de manutenção dos procedimentos ETC muito complexo. Além disso, caso o processo de transformação e limpeza seja complexo, pode haver perda de performance com o uso de linguagens procedurais. Os produtos de mercado podem variar de ferramentas mais simples e baratas até ferramentas completas, robustas e mais caras. Essas ferramentas permitem maior produtividade na criação e manutenção do processo ETC, fornecem métodos de captura/integração de metadados, permitem documentação do projeto e dos processos, pode fornecer interface gráfica para o desenvolvedor permitindo edição, verificação de sintaxe, acesso aos SGBDs, além de proporcionar segurança e organização do projeto tipicamente a partir de um único ponto de acesso.

Tipos de ferramentas As ferramentas encontradas tipicamente podem ser instaladas no servidor ou no cliente. As ferramentas que executam no servidor permitem execução de tarefas concorrentes de mais de um desenvolvedor. Essas ferramentas são projetadas para coordenar e gerenciar a execução de diversas rotinas simultâneas, podendo também fazer uso de múltiplos processadores. As ferramentas instaladas no cliente são mais simples e assumem que as rotinas são executadas na mesma máquina em que são desenvolvidas. A concorrência entre múltiplas tarefas é limitada, se existir, é geralmente não é suportado o escalonamento de tarefas em máquinas com múltiplos processadores. Essas ferramentas são mais baratas porém possuem funcionalidade e escalabilidade limitados.

Critérios para escolha da ferramenta Arquitetura Geral Plataforma de execução do produto: pode restringir a capacidade de expansão sem adicionar mais servidores quando houver crescimento do volume de dados. Extração e Carga de Dados Suporte nativo aos principais SGBDs, bem como suporte a conexão ODBC para um vasto conjunto de bancos de dados. Integração de Dados Suporte a diversos formatos de dados, incluindo COBOL, ASCII, Excel e XML Nível de integração com aplicações de terceiros, incluindo sistemas de ERP

Critérios para escolha da ferramenta Limpeza e Transformação de Dados Transformação baseada em regras: possibilidade de especificar qual transformação será executada somente quando determinada condição ocorrer, sendo capaz de juntar diversas regras de maneiras diferentes. Administração Apresentar administração centralizada: é preciso ter um único lugar para visualizar o processo ETC inteiro, mesmo se as tarefas estiverem executando em diferentes plataformas de origem e destino e diferentes sistemas operacionais. Ambiente de Desenvolvimento Ambientes gráficos de interface com o usuário.

Critérios para escolha da ferramenta Concorrência e Segurança Número de possíveis usuários e desenvolvedores concorrentes Tratamento de Erros Recuperação de falhas: se ocorrer algum erro a ferramenta ETC é capaz de voltar o sistema a um estado consistente conhecido Gerenciamento de Metadados Repositório de metadados centralizado contendo no mínimo informações relativas a fontes de dados, destinos e transformações.

Critérios para escolha da ferramenta Performance Características que permitem processamento distribuído e particionado para obter uma performance melhor. Programação de Execução de Tarefas (Scheduling) Habilidade de programar a execução de sessões ETC em um determinado tempo ou evento. Continuidade Capacidade de suportar o nível de processamento em caso de crescimento de origens, destinos e volumes de dados. Facilidade de desenvolver e modificar tarefas e rotinas. Freqüência e complexidade das atualizações do produto. Capacidade de suporte para o crescimento da plataforma.

Critérios para escolha da ferramenta Custo O custo pode limitar as opções de aquisição de uma ferramenta ETC, já que os orçamentos dispõem de recursos limitados que nem sempre permitem a escolha da melhor ferramenta Conformidade Suporte aos tipos de origens de dados a serem utilizados, por exemplo, arquivos de mainframe. Disponibilidade do recurso de importação ou exportação de metadados com ferramentas específicas utilizadas no desenvolvimento do DW.

Processo de escolha da ferramenta A idéia é construir uma lista simples de seis ou sete ferramentas que atendam a maioria dos requisitos. Cada ferramenta deve ser avaliada o máximo possível, utilizando informações publicitárias. Deve-se entrar em contato com um vendedor para obter as informações necessárias. Obter referências de consumidores de cada vendedor, preferencialmente outra companhia com uma função semelhante a daquela onde será desenvolvido o projeto.

Processo de escolha da ferramenta Não existe uma única resposta certa na escolha da ferramenta. Por isso, ao escolher uma ferramenta, além de conhecer suas potencialidades, é necessário entender antecipadamente seus pontos fracos e estar preparado para atenuar suas conseqüências.