Pular para conteúdo

conceitos

vocabulário e modelo mental da plataforma migdata.

hierarquia

organização
└── workspace
    ├── lakehouses
    │   └── tabelas (parquet)
    ├── workflows (templates)
    └── pipelines (instâncias implantadas)

entidades principais

workflow

grafo direcionado de nós. define o que fazer: quais fontes ler, quais transformações aplicar, quais destinos gravar. um workflow é um template — pode ser implantado como múltiplos pipelines.

unidade mínima de execução. cada nó tem um tipo (api_rest, postgres, transform_factory, etc.) e uma configuração específica. os nós são conectados por arestas que definem o fluxo de dados.

pipeline

instância de um workflow em execução contínua. tem: - branch: developer (staging) ou main (produção) - schedule: expressão cron opcional - ambiente: variáveis injetadas em tempo de execução

run

uma execução do pipeline. registra: - status por nó (queued, running, success, failed, cancelled) - logs estruturados por passo - tempo de execução e volume de dados

lakehouse

conjunto de tabelas parquet armazenadas no minio/s3. a estrutura de caminho é:

s3://{bucket}/{org_id}/{ws_id}/lakehouses/{slug}/tabelas/{tabela}/data.parquet

conector

executor que implementa leitura ou escrita em um sistema externo. exemplos: ApiRestExecutor, PostgresExecutor, MongoDestinationExecutor.

branches de ambiente

branch comportamento
developer execuções em staging · destinos externos bloqueados · dados expiram em 1h
main produção · todos os destinos habilitados · dados retidos por 7d

engine de execução

o migdata usa duckdb como memória de execução em-processo:

  1. nó fonte lê dados e cria tabela temporária no duckdb
  2. nós de transformação operam sobre essa tabela
  3. nó destino exporta do duckdb para o sistema alvo
  4. ao final da execução, o duckdb é descartado

isso elimina a necessidade de um cluster distribuído para volumes moderados de dados.