HeadlinesBriefing HeadlinesBriefing.com

Escalando pipeline de integração sem quebrar correção

Towards Data Science •
×

Os pipelines de integração de dados corporativos enfrentam um desafio crítico: escalar a capacidade sem comprometer a correção dos dados. Esta conta detalha a escala de 500 a 8.000 eventos por segundo mantendo duas garantias não negociáveis.

A primeira garantia impede que estados posteriores de entidades sejam sobrescritos por versões anteriores. Cada entidade carrega um número de versão de propriedade da fonte, e as escritas rejeitam dados desatualizados através de um mecanismo de última escrita vence, onde 'última' significa o número de versão mais alto, não o tempo de chegada. Isso permite paralelismo agressivo sem preocupações de ordenação.

A segunda garantia assegura uma detecção precisa de duplicatas. Cada registro aceito escreve sua entrada de registro de deduplicação e dados comerciais na mesma transação de banco de dados, fazendo-os se comprometer juntos ou não em tudo. Mudar de verificações no nível da aplicação para restrições de chave primária de banco de dados eliminou deslizamentos de duplicatas durante alta concorrência.

A escala de capacidade emprega particionamento estratégico. Eventos para a mesma entidade são roteados para a mesma partição através de hash de ID de entidade, mantendo a ordem natural. No entanto, quando uma grande conta gerou 100 vezes o tráfego normal, o sub-particionamento espalhou entidades quentes através de partições usando ID de entidade mais tipo de evento como chave. Um trabalho em segundo plano monitora continuamente as taxas de entidade, promovendo e degradando entidades entre particionamento regular e fino. O sistema de verificação de versões absorve qualquer processamento fora de ordem que o sub-particionamento introduz.

O micro-lote fornece melhorias reais de velocidade eliminando viagens de ida e volta por evento e reduzindo a sobrecarga de transações de banco de dados separadas.

Entidades Principais: Empresas: Em Direção à Ciência de Dados

Fonte: Towards Data Science · Resumido por HeadlinesBriefing