DATTA Prep — Preparação Visual de Dados
Preview — funcionalidade em desenvolvimento. Comportamento, telas e contratos podem mudar sem aviso entre versões.
Preparar dados para análise costumava exigir scripts SQL espalhados, planilhas intermediárias e um pedido ao time de engenharia a cada nova coluna. Com o DATTA Prep — o Power Query da plataforma DATTA — você combina dados de várias fontes (Trino, Neo4j, OpenSearch, bancos JDBC, arquivos) num único Modelo semântico, clicando, sem escrever DATTAX. Cada clique vira uma etapa rastreável, e o resultado sai pronto para os painéis do DATTA BI.
Acesse pelo menu .
Conceito
O DATTA Prep adota o modelo mental do Power Query, em três painéis:
- Consultas (esquerda): cada "tabela" do seu Modelo é uma consulta. Você adiciona várias consultas, cada uma de uma fonte diferente.
- Preview (centro): amostra de 100 linhas da consulta ativa.
- Etapas aplicadas (direita): cada transformação (filtro, ordenação, renomeação, remoção, mudança de tipo, coluna calculada, agrupamento, limite) vira um pipe
|>DATTAX gerado automaticamente.
Quando você clica em Salvar como Modelo, o DATTA Prep:
- Persiste cada consulta como um Dataset do DATTA BI.
- Cria um Modelo (
DataModel) agrupando as consultas. - Liga cada Dataset ao Modelo.
- Registra cada tabela no Knowledge Catalog, com:
- Estatísticas por coluna (mínimo, máximo, média, contagem de distintos, contagem de nulos).
- Semântica por coluna (tipo semântico, kind, tags, descrição e termo do glossário, quando houver).
- Referência à conexão de origem (identificador e nome).
Ou seja: o que você preparou vira ativo governado e reutilizável — não um arquivo solto. As rotas usadas nesses quatro passos estão na referência de API.
Passo a passo
- Conectar a uma fonte. Clique em + Nova fonte no painel esquerdo. O diálogo lista todos os datasets já descobertos pela catalogação automática das suas conexões — Trino, Neo4j, OpenSearch, JDBC. Selecione um e o DATTA Prep gera o
FROMDATTAX automaticamente, executa o preview e exibe a tabela. - Aplicar transformações. Use:
- Cabeçalho da coluna (...): filtro, ordenação, renomeação, remoção e mudança de tipo.
- Menu superior:
GROUP BY,LIMITeMUTATE(coluna calculada).
- Semântica. Clique no chip semântico de cada coluna (inferido automaticamente a partir do nome e do tipo). Edite o tipo (
dimension,measure,identifier,date,email,pii...), kind, tags, descrição e termo do glossário. - Salvar como Modelo. Defina nome, descrição, workspace e domínio. Escolha Batch (snapshot, materialização sob demanda) ou Streaming (todas as origens streamadas via Kafka — veja a seção abaixo). Para streaming, indique a coluna
WATERMARK(timestamp ou cursor para carga incremental).
Modos de carregamento
Batch (padrão)
- Cada
FROM <KIND>permanece como está — SQL do Trino,MATCHem Cypher, consulta ao índice. A materialização acontece quando o Modelo é referenciado por um painel do DATTA BI ou por um job DATTAX agendado. - DATTAX gerado: ``
dattax EVALUATE FROM TRINO "memory.datta_demo" "SELECT * FROM memory.datta_demo.vendas" |> FILTER "valor_total" > 100 |> ORDER BY "data_pedido" DESC`` - Uso ideal: análises periódicas (diária, semanal), painéis com atualização manual, exploração livre.
Streaming via Kafka
- Toda fonte batch é reescrita para o equivalente
FROM STREAM <KIND>, independentemente de a origem ser ou não naturalmente streaming. O backbone Kafka unifica tudo. - Mapeamentos automáticos:
| Batch | Streaming |
|---|---|
FROM TRINO "<schema>" "SELECT * FROM <fqTable>" | FROM STREAM CDC "<conn>" TABLE "<schema.table>" FORMAT JSON STARTING FROM EARLIEST |
FROM JDBC "<agent>" "SELECT * FROM <table>" | FROM STREAM CDC "<conn>" TABLE "<table>" FORMAT JSON STARTING FROM EARLIEST |
FROM GRAPH "<db>" MATCH "(n:Label)" | FROM STREAM NEO4J_CDC "<conn>" LABEL "Label" FORMAT JSON STARTING FROM EARLIEST |
FROM INDEX "<index>" {...} | FROM STREAM OPENSEARCH_POLL "<conn>" TOPIC "<index>" FORMAT JSON STARTING FROM EARLIEST |
WATERMARKé obrigatório para carga incremental: é a coluna de timestamp ou cursor que a plataforma usa para saber "até onde já consumiu". SemWATERMARK, o stream entrega o snapshot inicial, mas não consegue avançar.- Como funciona por dentro:
- Trino/JDBC: o conector Debezium lê o log de transações e publica em um tópico Kafka por tabela (
datta.cdc.<db>.<table>). - Neo4j: a procedure
cdc.queryem modo PULL (Neo4j 5.13+) emite eventos para um tópico Kafka mantido por um componente auxiliar — alternativa on-premises, sem dependência de Confluent. - OpenSearch: não tem CDC nativo. O
OPENSEARCH_POLLconsulta por intervalo (padrão de 30s) comrange > last_watermark, publica os documentos novos em Kafka e avança o watermark.
- Trino/JDBC: o conector Debezium lê o log de transações e publica em um tópico Kafka por tabela (
- Materialização: a plataforma consome o tópico Kafka, aplica os pipes DATTAX (
|> FILTER,|> GROUP BY, etc.) e empurra para o destino (MATERIALIZE TO TABLE,MATERIALIZE TO INDEX,MATERIALIZE TO GRAPH) em micro-lotes de 5s ou em janelas tumbling configuradas.
Quando usar cada modo
| Cenário | Modo |
|---|---|
| Análise diária ou semanal, painel com atualização manual | Batch |
| Exploração livre de uma fonte nova | Batch |
| Painel que precisa refletir a origem em minutos | Streaming |
| Origem com alto volume de alterações contínuas | Streaming (com WATERMARK) |
Demo: Modelo cross-source
O workspace demo-ws-vendas já vem com dois Modelos pré-cadastrados que combinam as 3 fontes simultaneamente:
Modelo Demo Cross-Source (Vendas + Logs + Conexoes)— batch.Modelo Demo Streaming (Vendas + Logs + Conexoes via Kafka)— streaming.
Cada Modelo agrega:
- Trino:
memory.datta_demo.vendas(60 pedidos). - Neo4j:
datta.Connection(registro de conexões da plataforma — 11 conexões). - OpenSearch:
otel-v1-apm-span-000001(~911 mil registros de telemetria).
Use estes Modelos como ponto de partida para painéis no DATTA BI ou para validar o pipeline de streaming consumindo de Kafka.
Permissões
DATAPREP_VIEW— abrir o DATTA Prep e listar fontes (analista+).DATAPREP_EXECUTE— executar o preview de uma consulta (analista+).DATAPREP_SAVE— salvar um Modelo (analista, steward, admin).DATAPREP_STREAMING— escolher o modo Streaming (steward, admin — o consumo de Kafka tem custo de infraestrutura que exige aprovação).
O que evitar
- Combinar dezenas de consultas em um único Modelo: prefira Modelos pequenos por domínio (
vendas,clientes,logs) e relacione-os na tela de Modelos do DATTA BI. - Salvar streaming sem
WATERMARK: o stream entrega o snapshot inicial, mas trava na próxima atualização. - Editar o DATTAX gerado à mão: o DATTA Prep reexecuta a partir das etapas, e alterações manuais são sobrescritas. Para DATTAX livre, use o designer de pipeline do DATTA Extract.