Tomasrohr.org

Apache Kafka Tips #1 - Topics

1) Pojmenování topiků Název musí popisovat data uvnitř. Jeden topik = jedna entita datového modelu (zákazník, metriky z měřidel z daného okamžiku, zařízení, lokace) Též topik = jeden druh logických událostí (naměřené hodnoty z měřidel, události čidel (otevřené okno, atd), alerty (např. čidlo mimo provoz, otevření dveří po půlnoci) )

2) Velký stream nebo více malých streamů Pokud není potřeba extra šetřit na HW tak je podle mého názoru lepší více specializovaných streamů. Kafka neumí filtrování zpráv (možná v budoucnu bude), takže každý konzument musí přijmout všechny zprávy. Navíc zátěž Kafka clusteru je funkcí celkovém počtu partitions, ne přímo počtu topiků. Takže pokud nepotřebujete extra propustnost stačí pár partition na topic Na RTODS jsme to přímo neřešili, ale držíme se pravidla: co jedna entita (nebo tabulka) to jeden topic a jedno pevně přiřazené Avro schéma.