Prévia do material em texto
Governança de Dados Lauro de Freitas Unidade 02 Business Intelligence BI - Business Intelligence Business Intelligence - ETL Fonte: https://blog.info4.com.br/2020/08/17/business-intelligence-a-importancia-do-processo- de-etl/ Data Warehouse (DW) ✓Data Warehouse é um depósito de dados digitais que serve para armazenar informações detalhadas relativamente a uma empresa, criando e organizando relatórios através de históricos que são, depois, usados pela empresa para ajudar a tomar decisões importantes com base nos fatos apresentados. Fonte: https://corporatefinanceinstitute.com/resources/business-intelligence/data- warehousing/ Data Mart ✓ Um Data Mart é uma subdivisão ou subconjunto de um DW. Os Data Marts são como pequenas fatias que armazenam subconjuntos de dados, normalmente organizados para um departamento ou um processo de negócio. ✓ Normalmente, o Data Mart é direcionado para uma linha de negócios ou equipe, sendo que a sua informação costuma pertencer a um único departamento. Fonte: https://www.guru99.com/data-warehouse-vs-data-mart.html OLAP - Online Analytical Processing • OLAP (Online Analytical Processing ou Processo Analítico em Tempo Real) é uma das ferramentas mais usadas para a exploração de um Data Warehouse. O OLAP possibilita alterar e analisar grandes quantidades de dados em várias perspectivas diferentes. As funções básicas do OLAP são: ✓ Visualização multidimensional dos dados. ✓ Exploração. ✓ Rotação. ✓ Vários modos de visualização. ODS – Operational Data Store ✓ODS é um repositório de dados onde são colocados os dados que a empresa trabalha no seu dia a dia, para que sejam consultados por outros sistemas, ou por áreas de inteligência. ✓Um ODS reúne dados de várias aplicações e não é semelhante a um Data Warehouse, pois não tem o compromisso de armazenar um histórico de dados e de servir para processos de auditoria sobre esses dados. ✓ Entretanto, o ODS deve armazenar dados que tem “valor” para seus consumidores e de manter-se atualizado. Fonte: https://bigbear.ai/blog/how-do-you-use-an-operational-data-store/ Data Warehouse x Data Lake Data Warehouse • O desafio foi conseguir uma visão unificada entre sistemas, diferentes tecnologias, formatos de dados proprietários e controle de acesso. • A arquitetura de dados se adaptou através de processos de ETL (Extract Transform Load), técnicas de modelagem, documentação/metadados e usando ferramentas e tecnologias proprietárias, otimizadas para rodar em servidores grandes e caros. Fonte: https://panoply.io/data-warehouse-guide/data-warehouse-architecture-traditional-vs- cloud/ Data Lake • A arquitetura de tecnologia evoluiu para um maior número de aplicações, mais simples e integradas, estimulada pelo uso da cloud, containers, microservices e service mesh. • A arquitetura de dados se adaptou aos conceitos de computação distribuída, novas técnicas de modelagem, modernização dos processos de documentação/metadados e usando tecnologias e formatos de armazenamento de código aberto, otimizadas para rodar em servidores menores e mais baratos. Fonte: https://www.infomach.com.br/o-que-e-um-data-lake/ Data Lake • O Data Lake é o repositório perfeito para quem precisa abrigar qualquer tipo de dados em qualquer escala. Dashboards, dados em tempo real, analytics, planilhas, informações de machine learning, enfim. Não há restrições para a ferramenta. • Por isso o nome “Lago de Dados”. Para abrigar informações no Data Lake, pode-se dispensar, inclusive, a etapa de tratamento de dados, já que a proposta de quem o utiliza é abrigar e ter acesso a um número elevadíssimo de dados brutos de categorias diferentes em um só lugar. • São referidos como fonte do Big Data. Fonte: https://blog.dsacademy.com.br/os-4-estagios-para-construir-um-data- lake-de-forma-eficiente/ Data Lake no NoSQL • Um Data Lake pode residir em Hadoop, NoSQL, Amazon Simple Storage Service, Banco de Dados Relacional, ou combinações diferentes deles. • Alimentado por fluxos de dados (Data Streams). • Data Lake tem muitos tipos de elementos de dados, estruturas de dados e metadados no HDFS, sem levar em conta a importância, IDs ou resumos e agregados. • Importante entender a natureza variada dos dados do Data Lake em relação ao banco de dados NoSQL: - Semiestruturado. - Chave: valor (principalmente) com sua estrutura hierárquica. • Mais frequentemente, um Data Lake é mantido no Hadoop e alimentado de ou para NoSQL. - NoSQL é um armazenamento de dados operacional, não analítico. ETL e ELT ELT • ELT significa "Extrair, Carregar e Transformar". Nesse processo, os dados são aproveitados por meio de um Data Warehouse para realizar transformações básicas. Isso significa que não há necessidade de teste de dados. O ELT usa soluções de Data Warehousing baseadas em nuvem para todos os diferentes tipos de dados - incluindo tipos de dados estruturados, não estruturados, semi-estruturados e até brutos. ELT • O processo ELT também trabalha lado a lado com Data Lakes. "Data Lakes" são tipos especiais de armazenamentos de dados que, diferentemente dos Data Warehouses OLAP, aceitam qualquer tipo de dados estruturados ou não estruturados. Não exigem que você transforme seus dados antes de carregá-los. Você pode carregar imediatamente qualquer tipo de informação bruta em um Data Lake, independentemente do formato ou da falta dela. • A transformação de dados ainda é necessária antes de analisar os dados com uma plataforma de inteligência de negócios. No entanto, a limpeza, enriquecimento e transformação de dados ocorrem após o carregamento dos dados no Data Lake. ELT Fonte: https://medium.com/analytics-vidhya/etl-and-elt-3377f55f96ab Definição ETL x ELT • Extract – Extrair. • Transform – Transformar. • Load – Carregar. • _______________________________________________________________ _______ • Extract – Extrair. • Load – Carregar. • Transform – Transformar. • O ELT é um processo de dados usado para replicar dados de uma fonte para um banco de dados de destino, sendo uma evolução ETL. Isso porque torna o processo de replicação de dados muito menos complexo, uma vez que o passo de transformação é realizado após os dados estarem no destino. Modelagem Relacional Modelo Conceitual Fonte: https://www.visual-paradigm.com/support/documents/vpuserguide/3563/3564/85378_conceptual,l.html Modelagem Relacional https://www.visual-paradigm.com/support/documents/vpuserguide/3563/3564/85378_conceptual,l.html Modelo Lógico Fonte: https://www.visual-paradigm.com/support/documents/vpuserguide/3563/3564/85378_conceptual,l.html Modelagem Relacional https://www.visual-paradigm.com/support/documents/vpuserguide/3563/3564/85378_conceptual,l.html Modelo Físico Fonte: https://www.visual-paradigm.com/support/documents/vpuserguide/3563/3564/85378_conceptual,l.html Modelagem Relacional https://www.visual-paradigm.com/support/documents/vpuserguide/3563/3564/85378_conceptual,l.html Modelagem Multi-Dimensional ✓Métrica é também chamada de quantificador ou medida. Alguns chamam de KPI (Key Performance Indicator), mas KPI também pode ser considerado um cálculo entre duas métricas. ✓A ideia por trás do KPI é simples: definir métricas para que uma empresa possa alcançar um determinado objetivo, seja ele qual for. ✓ Elas são utilizadas para metrificar algo e sempre são números, porque precisam ser contáveis. Esses números são provenientes de transações da empresa. Métricas no Data Warehouse ✓ Pode ser representado metaforicamente como um cubo. ✓ A Modelagem Multidimensional é uma técnica de estrutura de dados otimizada para armazenamento em um DW. O objetivo é otimização, visando a recuperação mais rápida e segura. ✓ O conceito de Modelagem Dimensional foi desenvolvido pelo professor Ralph Kimball, o precursor da ideia de Data Warehouse. Fonte: Nardi (2007) Modelagem Multidimensional ✓ Toda modelagem dimensional possui dois elementosimprescindíveis: as tabelas Fatos e as tabelas Dimensões. Ambas são obrigatórias e possuem característica complementares dentro de um Data Warehouse. Modelagem Multidimensional ✓ Considerando um banco de dados de lojas, produtos e um data warehouse para executar relatórios de vendas agrupados por loja, data, ou categoria ou marca do produto. Modelo Star Schema Fonte: https://blog.math.group/metodologia-star-schema-de-modelagem-dimensional ✓ O mesmo cenário no esquema SnowFlake seria estruturado da seguinte maneira: Modelo SnowFlake Fonte: https://dwbi1.wordpress.com/2012/07/16/the-main-weakness-of-snowflake-schemas/ Modelos Star Schema x SnowFlake Fonte: https://www.databeetle.net/blog/dimensional-modelling/ ✓ Modelos Star Schema (mais usados): • Dimensões Desnormalizadas. • Voltados para acessos com performance. • Hierarquias achatadas. • Mais simples e mais fácil navegação. • Utilizam mais espaço, repetindo as mesmas descrições ao logo de toda a tabela. Considerações ✓ Modelo Snowflake: • Normalizado. • Hierarquias mantidas. • Muitas tabelas ➔Muitas junções – 1:N.. • Reduz o espaço de armazenamento dos dados dimensionais, mas acrescenta várias tabelas, deixando-o mais complexo. • Acesso mais lento do que no StarSchema. Considerações Considerações Fonte: https://www.javatpoint.com/data-warehouse-star-schema-vs-snowflake-schema ✓ Modelos Star Schema (mais usado) • Dimensões Desnormalizadas. • Voltado para acessos com performance. • Hierarquias achatadas. • Mais simples e mais fácil navegação. • Utiliza mais espaço repetindo as mesmas descrições ao logo de toda a tabela. ✓ Modelo Snowflake • Normalizado • Hierarquias mantidas. • Muitas tabelas ➔Muitas Junções – 1:N. • Reduz o espaço de armazenamento dos dados dimensionais, mas acrescenta várias tabelas, deixando-o mais complex. • Acesso mais lento que no StarSchema. Dimensões em DW Fonte: Nardi (2007) ✓ As dimensões identificam um indicador de análise sobre um empreendimento, negócio ou ação feita. ✓ Através das dimensões é possível identificar quando (mês, ano), onde (estado, região) e com quem (segurado, produto) ocorreu um indicador de análise (prêmio emitido). Dimensões Fonte: rafaelPiton ✓ A tabela dimensão tem como finalidade armazenar informações como tempo, geografia, produto, cliente. ✓ É comum uma tabela dimensão possuir várias colunas de informação com o objetivo de representar sua hierarquia. ✓ Sua interação com as tabelas fato é feita através da relação 1:N. ✓ Possuem uma chave primária para garantir a unicidade de seus registros e está presente na tabela fato, consequentemente como parte de sua chave primária. ✓ As dimensões armazenam 3 coisas: • A Surrogate Key • A Natural Key • Os atributos Tabela do Tipo Dimensão Surrogate Key em Dimensões ✓ Em um banco de dados, as chaves são usadas para identificar as linhas de uma tabela e fazer as conexões entre elas. No Data Warehouse, temos a Surrogate Key nas dimensões, que é a chave artificial utilizada para conectar a tabela na Fato. ✓ A Surrogate Key nada mais é que a Primary Key da dimensão. Surrogate Key ✓ A Surrogate Key é uma chave artificial e auto incremental. ✓ A palavra artificial vem do tipo, porque ela não existe em lugar nenhum, não está lá no transacional como a Natural Key (PK que vem do legado), ela é criada no Data Warehouse. ✓ E é auto incremental porque toda vez que é chamada, troca de número, então ela começa com 1 e vai indo para 2, 3, 4, e assim por diante. Surrogate Key Fonte: Próprio autor ✓ Ela é gerada automaticamente na hora da carga, quando você carrega a dimensão no ETL. ✓ Na tabela Fato, essa Surrogate Key vai ser uma Foreign Key, a chave que serve para relacionar os dados entre duas tabelas, sempre apontando para uma Primary Key em outra tabela, que no caso da dimensão, vai ser a Surrogate Key. ✓ Assim, a tabela Fato receberá apenas o código da Surrogate Key da linha que ela está referenciando e não os atributos. Surrogate Key Resumindo, a Surrogate Key: ✓ Tem as características de uma Primary Key. ✓ É utilizada para referenciar a dimensão na Fato. ✓ É auto incremental. ✓ É uma chave artificial. ✓ É criada no Data Warehouse. ✓ Não pode se repetir. Surrogate Key Tabelas Fato ✓ Principal tabela do Data Warehouse, ela vai se conectar nas dimensões. ✓ Podem existir uma ou mais tabelas fato. ✓ Armazenam principalmente: • Métricas - que são os fatos propriamente ditos (tudo que a empresa for mensurar é uma métrica). • Foreign key – chave estrangeira que serve para relacionar os dados das Dimensões com a Fato. Tabelas Fato O que é Métrica? ✓ É utilizada para medir, quantificar algo, são sempre números provenientes de transações da empresa. ✓ Tudo que a empresa quer mensurar é métrica, geralmente sendo o que o usuário quer medir. Por exemplo: número de vendas ou seguidores em determinada rede social. O que é uma Foreign Key? ✓ É uma chave estrangeira que serve para relacionar os dados entre as tabelas fato e dimensão. Tabelas Fato Fonte: https://blog.math.group/metodologia-star-schema-de-modelagem- dimensional Tabela fato é a tabela com uma quantidade enorme de linhas, e que representa os fatos de uma empresa, que podem se repetir ou não. A tabela dimensão é a tabela que vai auxiliar a tabela fato com dados complementares ou explicativos, e que possui informações que não se repetem. Tabelas Fato Data Analytics Analytics https://plopdo.com/2018/12/07/what-is-big-data-how-data-turns-to-big-data/ • O Big Data traz novos desafios na gestão de dados, como a manutenção de uma linearidade dos dados, sua integridade e qualidade, a fim de que eles possam ser transformados em informação útil. • Soluções de Inteligência Operacional podem correlacionar e analisar dados de fontes variadas em várias latências (desde o batch, até o tempo real), para revelar informações importantes. • O Data Analytics pode ser usado em vários segmentos de mercado. Os bancos usam essa estratégia para evitar possíveis fraudes. Na educação, você pode medir o progresso dos alunos e avaliar a eficácia do sistema. No varejo, o principal uso é rastrear as características sociais e comportamentais dos clientes, de modo a prever tendências e hábitos. Big Data e o Data Analytics • Geralmente, o processo de análise do fluxo de dados segue as seguintes etapas: ✓ Coleta. ✓ Ingestão e transformação. ✓ Armazenamento. ✓ Análise. ✓ Desenvolvimento de algoritmos. ✓ Visualização. • É importante avaliar quais são os principais insights desejados na etapa de visualização, ou até mesmo o levantamento de quais problemas de negócio você gostaria de resolver. Data Analytics Fonte: https://www.xorlogics.com/2019/02/25/a-data-analytics-roadmap/ • O Data Driven se baseia no uso de ferramentas tecnológicas capazes de coletar e analisar dados diferentes da sua empresa. • Esses dados, por sua vez, podem ser compilados por meio de BI ou Inteligência Artificial e ajudam o gestor a ter uma ideia mais precisa do seu negócio, facilitando a tomada de decisão estratégica. Data Driven Fonte: https://www.behance.net/gallery/106912571/Evolution-of-Data-Driven- Company/modules/613126097 • Embora ambos os conceitos derivem da Ciência de Dados, existem algumas diferenças fundamentais. • O processo Data Driven possui uma abordagem mais quantitativa, uma vez que se baseia em números e modelos preditivos. • O Analytics Driven também considera o aspecto qualitativo, estabelecendo padrões e correlações entre os dados. Podemos dizer que o Analytics Driven vai além da análise de dados, interpretando, também, o contexto e outras variáveis ligadas a essas informações que podem impactar nos resultados. Data Driven x Analytics Driven Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35 Slide 36 Slide 37 Slide 38 Slide 39 Slide 40 Slide 41 Slide 42 Slide 43 Slide 44 Slide 45 Slide 46 Slide 47 Slide 48 Slide 49 Slide 50 Slide 51