Pular para o conteúdo principal

Arquitetura de alto nível

A VortixGeo é organizada em quatro camadas: ingestão, armazenamento geoespacial, serviço e apresentação. Uma frota de DAGs do Apache Airflow mantém o acervo atualizado; o PostGIS guarda a geometria; um backend FastAPI e um servidor de tiles expõem os dados; e duas aplicações web entregam a experiência ao usuário.

Camadas

Ingestão (Apache Airflow)

Uma frota de DAGs cuida de três tipos de trabalho:

  • Ingestão de bases — baixa e normaliza dados oficiais (CAR, PRODES, DETER, focos de fogo, assentamentos INCRA, unidades de conservação, etc.) para tabelas PostGIS particionadas.
  • Checks de compliance — executa as verificações espaciais e documentais que alimentam o score.
  • RPA de certidões — robôs que emitem certidões (CNDT, CRF/FGTS, trabalho escravo, junta comercial, registro civil) sob demanda.

Veja Ingestão de dados.

Armazenamento

  • PostgreSQL 16 + PostGIS guarda toda a geometria (imóveis, alertas, focos, camadas de referência). Tabelas de grande volume (alertas de desmatamento, focos de fogo) são particionadas por tempo.
  • Cloudflare R2 guarda objetos: relatórios PDF, tiles vetoriais gerados, arquivos brutos de ingestão e logs.

Serviço

  • Backend FastAPI expõe a API de consultas, orquestra a geração de relatórios e serve os endpoints de monitoramento.
  • pg_tileserv publica vector tiles (MVT) diretamente do PostGIS para os mapas.
  • Spark + Apache Sedona e Tippecanoe rodam sob demanda (em contêineres efêmeros) para processamento pesado e geração de tiles.

Apresentação

Três frentes de interface consomem a API e os tiles:

  • Dashboard — visão operacional e mapas de monitoramento.
  • Consult-bank — portal de compliance para instituições financeiras.
  • Agro — painel dos índices climáticos e de sanidade.

Veja Módulos.

Fluxo de uma consulta de compliance

A consolidação do score é determinística e vive em uma camada de semântica de resultados isolada (Python puro, testável): ela classifica cada verificação, avalia a gravidade do achado e consolida a nota final. Veja Scoring de compliance.