我有两个Kafka
个流,request
和event
,每个流都在公共字段requestId(最后两位数字)上分区。我想加入两个流并写入HDFS
或本地filesystem
?如何编写效率consumer
,在加入两个partitions
时仅考虑相关的streams
?
答案 0 :(得分:2)
您应该使用 Kafka的Streams API ,Apache Kafka的流处理库,而不是手写的消费者。要将数据写入HDFS,您应该使用Kafka Connect。
要进行加入,请查看以下问题:How to manage Kafka KStream to Kstream windowed join?
另请参阅Confluent关于Kafka Streams和Kafka Connect的文档以开始使用。如果您还有其他问题,请开始跟进问题(阅读手册后:):)
答案 1 :(得分:0)
Kafka流与Kafka Connect(用于HDFS)是一个简单的解决方案。但是,必须指出Kafka Connect的HDFS连接器仅适用于Confaf的Kafka版本。 Apache Kafka Connect只附带文件编写器,而不是HDFS编写器。