Buscar K
Aparência
Aparência
Cinco peças entram em toda carga do HorusETL: o Dataflow, os nós que o compõem, as conexões com os bancos, o Agente ETL que executa e o agendamento que diz quando. O resultado vai para uma tabela do HorusDW, onde Aplicações e Dashboards o leem.
Um Dataflow é uma sequência de nós ligados, salva no Lumo. Ele pertence a uma Mesa de Dados, como as tabelas, e grava numa tabela só. Mesa, Minha Mesa e publicação estão em Mesas e publicação.
Um nó é um passo do Dataflow. A paleta do editor separa os nós em grupos:
| Grupo | O que faz |
|---|---|
| Bancos de Dados | consulta uma das conexões do Tenant |
| Arquivos, Web & APIs, Cloud | lê planilha, CSV, Parquet, API, Google Sheet, tabela do Lumo ou arquivo do Datalake |
| Transformações | junta, filtra, une e calcula com SQL, Python e outros |
| Inteligência Artificial | classifica texto com IA |
| Configurador | calcula variáveis antes da carga, em Python, JavaScript ou HTTP |
| Destinos | grava no Datawarehouse, no Datalake, em Parquet local ou em Google Sheet |
A referência de cada nó está em Nós.
Uma conexão guarda o endereço e as credenciais de um banco de origem. Ela pertence a um Agente ETL e aparece na paleta do editor para os Dataflows daquele Agente. Ver Cadastrar uma conexão de banco.
O Agente ETL é o programa que executa os Dataflows. Ele roda numa máquina Windows ou num container Docker, abre a conexão com a origem, processa o dado e envia o resultado. Cada Dataflow está ligado a um Agente.
Um agendamento diz quando um ou mais Dataflows rodam, em que ordem e com que janela. Ver Agendar um Dataflow.
O Agente precisa enxergar a origem. Para um banco que só aceita conexão da rede interna, ele roda numa máquina dentro dessa rede; um Agente fora dela recebe "conexão recusada" por mais certa que esteja a senha. Para uma origem na internet, como uma API ou um banco em nuvem, o Agente pode rodar na nuvem da HorusBI e atender vários Tenants.
O Agente é quem abre a conexão com o Lumo e a mantém aberta. Nenhuma porta de entrada precisa ser liberada no firewall. Os endereços e o que trafega por cada um estão em Rede e segurança.
StartDate, EndDate, LastDataPoint e as demais) e roda primeiro os Configuradores, com os nós de que eles dependem.Os agendamentos de um mesmo Tenant rodam um de cada vez, em fila, no mesmo Agente. Isso protege a origem e o destino de várias extrações ao mesmo tempo. O limite Agendamentos Simultâneos do Agente vale entre Tenants diferentes, o que importa num Agente na nuvem que atende muitos Tenants.
Duas exceções furam a fila. A execução pedida na tela roda na hora. E um agendamento marcado como Executar em paralelo, sem esperar a fila roda numa pista à parte, com limite próprio na tela do Agente. Em qualquer caso, um mesmo Dataflow nunca roda duas vezes ao mesmo tempo.
Se os agendamentos de um Tenant somam mais tempo do que o intervalo entre eles, a fila nunca esvazia e as execuções atrasam cada vez mais. Ver Dimensionar o Agente ETL.
A execução depende do Lumo em duas pontas: a ordem de rodar sai do Lumo, e a gravação no HorusDW passa por ele. Com o Agente offline, o agendamento não roda e a execução manual recusa com "O Agente ETL precisa estar online para executar uma carga!". Quando o atraso passa do limite definido no agendamento, ele aparece em Eventos.