Respostas para a pergunta que você buscou, com os números junto.
-
Nota
1,8 milhão de mensagens, 200 milhões de linhas: conferindo o Kafka contra o ClickHouse
Nossos players mandam uma mensagem no Kafka por envio, com cerca de 112 linhas cada. Como contei um dia de mensagens só pelos offsets, comparei com as linhas que o ClickHouse realmente inseriu e cheguei a 13.912.374 contra 13.912.522.
medido ▸ 13.912.374 mensagens × 13.912.522 linhas em 24 h (0,001%) · 1.782.599 mensagens levando ~199,3 mi de linhas
-
Nota
Levar 14 mil telas para o MQTT sem perder nenhuma
Presença e telemetria dos aparelhos saíram do HTTP para o MQTT numa frota de cerca de 14 mil telas. Um projeto de um ano, quatro meses de teste e um rollout devagar, porque o pior cenário era perder contato com telas em campo. As mensagens de telemetria caíram 67%.
medido ▸ telemetria no Kafka: ~42 mi de mensagens/dia antes, 13,9 mi depois (−67%) · 13.835 telas reportando
-
Dica
Uma lista de brokers velha que dava 504
Uma tela de um sistema financeiro respondia 504. A causa era uma lista de brokers do Kafka que ainda apontava para um cluster substituído meses antes. Por que o cliente não reclamou na inicialização, e como fazê-lo falhar em um segundo.
medido ▸ 1 linha alterada · pela config do produtor, ~12 s por envio (poll de 3 s + 3 flushes de 3 s) até o Local: Timed out
-
Deep dive
Telemetria com padrão de faturamento, vinda de 15 mil telas
Cada exibição de anúncio é prova de cobrança, e as telas perdem a rede por horas. Como funciona o pipeline de prova de exibição: cache no aparelho, envio em lote, ordenar antes de inserir, um MySQL particionado por semana com 2 bilhões de linhas, depois Kafka e ClickHouse.
medido ▸ ~200 milhões de linhas de exibição por dia · rodadas do importador de 155 mil a 643 mil linhas em 7 a 20 s · era MySQL: 2 bi+ de linhas, partição semanal