kafka和kafka direct之间是否存在任何差异。如果有的话,什么时候应该使用而不是另一个?什么是优势?
答案 0 :(得分:1)
kafka direct是一种优化,可以提供更好的容错保证和更强的可靠性语义。
公园1.2引入了Write Ahead Logs。它确保从任何可靠的数据源(即,诸如Flume,Kafka和Kinesis之类的事务源)接收的数据不会由于失败而丢失(即,至少一次语义)。即使对于像普通旧套接字这样的不可靠(即非事务性)源,它也可以最大限度地减少数据丢失。
请参阅此link以获得更好的理解
答案 1 :(得分:0)
Kafka的新 Direct API - 这允许每个Kafka记录在发生故障时只处理一次,而不使用Write Ahead Logs。这使Spark Streaming + Kafka管道更有效,同时提供更强的容错保证。