# 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" %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.gaiodataos.com/gaio-dataos-portuguese/casos-de-uso/data-mart.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
