
Aynı cümlede anılan iki farklı araç
Apache Kafka ve MQTT, "veri akışı" denince birlikte anılır; ancak mimari olarak farklı katmanlara hizmet ederler. Doğru seçim, projenin hangi sorunu çözdüğüne bağlıdır.
MQTT: saha cihazları için hafif taşıma
MQTT, cihazlardan merkeze veri taşımak için tasarlanmıştır. Yayın/abonelik modeli, düşük bant genişliği ve QoS seviyeleri sayesinde binlerce cihazın tek broker'a bağlandığı senaryolarda etkilidir. Endüstriyel kullanımda Sparkplug B ile standart veri modeli kazanır.
Apache Kafka: kurumsal veri platformu
Kafka ise yüksek hacimli veri akışlarını kalıcı olarak saklayan, dağıtık bir akış platformudur:
- Veriler topic'lerde belirli süre saklanır; tüketiciler kendi hızlarında, geriye dönük okuyabilir.
- Birden çok tüketici aynı akışı bağımsız tüketebilir.
- Yatay ölçeklenme ile çok yüksek mesaj hacimleri desteklenir.
Kafka genellikle merkezde, kurumsal sistemler arasında "tek doğruluk kaynağı" akış olarak konumlanır; saha cihazlarının doğrudan Kafka'ya bağlanması yerine kenarda toplanan veriler Kafka'ya aktarılır.
Pratik mimari: ikisi birlikte
Yaygın ve sağlıklı mimari şudur: saha cihazları MQTT ile kenara akar; OPC Router bu verileri toplar, filtreler ve Apache Kafka Messaging Plug-in ile Kafka topic'lerine yazar. Kurumsal uygulamalar, analitik sistemleri ve mikro servisler Kafka'dan beslenir. Böylece her teknoloji kendi güçlü olduğu katmanda çalışır.
Karar tablosu
- Binlerce saha cihazı, dar bant, telemetri: MQTT.
- Kurumsal akış platformu, geriye dönük okuma, çoklu tüketici: Kafka.
- İkisi arasında köprü, dönüşüm ve güvenilir aktarım: OPC Router.
OPC Router'ın desteklediği tüm bağlantılar için plug-in listesine göz atın.