paint-brush
Compreendendo como funciona o armazenamento de dados na AWSpor@ramsjha
15,779 leituras
15,779 leituras

Compreendendo como funciona o armazenamento de dados na AWS

por ramsjha4m2023/11/29
Read on Terminal Reader

Muito longo; Para ler

Explore o mundo do armazenamento de dados, desde seus conceitos básicos até a implementação prática com o AWS Redshift. Este guia abrangente aborda abordagens de modelagem de dados, investiga as complexidades da configuração do AWS Redshift e mostra como o armazenamento de dados se encaixa perfeitamente no ecossistema mais amplo de soluções de dados, abrindo novas possibilidades para análise e inteligência de negócios.
featured image - Compreendendo como funciona o armazenamento de dados na AWS
ramsjha HackerNoon profile picture

Este blog cobrirá holisticamente:

(a) O que é armazenamento de dados

(b) Abordagens de modelagem de dados para data warehouse

(c) Data warehouse na AWS e, por último

(d) Armazenamento de dados para redução da carga operacional utilizando Serviço Gerenciado.


Vamos entender da perspectiva de um leigo “ O que é um data warehouse


De acordo com a Wikipedia - um data warehouse (DW ou DWH), também conhecido como Enterprise Data Warehouse (EDW), é um sistema usado para relatórios e análise de dados e é considerado um componente central da inteligência de negócios . Os data warehouses são repositórios centrais de dados integrados de uma ou mais fontes distintas. Eles armazenam dados atuais e históricos em um único local que é usado para criar relatórios analíticos para trabalhadores de toda a empresa. Isto é benéfico para as empresas, pois permite-lhes interrogar e extrair insights dos seus dados e tomar decisões.


Em termos básicos, é a arte de coletar, armazenar e fornecer insights (business intelligence) de maneira eficiente para ajudar uma empresa a se tornar uma organização orientada por dados. Em certo sentido, é outro banco de dados de transações, mas otimizado para cargas de trabalho analíticas.



De acordo com o diagrama acima, os dados são coletados da fonte, transformados por uso (ETL/ELT) e armazenados em DWH/Data mart e Insights expostos por meio de ferramentas de business intelligence.


Tudo parecia simples na época da configuração local, quando ELT (ETL vs ELT), Cloud DWH (AWS Redshift, Google Big Query, Snowflake, Databricks) e outras soluções de dados gerenciados eram inexistentes, o que ultimamente simplificou e escalou o alcance do DWH. Neste blog vamos entender cada aspecto, um de cada vez.


Para simplificar, vamos partir da premissa de que não há computação e armazenamento infinitos e que o sistema transacional não pode processar consultas analíticas com eficiência. É aqui que foi necessária uma maneira eficiente de projetar um data warehouse que fosse ideal em armazenamento, lidasse com consultas analíticas com eficiência (fatiar/cortar em cubos/cubo, etc.) e fornecesse a latência necessária.


Por tudo isso, dois modelos teóricos de design para design de Datawarehouse entraram em cena:


(a) Bill Inmon – abordagem Top Down (EDW) e

(b) Ralph Kimball – Abordagem bottom-up (Data mart).


A abordagem de Inmon é construir centralmente em escala global e levar em consideração a construção lenta, enquanto a maneira de Kimball é criar um data mart independente por silo e conectá-los posteriormente. Não vamos nos aprofundar em qual modelo é melhor ou qual escolher. No meu caso, resumindo, os dois modelos funcionam e depende totalmente do caso de uso e da maturidade da organização. Outro ponto-chave neste design é a “Representação de Dados”, modelagem dimensional usando esquema Star, esquema Snowflake ou um híbrido de estrela e floco de neve que é um pivô chave para consultas e dimensionalidade mais rápidas.




A única conclusão importante é que, apesar da logística infinita, um bom design de Datawarehouse pode resolver um problema multidimensional. Então, é melhor não ignorar isso.


A próxima etapa na construção de um DW é a plataforma escolhida, que pode variar desde local (Teradata, IBM DB2, Oracle, etc) até Cloud DW (Snowflake, Redshift, BigQuery, etc). Construir um data warehouse tradicional é complexo, e o gerenciamento e a manutenção contínuos podem ser desafiadores e caros. Na próxima seção, vamos nos aprofundar em como construir com AWS Redshift (não há discussão se o local é melhor ou a nuvem ou qual nuvem DWH é melhor).


O Amazon Redshift é um data warehouse de nível empresarial totalmente gerenciado em escala de petabytes que oferece desempenho excepcional para consultas analíticas, simples de usar e econômico. O Amazon Redshift reduz a sobrecarga operacional exigida pelos data warehouses tradicionais, automatizando tarefas como aplicação de patches, backups e provisionamento de hardware. Você pode configurar um cluster do Amazon Redshift onde é possível personalizar a infraestrutura e as linhas de base de desempenho do seu data warehouse. O Amazon Redshift também fornece Redshift Spectrum, Datashare, Redshift ML e configuração sem servidor, que permite usar o cluster do Amazon Redshift além do DWH.


O caminho para a configuração,

  • Defina quais serviços aproveitar para coleta de dados (AWS DMS, DynamoDB, EMR, Glue, Kinesis, S3, SSH Host, etc.)
  • Definir uma forma de interagir (ferramentas de análise de consultas e interfaces de gerenciamento)
  • Entenda a arquitetura Redshift MPP (distribuída, sem compartilhamento)
  • Iniciar cluster (DC2, DS2 ou RA3) com tamanho de dados, crescimento, nó e desempenho de consulta necessários
  • Projete o esquema do banco de dados de acordo com o caso de uso ou implementação de DWH com tipo de dados, tipo de esquema, compactação, buffer e codificação necessários
  • Carregando dados usando COPY para diferentes tipos de arquivo, INSERT para alteração mínima e ANALYZE & VACUUM para manutenção
  • Execute otimização de consulta e aprimoramento de desempenho
  • Aproveite o S3 usando Spectrum para tabela externa e compartilhamento de dados para cópia zero
  • Use o Redshift ML para obter insights profundos
  • Aproveite as ferramentas do AWS Quicksight para BI para obter insights.


Até agora, faz sentido usar o Cloud DWH, mas como isso se encaixa no grande esquema das coisas DWH + Data Lake/serviços gerenciados para solução de dados ? A imagem abaixo explica como Data Lakes e Data Warehouses funcionam perfeitamente juntos. O AWS RDS serve como fonte de dados, fornecendo uma solução econômica e durável, que alimenta o Amazon S3 . Os dados são então transformados usando processos ETL e integrados ao Redshift. Serviços adicionais da AWS, como Athena, Glue, Spectrum, Lake Formation e outros, desempenham um papel crucial na ponte para criar uma solução de dados abrangente.






Concluindo, este blog cobre os fundamentos do Data Warehousing, investiga a abordagem de implementação tanto teoricamente quanto com foco na pilha de tecnologia. Também obtemos uma visão panorâmica de como ele se integra perfeitamente ao cenário mais amplo de soluções de dados.