Data Warehousing Leonardo da Silva Leandro
Agenda Conceito Elementos básicos de um DW Arquitetura do DW Top-Down Bottom-Up Distribuído Modelo de Dados Estrela Snowflake Aplicação
Conceito Em português: Armazém de Dados Base de dados orientada por assunto Integrado Não volátil Variável com o tempo Apoiar as decisões gerenciais
Conceito: Orientado por Assunto Na visão de uma empresa, toda modelagem do DW é orientada a partir dos principais assuntos da organização Empresa do ramo dos supermercados Cadastro de funcionários e produtos Ao se iniciar a construção de um DW, deve-se discutir com os usuários finais quais os seus objetivos Definir quais são as informações importantes
Conceito: Integrado Uma das características mais importantes de um Data Warehouse A integração é realizada do ambiente operacional para as aplicações do DW Padronização dos dados dos diversos sistemas em uma única representação Transferência para a base de dados única do DW Maximização do processamento Agilidade na busca dos dados
Conceito: Integrado Dois elementos básicos do DW estão relacionados com a integração Área de estagiamento dos dados Armazenamento dos dados operacionais (ODS) Quando há incompatibilidade de sistemas e necessidade de integração por assuntos, deve-se considerar a construção do ODS Os processos de limpeza, transformação e agregação ocorrem no estagiamento Compatibilização e integração nos próprios sistemas legados ocorrem no ODS
Conceito: Integrado Tabela 1: Integração de dados representados de formas diferentes
Conceito: Não Volátil Ambiente Operacional: Dados atualizados registro por registro Múltiplas transações Necessita de grande esforço para assegurar integridade e consistência Rollback Recuperação de falhas Commits Bloqueios DataWarehouse: Dados filtrados e limpos ( gerando informações ) Não existem alterações de dados Sofrem somente operações de consulta e exclusão (sem alterações)
Conceito: Variável com o Tempo Manutenção de um histórico de dados em relação ao período de tempo maior que dos sistemas comuns Técnicas de mineração de dados não são aplicadas em tempo real Os dados de um DW sempre estarão associados a um período determinado de tempo Chave indicando o dia no qual os dados foram extraídos
Conceito: Localização Em um DW, pode-se encontrar os dados armazenados fisicamente de três formas: Armazenados em um único local: BD centralizado em um DW integrado Maior processamento Busca de dados rápida Distribuídos por áreas de interesse (arquitetura federativa): Dados financeiros em um servidor Dados de marketing em um segundo servidor Dados de manufatura em um terceiro lugar Armazenados por níveis de detalhes
Conceito: Localização Armazenados por níveis de detalhes: Dados altamente resumidos armazenados em um servidor Grande número de acessos Baixo volume de dados Dados resumidos em um nível de detalhe intermediário armazenados em um segundo servidor Dados com maior número de detalhes (atômicos) em um terceiro servidor
Elementos básicos de um Data Warehouse Figura 1: Esquema com elementos básicos de um DW
Elementos básicos de um Data Warehouse Sistemas de Origem: Sistema Operacional de registros cuja função é capturar as transações do negócio Sistemas transacionais da empresa, pode ser composto por diversas formas de dados Área de Estagiamento de dados: Área de armazenamento Conjunto de processos que limpam, transformam, combinam, retiram duplicações, retêm, arquivam e preparam os dados fonte para uso no DW
Elementos básicos de um Data Warehouse Servidor de Apresentações: Máquina física de destino Armazenados e organizados os dados do DW para consulta diretas Modelo Dimensional: Disciplina específica para modelagem dos dados Uma alternativa ao modelo ER Modelo apropriado para produção de informação gerencial Processos do Negócio: Conjunto coerente das atividades do negócio da organização
Elementos básicos de um Data Warehouse Data Mart: Subconjunto lógico do DW completo Contém dados altamente resumidos e levemente resumidos Tem por objetivo equilibrar os gastos e oferecer resultados em prazos mais curtos Normalmente são divididos por departamentos
Elementos básicos de um Data Warehouse Data Mart: Figura 2: Arquitetura de Data Marts Departamentais
Elementos básicos de um Data Warehouse Armazenamento de Dados Operacionais (ODS): Ponto de integração com os SOs da organização Criados para integrar em nível operacional os diferentes sistemas da organização sem incluir consultas gerenciais (ficam no nível do DW) OLAP: Atividade genérica de consultar e apresentar dados textuais ou numéricos Tecnologia não-relacional Geralmente baseada em cubos dimensionais de dados
Elementos básicos de um Data Warehouse OLAP (cont.) Figura 3: Cubo OLAP
Elementos básicos de um Data Warehouse ROLAP (OLAP Relacional): Conjunto de interfaces ao usuário e de aplicações que dão características multidimensional a banco de dados relacionais MOLAP (OLAP Multidimensional): Conjunto de interfaces ao usuário, aplicações com base de dados proprietária que são fortemente multidimensionais Fazer uma pesquisa ou uma análise do tipo: verificar as vendas realizadas pela empresa por produto, por mês e por loja Consultas rápidas Necessita de um espaço muito maior para o armazenamento dos dados Aplicação para Usuário Final: Coleção de ferramentas que consultam, analisam e apresentam informações desejadas
Elementos básicos de um Data Warehouse Figura 4: Esquema dos processos de manipulação de dados MOLAP, ROLAP e um híbrido destes, o HOLAP.
Elementos básicos de um Data Warehouse Ferramenta de Controle de Acesso aos Dados para Usuário Final: Uma ferramenta de controle de acesso aos dados Pode ser simples como sistemas de consultas ad-hoc Pode ser complexa e sofisticada como mineração de dados ou aplicações de modelagem Ferramentas de Consultas Ad-Hoc: Tipo específico de ferramenta de acesso dos dados Induz o usuário final a formar suas próprias consultas Manipulando diretamente tabelas relacionais e suas funções
Elementos básicos de um Data Warehouse Aplicações de Modelagem: Tipo sofisticado de ferramenta cliente do DW Capacidades analíticas de transformar ou compreender as saídas do DW Ex: Data Mining Modelos de Previsão Modelos de Comportamento Metadados: Toda informação no ambiente do Data Warehouse que não é dado real em si mesmo
Arquitetura do DW Data Warehouses são capazes de responder a consultas avançadas de maneira rápida, sem deixar de apresentar detalhes importantes à resposta Para tanto, é preciso que o mesmo tenha uma arquitetura que lhe permita coletar, manipular e apresentar os dados de forma eficiente e rápida A constituição de um DW pode ser feita basicamente com dois modelos arquiteturais: Aquitetura top-down Arquitetura bottom-up Data Warehouses Distribuídos
Arquitetura do DW: Top-Down Figura 5: Arquitetura Top-Down de um DW
Arquitetura do DW: Top-Down Extração, Transformação, Migração e Carregamento de dados Dados oriundos dos sistemas legados e/ou de fontes externas Os dados são retirados de suas origens e armazenados na área de estagiamento de dados Carregamento dos dados para dentro do Data Warehouse Data Marts são oriundos a partir de resumos do DW e dos metadados O DW é constituído por dados atômicos e também dados históricos detalhados O modelo top-down pode fazer uso do modelo de dados E-R normalizado A integração entre o DW e os Data Marts é automática Mantendo-se um disciplina na construção (data marts como subconjuntos do DW
Arquitetura do DW: Top-Down Críticas ao modelo: Custo de implantação Demora na obtenção de resultados parciais Alto grau de dificuldade no planejamento e implementação de um modelo único, não diferençável e mestre à toda organização
Arquitetura do DW: Bottom-Up Oferece uma alternativa de construção incremental Tem início com a construção de um ou mais Data Marts Geralmente não usam modelo de dados E-R de forma normalizada Os Data Marts usam dados atômicos detalhados, incluindo dados históricos (enquanto que o modelo top-down que usa dados levemente resumidos e altamente resumidos Difere no top-down em não provê nenhum componente de metadado comum para os data marts
Arquitetura do DW: Bottom-Up Figura 6: Arquitetura Bottom-Up de um DW
Arquitetura do DW: Data Warehouses Distribuídos Possibilidade de integração de diferentes DW Centenas de servidores separados (SOs e BDs diferentes) Usado quando o os processamentos operacionais de informações ocorrem tanto no nível local como no global Comum em empresas com sede matriz e sedes filiadas
Modelo de Dados A modelagem dimensional tem-se firmado como meio mais efetivo para o projeto do DW Chamam-se dimensões as diferentes perspectivas envolvidas (ex: produto, marca, filial e mês) Considera-se também um conjunto de medidas (ex: vendas ou despesas com promoção) As medias podem ser agregadas segundo diversas dimensões Ficam armazenadas para acesso futuro Ex: Calcula-se a média de todas as vendas por todos os meses por filial A forma como as agregações são armazenadas pode ser vista em termos de dimensões e coordenadas (Multidimensional)
Modelo de Dados: Modelo Estrela Criado como forma de acomodar as necessidades de todos os usuários e facilitar a atualização do DW (melhor entendimento em termos de negócio) Possui uma tabela dominante no centro (tabela de fatos) Múltiplas junções que a conectam às outras tabelas (tabelas de dimensão) A tabela de fatos pode conter milhares (até milhões) de valores e medidas de negócio da empresa, como transações de vendas ou compras Cada medida é tomada segundo a interseção de todas as dimensões A tabela de fatos é esparsa Se não existe um cruzamento para alguns valores das dimensões, a tabela não armazena zeros
Modelo de Dados: Modelo Estrela Figura 7: Modelo dimensional do tipo Estrela
Modelo de Dados: Modelo Estrela As tabelas secundárias (tabelas de dimensão) armazenam as descrições textuais das dimensões do negócio Tabelas de dimensão tendem a usar tipo de caracteres ao invés de numéricos Linhas mais longas, mas em pouca quantidade Ocupa pequena percentagem de espaço em disco A tabela de fatos tem como chave primária uma composição de todas as chaves estrangeiras de todas as tabelas de dimensão
Modelo de Dados: Modelo Snowflake Extensão do modelo Estrela Cada uma das pontas da estrela passa a ser o centro de outras estrelas Surge da des-normalização e redução da cardinalidade do modelo estrela Quebrando-se a tabela original ao longo de hierarquias existentes em seus atributos Ex: Classificação de um automóvel Dimensão do produto possui uma hierarquia definida Categoria se divide em marca Marca se divide em produtos
Modelo de Dados: Modelo Snowflake Existe uma resistência à transformar o modelo estrela em um modelo snowflake Impacto da complexidade deste tipo de estrutura sobre o usuário final Ganho em termos de espaço de armazenamento pouco relevante
Aplicações
Aplicações
Aplicações