> For the complete documentation index, see [llms.txt](https://docs.gaiodataos.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gaiodataos.com/gaio-dataos-portuguese/casos-de-uso/data-mart.md).

# Data Mart

<figure><img src="/files/PoRwJxaBBtxfN4d7M5Lk" alt=""><figcaption></figcaption></figure>

## Visão Geral do Projeto

O objetivo deste projeto é construir um **Data Mart modular e escalável** dentro do Gaio DataOS, organizando dados operacionais por domínio:

* Clientes
* Pedidos
* Produtos
* Itens de Pedido

Essa estrutura permite:

* Análises descritivas
* Monitoramento operacional
* Modelos preditivos

***

## Etapas de Desenvolvimento

### 1. Validação e Gatilho do Processo

<figure><img src="/files/etcZrydYtxM3ukyEHncr" alt=""><figcaption></figcaption></figure>

* Validação e Gatilho do Processo
* O projeto inicia com uma verificação automática de atualização de dados.
* Uma tabela de controle SQL cria: `tmp_tb_control_data_update`

Fluxo:

* `tmp_tb_control_data_update` → Verifica se há novos dados
* `tb_control_data_update` → Armazena o status da execução
* Caso novos dados sejam detectados, o fluxo principal de extração é disparado automaticamente.

***

### 2. Extração de Dados

<figure><img src="/files/PoRwJxaBBtxfN4d7M5Lk" alt=""><figcaption></figcaption></figure>

* Os dados são extraídos de:

  * PostgreSQL
  * Arquivos CSV
  * APIs configuradas no Gaio

  São utilizadas tarefas do Builder para:

  * Transformação de dados
  * Tratamento de valores nulos e erros
  * Padronização de formatos
* Os resultados intermediários são armazenados em **tabelas temporárias (`tmp_`)**.
* A consolidação final e versionamento são realizados em **tabelas finais (`tb_`)**.

***

## 3. Estrutura Modular por Domínio

Cada domínio segue a seguinte arquitetura:

```
Fonte → Builder de Staging → Tabela Temporária (tmp_) → Builder Final → Tabela Final (tb_)
```

***

### 3.1 Domínio de Clientes

<figure><img src="/files/kedsPIB0eJ3WUGPAyiFK" alt=""><figcaption></figcaption></figure>

* **Fonte:** PostgreSQL (`customers`)
* **Etapas:**
  * Filtrar registros inválidos
  * Normalizar e enriquecer informações
  * Criar `tmp_customers`
  * Publicar em `tb_customers`

***

### 3.2 Domínio de Pedidos

<figure><img src="/files/B5UcWmRqCTy7xndCdrrp" alt=""><figcaption></figcaption></figure>

* **Fonte:** PostgreSQL (`orders`)
* **Etapas:**
  * Calcular totais
  * Calcular frete
  * Estimar prazo de entrega
  * Normalizar status e falhas
  * `tmp_orders` → `tb_orders`

***

### 3.3 Domínio de Produtos

<figure><img src="/files/6eAsqMoFjUxmAbUI2sO3" alt=""><figcaption></figcaption></figure>

* **Fonte:** PostgreSQL (`products`)
* **Etapas:**
  * Enriquecer com categoria e disponibilidade
  * Criar flags para produtos descontinuados
  * `tmp_products` → `tb_products`

***

### 3.4 Domínio de Itens de Pedido

<figure><img src="/files/uc0po7tIfWxh3YSuByGn" alt=""><figcaption></figcaption></figure>

* **Fonte:** PostgreSQL (`order_items`)
* **Etapas:**
  * Tratar valores nulos e tipos de dados
  * Calcular impostos
  * Aplicar descontos
  * Calcular valores unitários
  * `tmp_order_items` → `tb_order_items`

***

## Tecnologias Utilizadas

* Gaio DataOS como plataforma central
* ETL visual com Builder, Form, Content e tarefas SQL
* Tabelas Temporárias (`tmp_`) para staging e auditoria
* Tabelas Finais (`tb_`) para consumo downstream
* Parâmetros Dinâmicos para automação contextual
* Lógica condicional para controle de execução
* Estrutura pronta para integração com dashboards, IA e fluxos automatizados

***

## Resultados Esperados

* Pipelines de dados robustos e auditáveis
* Possibilidade de reprocessar domínios de forma independente
* Desenvolvimento acelerado de dashboards
* Componentes reutilizáveis para novos projetos
* Maior confiança e governança de dados para usuários de negócio
* Estrutura pronta para:
  * Previsões (Forecast)
  * Clusterização
  * Modelos de churn

***

## Download deste Projeto

{% file src="/files/sLo44bZHhwQAf61ENsJ9" %}

{% file src="/files/yyax9JXj1w2qGipF03oL" %}
