Bancos de Dados IV ETL e Limpeza dos dados Rogério Costa [email protected] 1 DW - Visão Geral Bancos de dados de sistemas OLTP OLAP, DSS e Data Mining Dados e Metadados Usuários Operacionais Fontes Externas DW – Processo de Atualização Oracle SQL Server DB2 ... ExtrairTransformarCarregar Dados e Metadados ETL Extraction, Transformation, and Loading (ETL) Extrair: dados operacionais, fontes externas, ... Transformar: sumarizar, limpar, unificar domínios, ... Carregar: combinar as várias fontes, momento ideal da carga, ... Processo custoso que consome grande quantidade de tempo ETL Como atualizar os dados? Arquitetura orientada a origem: fontes de dados transmitem periodicamente os dados para o DW. Por exemplo, a noite. Arquitetura orientada ao destino: o DW periodicamente requisita novos dados das fontes de dados ETL Quando atualizar os dados? O sincronismo entre as fontes de dados e o DW pode ser mantido, por exemplo através do 2PC (two-phase-commit). Processo caro – onera a rede, o banco de origem e o de destino Usualmente aceitável ter dados um pouco desatualizados no DW. Para firmas internacionais, pode não existir uma boa hora para carga ETL – ‘Dados Sujos’ Atributos com valores de diferentes objetivos Atributos mal utilizados (exemplo: endereço) Dados que se contradizem em diferentes fontes Falta de valores Falta de verificação de regras de negócio e integridades em algumas fontes: dados inconsistentes Integridade semântica e de domínio Data Cleansing Etapas : Parsing Corrigir Padronizar Combinar Consolidar Data Cleansing Etapas : Parsing Localiza e itentifica dados nas fontes e os isola no destino Data Cleansing Parsing Joao da Silva Jr., GER. DE VENDAS, Empresa X, Rua Mar. Camara, 20511-001, Niterói Nome: Joao da Silva Jr. Cargo: GER. DE VENDAS Empresa: Empresa X Endereço: Rua Mar. Câmara CEP: 20511-001 Cidade: Niterói Data Cleansing Etapas : Corrigir Corrigir os dados que passaram no parse – muitas vezes com auxílio de outras fontes. Exemplo: corrigir o CEP de um endereço ou o endereço a partir de uma base de CEP Data Cleansing Corrigir Nome: Joao da Silva Jr. Cargo: GER. DE VENDAS Empresa: Empresa X Endereço: Rua Mar. Câmara CEP: 20511-001 Cidade: Niterói Nome: Joao da Silva Jr. Cargo: GER. DE VENDAS Empresa: Empresa X Endereço: Av. Maracanã CEP: 20511-001 Cidade: Rio de Janeiro Data Cleansing Etapas Padronizar Transformar os dados através de rotinas, para uma forma padrão e consistente. Data Cleansing Padronizar Nome: Joao da Silva Jr. Cargo: GER. DE VENDAS Empresa: Empresa X Endereço: Av. Maracanã CEP: 20511-001 Cidade: Rio de Janeiro Nome: Joao da Silva Jr. Cargo: Gerente de Vendas. Empresa: Empresa X Endereço: Av. Maracanã CEP: 20511-001 Cidade: Rio de Janeiro Data Cleansing Etapas: Combinar Buscar dados que se correspondam para eliminar duplicidades, através da utilização de regras de negócio pré-definidas Pode utilizar padrões de exatidão ou similaridade em busca de textos, por exemplo Data Cleansing Combinar Duas fontes: é a mesma pessoa? Nome: Joao da Silva Jr. Cargo: GER. DE VENDAS Empresa: Empresa X Endereço: Av. Maracanã CEP: 20511-001 Cidade: Rio de Janeiro Nome: Joao S. Jr. Cargo: Gerente de Vendas. Empresa: Empresa X CEP: 20511-001 Cidade: Rio de Janeiro Telefone: 2222-4444 Fax: 3333-4444 Cel.: 4545-4654 Data Cleansing Etapas: Consolidar Identificar e analizar a relação entre os registros que foram combinados, combinando / consolidando em uma representação única Data Cleansing Combinar Registro Fonte 1 Registro Fonte 2 Nome: Joao da Silva Jr. Cargo: Gerente de Vendas. Empresa: Empresa X Endereço: Av. Maracanã CEP: 20511-001 Cidade: Rio de Janeiro Telefone: 2222-4444 Fax: 3333-4444 Cel.: 4545-4654 Ferramentas ETL Surgiram ferramentas para realização de ETL Teradata Warehouse Builder, da Teradata DataStage, da Ascential Software SAS System, da SAS Institute Sagent Solution, da Sagent Software