Os dados podem ser armazenados em diversos formatos e locais, dependendo do volume, tipo de dado (estruturado ou não) e da finalidade de uso.
🧱 Alguns Tipos de Armazenamento
| Tipo | Descrição | Exemplos | Vantagens principais | Quando usar |
|---|---|---|---|---|
| Banco de Dados Relacional | Estrutura tabular (linhas e colunas), ideal para dados estruturados | MySQL, PostgreSQL, | ||
| SQL Server | Consistência, integridade referencial, | |||
| linguagem SQL | Dados transacionais, | |||
| ERPs, | ||||
| CRMs | ||||
| Arquivos de Texto | Dados simples armazenados em arquivos locais | CSV, TXT | Portabilidade, simplicidade, | |
| leveza | Dados de entrada/saída simples, | |||
| logs exportados, | ||||
| integração com Python | ||||
| NoSQL | Armazenamento flexível para dados não estruturados ou semiestruturados | MongoDB (documentos), Redis (chaves) | Alta escalabilidade, flexível em estrutura | Aplicações web, |
| tempo real, | ||||
| dados variados sem esquema fixo | ||||
| Serviços em Nuvem | Armazenamento escalável e acessível via internet | AWS S3, Google Cloud Storage, Azure | Custo-benefício, disponibilidade global, integração com AI/ML | Projetos escaláveis, |
| Big Data, | ||||
| armazenamento de backup |
É essencial entender o propósito de cada tipo de repositório. Embora todos armazenem dados, a forma como fazem isso, o tipo de dado e os casos de uso são diferentes.
| Conceito | Definição | Tipo de Dados | Finalidade Principal | Ferramentas Comuns |
|---|---|---|---|---|
| Data Warehouse | Armazém centralizado com dados estruturados, | |||
| integrados de vários sistemas. | Estruturados | BI, | ||
| relatórios executivos, decisões de negócio | Snowflake, | |||
| BigQuery, | ||||
| Redshift, | ||||
| Azure Synapse | ||||
| Data Lake | Repositório de dados brutos, armazenados em seu formato original, sem necessidade de estrutura prévia. | Estruturados, semi e não estruturados | Ciência de Dados, | |
| IA, | ||||
| Big Data, | ||||
| análises exploratórias | Hadoop, | |||
| Amazon S3, | ||||
| Azure Data Lake, | ||||
| Databricks | ||||
| Lakehouse | Combinação de Data Lake e Data Warehouse, unindo a flexibilidade do Lake com a estrutura do Warehouse. | Estruturados, semi e não estruturados | BI + Machine Learning em uma arquitetura unificada | Databricks Lakehouse, |
| Delta Lake, | ||||
| Snowflake | ||||
| Data Mesh | Arquitetura descentralizada com foco em domínios de negócio. | |||
| Cada time é dono dos seus próprios dados. | Depende do domínio (estrutura varia) | Escalabilidade organizacional, autonomia dos times | Plataformas compatíveis com mesh: | |
| Kafka, | ||||
| dbt, | ||||
| Airflow, | ||||
| Snowflake + Governança de dados | ||||
| Data Mart | Subconjunto especializado de um Data Warehouse voltado para um setor ou área específica. | Estruturados | Relatórios setoriais e análises específicas | Power BI, |
| Tableau com SQL Server, | ||||
| Oracle |
💡 Exemplo prático com todos os conceitos:
Imagine uma empresa de logística nacional com grande volume de dados operacionais:
| Camada | Exemplo na empresa |
|---|---|
| Data Lake | Dados brutos: coordenadas de GPS dos caminhões, logs de sensores IoT, vídeos de monitoramento, PDFs de formulários. |
| Data Warehouse | Dados estruturados: entregas por região, tempo médio de rota, desempenho de motoristas, indicadores de eficiência. |
| Data Mart | Departamento financeiro: análise de margem de lucro por entrega, custos por quilômetro rodado, metas atingidas. |
| Data Mesh | Cada setor (Logística, RH, Vendas) é responsável por seus próprios conjuntos de dados, com times dedicados e APIs de acesso. |
| Lakehouse | A empresa unifica os dados do Data Lake (brutos) e do Warehouse (estruturados) para gerar relatórios em tempo real para decisões estratégicas e científicas. |
Escalabilidade é a capacidade de um sistema crescer em desempenho ou volume sem perder eficiência.
| Tipo | Descrição | Vantagens | Desvantagens | Exemplos Práticos |
|---|---|---|---|---|
| Vertical (Scale-up) | Aumenta os recursos de um único servidor (RAM, CPU, SSD). | Simples de implementar; sem alterações no código. | Custo alto; há um limite físico de upgrade. | Mudar de servidor com 16 GB para 128 GB de RAM para suportar mais transações em um PostgreSQL. |
| Horizontal (Scale-out) | Adiciona múltiplos servidores (nós) que funcionam juntos. | Escala quase indefinidamente; melhor para alta disponibilidade. | Complexidade maior (ex: particionamento, replicação). | MongoDB com shards, Cassandra com múltiplos nós, MySQL Cluster com replicação mestre-escravo. |
🔁 Escalabilidade Horizontal e Sharding: Sharding: Técnica usada para dividir uma base de dados em várias partes menores chamadas shards. Cada shard é uma partição que pode estar em um servidor diferente.