Sync types: full vs incremental
A decisão que define seu custo e quão atualizado estão seus dados. Com exemplo real e um guia de decisão.
- Entender a diferença entre full sync e incremental
- Saber estimar o impacto em custo e atualização
- Escolher o sync certo para cada fonte
Toda fonte que você conecta precisa de uma decisão: a cada sync, a Nekt puxa tudo de novo ou só o que mudou? Essa escolha, aparentemente técnica, define diretamente quanto você paga e quão fresco fica o seu dado. Vale entender antes de sair conectando.
Os dois tipos
Full sync (completo). A cada execução, a Nekt lê a fonte inteira e reescreve a tabela. Simples e à prova de erro: o destino é sempre um retrato exato da origem. O custo é que você reprocessa tudo, mesmo o que não mudou.
Incremental. A cada execução, a Nekt traz só os
registros novos ou alterados desde o último sync, usando uma coluna de
referência (geralmente updated_at ou um id crescente).
Muito mais barato e rápido em tabelas grandes. O custo é que exige uma
coluna confiável para saber "o que mudou".
Incremental depende de uma coluna que indique quando o registro foi
atualizado. Se a fonte altera um registro sem mexer
no updated_at, a Nekt não vê a mudança e o dado fica
dessincronizado. Quando essa coluna não existe, a única opção que
garante integridade dos dados é o full sync.
A Nekt sempre traz o incremental como padrão sempre que a fonte permite filtros por data de atualização. A exceção são bancos de dados, onde o próprio usuário deve configurar a chave incremental para cada tabela do banco.
O trade-off na prática
Full: extrai 5M de linhas a cada hora, 24 vezes por dia. Taxa de atualização ótima, custo alto e crescente conforme a tabela cresce.
Incremental por updated_at: lê só os
~2 mil pedidos que mudaram na última hora. Mesma taxa de
atualização, custo uma ordem de grandeza menor, e estável mesmo
quando a tabela chega a 50M.
A regra prática: quanto maior e mais movimentada a tabela, mais o incremental compensa, especialmente em bancos de dados.
Um e-commerce puxava o catálogo de produtos (8 mil SKUs, muda pouco) em full sync diário, e os pedidos (crescendo 20 mil/dia) em incremental de hora em hora. Cada fonte no seu tipo: produtos simples e sempre corretos, pedidos frescos sem explodir o custo. A decisão de "qual é melhor" deve levar em conta o contexto e caso de uso específico.