Baixe o app para aproveitar ainda mais
Prévia do material em texto
WBA0748_v1.0 Modelagem e arquitetura do Data Warehouse (DW) Banco de Dados Transacionais versus Bancos de Dados Analíticos Caracterização dos Bancos de Dados Transacionais Bloco 1 Anderson da Silva Marcolino Bancos de Dados Transacionais • O que são transações? • Transação: • Grupo de tarefas. • Uma tarefa: • Unidade de processamento que não pode ser dividida. Bancos de Dados Transacionais • Exemplo de transação: • Cadastro de dias de férias de um funcionário X: Abra_Cadastro_Ferias(X) Dias_Ferias_Anterior = B.ferias Novo_Historico_Dias = Dias_Ferias_Anterior + 30 B.ferias = Novo_Historico_Dias Fecha_Cadastro_Ferias(X) Bancos de Dados Transacionais • As transações, em um sistema de banco de dados, devem manter quatro propriedades fundamentais: a atomicidade, a consistência, o isolamento e a durabilidade. • Estas são conhecidas como ACID. • Possuindo tais propriedades, obtêm-se a acurácia, a completude e a integração de dados. Serialização em Bancos de Dados Transacionais • Sistemas operacionais atuais são capazes de executar múltiplas transações. • Para isso, ocorre a intercalação entre as transações, sendo de dois tipos: lista sequencial (Schedule) e lista sequencial seriada (Serial Schedule). • Uma equivalência entre listas, pode ser de três tipos: • Equivalência de Resultado (Result Equivalence). • Equivalência de Visão (View Equivalence). • Equivalência de Conflieto (Conflict Equivalence). Estados das transações Figura 1 – Estados de uma transação em Banco de Dados Fonte: adaptada de MYSQL (2002). Rollback. Início Ativo Commit Parcial Falha Commit Abortado Commit Armazenamento Permanente. Operações de leitura ou escrita. Algum problema. Algum problema. Banco de Dados Transacionais versus Bancos de Dados Analíticos Caracterização dos Bancos de Dados Analíticos Bloco 2 Anderson da Silva Marcolino Bancos de Dados Analíticos • Enquanto um banco de dados transacional possui foco nas transações, um banco de dados analítico possui características que possibilitam a análise dos dados. Bancos de Dados Analíticos • No contexto de um Data Warehouse: • Repositório central de dados integrados vindos de diferentes fontes de dados utilizadas para análises e relatórios, um banco de dados analítico é essencial. • Surge o conceito de bancos de dados analíticos. Bancos de Dados Analíticos • Com o objetivo de ser altamente performático, um banco de dados analítico é construído com o intuito de permitir a análise de volumes extremamente grandes de dados, rapidamente, sendo cerca de até mil vezes mais rápido. Bancos de Dados Analíticos • Entre as características de banco de dados analíticos, pode-se destacar: • Foco em analisar grandes volumes de dados e análise de negócios. • Otimizado para realizar inserções e selects sob um grande número de linhas. • O tempo para pesquisas leva segundos, para responder a uma consulta analítica. • Exemplos de Bancos de dados: Greenplum, Teradata, Vertica. • Um exemplo adicional é o banco de dados Redshift, o primeiro banco de dados analítico criado em 2012. • A partir de então, outros bancos, como Google Cloud Platform, IBM DB2, MongoDB Atlas, OpenStack. Bancos de Dados Analíticos Figura 2 – Relação de Bancos de Dados Analíticos com Data Warehouse Fonte: adaptada de KIMBALL, (2002). Banco de Dados Analítico JSONs, CSVs Banco de Dados Transacionais APIs e Aplicações Relatórios. Análise de Dados. Machine Learning e Data Science. Transformação e agregação dos dados. Data Warehouse. Teoria em Prática Bloco 3 Anderson da Silva Marcolino Reflita sobre a seguinte situação • Um novo funcionário foi contratado para melhorar o desempenho na infraestrutura de Tecnologia de Informação de uma empresa. Neste empresa, ele se deparou com lentidão na inserção de registros no banco de dados e também a demora para a geração de relatórios para a direção, especialmente pela base de dados possuir um montante muito grande de dados. Reflita sobre a seguinte situação • Notou-se, ainda, que parte dos dados eram provenientes de aplicações de terceiros, sendo obtidos por meio de interfaces de programação de aplicação (API), e que outras eram provenientes de exportação de dados das planilhas de gerentes de suas respectivas áreas na empresa. Considerando este cenário, aponte como organizaria a infraestrutura e indicaria a adoção de bancos de dados (analíticos ou transacionais), para os problemas identificados. Norte para a resolução • Considere as definições e especificidades dos bancos de dados tradicionais e analíticos e busque responder às seguintes questões para propor uma solução: • Quais os objetivos de cada banco de dados? • Quais as características de problemas? • Outros pormenores relacionados à infraestrutura de TI devem ser considerados? Em caso positivo, quais? • Contratação de serviços de terceiros ou aquisições próprias? • Apenas a mudança no tipo de tabelas e otimização na base de dados transacional não seria o suficiente? Norte para a resolução Figura 3 – Esquema para Solução Fonte: elaborada pelo autor. Banco de Dados Analítico CSVs Banco de Dados Transacionais APIs Relatórios. Transformação e agregação dos dados. Data Warehouse. Dicas do(a) Professor(a) Bloco 4 Anderson da Silva Marcolino Prezado aluno, as indicações a seguir podem estar disponíveis em algum dos parceiros da nossa Biblioteca Virtual (faça o login através do seu AVA). Algumas indicações também podem estar disponíveis em sites acadêmicos como o Scielo, repositórios de instituições públicas, órgãos públicos, anais de eventos científicos ou periódicos científicos, acessíveis pela internet. Isso não significa que o protagonismo da sua jornada de autodesenvolvimento deva mudar de foco. Reconhecemos que você é a autoridade máxima da sua própria vida e deve, portanto, assumir uma postura autônoma nos estudos e na construção da sua carreira profissional. Por isso, te convidamos a explorar todas as possibilidades da nossa Biblioteca Virtual e além! Sucesso! Leitura Fundamental Indicação de leitura 1 O texto fundamenta os conceitos de bancos de dados, essenciais para o entendimento dos mesmos e o aprofundamento nos conceitos de data warehouse. Leitura dos capítulos 1 e 2 (página 3 até a 48). Referência: DATE, C. J. Introdução a sistemas de bancos de dados. São Paulo: Elsevier Brasil, 2004. Indicação de leitura 2 O texto apresenta as principais diferenças entre bancos de dados operacionais e data warehouses, especificando pontos importantes para compreensão dos DW. Leitura do capítulo Bancos de dados Operacionais versus Data Warehouses (página 61 até 78). Referência: VIDA, E. da S., et al. Data Warehouse. Porto Alegre: SAGAH, 2021. Dica do(a) Professor(a) Recomendação da minissérie A Era dos Dados, na Netflix, para entender um pouco mais como os dados nos ajudam a tomar decisões e são importantes não somente para as empresas, mas para uma série de análises no contexto científico. Referências DATE, C. J. Introdução a sistemas de bancos de dados. São Paulo: Elsevier Brasil, 2004. KIMBALL, R. The Data Warehouse Toolkit: guia completo para modelagem dimensional. Rio de Janeiro: Campus, 2002. MYSQL. MySQL 5.6 Reference Manual. 14.2 SQL Statements. [s.d.]. Disponível em: https://dev.mysql.com/doc/refman/5.6/en/sql- statements.html. Acesso em: 4 ago. 2022. VIDA, E. da S. et al. Data Warehouse. Porto Alegre: SAGAH, 2021. Bons estudos! Modelagem e arquitetura do Data Warehouse (DW) Banco de Dados Transacionais versus Bancos de Dados Analíticos Bancos de Dados Transacionais Bancos de Dados Transacionais Bancos de Dados Transacionais Serialização em Bancos de Dados Transacionais Estados das transações Banco de Dados Transacionais versus Bancos de Dados Analíticos Bancos de Dados Analíticos Bancos de Dados Analíticos Bancos de Dados Analíticos Bancos de DadosAnalíticos Bancos de Dados Analíticos Teoria em Prática Reflita sobre a seguinte situação Reflita sobre a seguinte situação Norte para a resolução Norte para a resolução Dicas do(a) Professor(a) Número do slide 20 Indicação de leitura 1 Indicação de leitura 2 Dica do(a) Professor(a) Referências Bons estudos!
Compartilhar