我有两个Kafka
流,request
和event
每个分区在一个公共字段requestId(最后两位数字)。我想加入这两个流并写入HDFS
或本地filesystem
?如何编写一个高效的consumer
,在加入两个streams
时只考虑相关的partitions
?如何加入两个Kafka流,每个都有多个分割?
回答
您应该使用Kafka's Streams API,Apache Kafka的流处理库,而不是手写消费者。要将数据写入HDFS,您应该使用Kafka Connect。
对于做加盟,看看这样一个问题:How to manage Kafka KStream to Kstream windowed join?
还检查了汇合的文档关于Kafka Streams和Kafka Connect上手。如果您有进一步的问题,请开始后续问题(阅读手册后:))
卡夫卡流与Kafka连接(HDFS)是一个简单的解决方案。但是,必须指出的是,Kafka Connect的HDFS连接器仅适用于Confluent的Kafka版本。 Apache Kafka Connect只附带一个文件编写器,而不是HDFS编写器。
如何使用Flume从Kafka写入HDFS? – Rubbal
这并非完全正确:即使您使用vanilla Apache Kafka,您也可以下载Confluent的HDFS连接器https://www.confluent.io/product/connectors/并使用它。此外,没有“合流版卡夫卡” - 它只是重新包装,但与Apache Kafka 100%兼容(它可能包含额外的bug修复 - 但很少发生)。 –
@Rubbal,我没有使用flume来达到这个目的。 –
- 1. 加入两个表都有记录
- 2. kafka - 多个主题vs多个分区
- 3. 如何拥有多个UIWebviews,每个都有自己的UITapGestureRecognizer?
- 4. 加入两个表,具有多个值
- 5. 如何运行两个片段,每个都有自己的AsyncTasks
- 6. FLASK,一个HTML与长输入形式分成两个或多个分割htmls
- 7. 如何合并两个或多个流
- 8. 如何分割中的每一个
- 9. 分割栏分成两个
- 10. 提高Mule ESB的性能,每个流程都有多个流程参考
- 11. 如何分割每个空白的数组的每个条目?
- 12. 如何分割两个大写字母?
- 13. 如何分割两个表格字段?
- 14. 具有多个kafka输入的Logstash
- 15. 每个CPU内核有多少管道?每个人都有
- 16. 将Kafka输入流动态连接到多个输出流
- 17. 附加两个输入与每个$ .each。?
- 18. 如何在Apache Spark中加入两个(或更多)流(JavaDStream)
- 19. Kafka:如何生成多个传入文件给Kafka?
- 20. 分割具有多个分离器
- 21. 将输入流分割为多个窗口并单独处理
- 22. 如何在2行(每个都有两个元素)显示4个HTML元素?
- 23. 全部加入,并加入两个表有多个按键
- 24. 是否有可能在张量流中将多个GPU分割成多个GPU?
- 25. 分割两个数字
- 26. VB.NET - 分割成多个分割号码
- 27. 如何分割多个字符串(Php)?
- 28. 如何分割使用多个字符?
- 29. 如何分割在多个TR声明
- 30. 如何分割在多个列
谢谢。看起来正是我需要的东西! – Rubbal
@ matthias-j-sax我阅读手册,这两个库仅与Confluent的版本兼容(感谢rationalSring指出它)。使用融合的版本有什么缺点吗? – Rubbal
这是不正确的。合流,只需重新包装Apache Kafka,并且与ASF版本100%兼容。只有HDFS连接器不是Apache Kafka的一部分,但您可以从confluent.io/product/connectors下载并使用ASF版本。由于Confluent提供Confluent开源代码,并且代码与ASF Kafka 100%兼容,所以使用Confluent的优惠没有缺点 - 只有当您获得更大的软件堆栈时才有优势。 –