首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我应该使用什么: Kafka流或Kafka消费api或Kafka connect

我应该使用什么: Kafka流或Kafka消费api或Kafka connect
EN

Stack Overflow用户
提问于 2017-09-04 08:18:19
回答 2查看 2K关注 0票数 7

我想知道什么是对我最好的:卡夫卡流或卡夫卡消费api或卡夫卡连接?

我想从主题中读取数据,然后进行一些处理并写入数据库。因此,我已经编写了使用者,但我觉得我可以编写Kafka流应用程序,并使用它的有状态处理器执行任何更改并将其写入数据库,这可以消除我的使用者代码,只需要编写db代码。

我想插入我的记录的数据库是: HDFS -(插入原始JSON) MSSQL -(已处理的json)

另一个选项是Kafka connector,但我发现到目前为止还没有json支持hdfs接收器和jdbc接收器连接器(我不想用avro编写),创建模式对于复杂的嵌套消息也很痛苦。

或者我应该写自定义卡夫卡连接来做这件事。

那么,我是应该写卡夫卡消费者,还是卡夫卡流还是卡夫卡连接,你需要你的意见吗?什么东西在性能上会更好,开销更少呢?

EN

回答 2

Stack Overflow用户

发布于 2018-09-30 07:27:59

您可以使用它们的组合。

我尝试过用于JSON的HDFS接收器,但无法使用org.apache.kafka.connect.json.JsonConverter

不清楚为什么不。但我想你忘了设置schemas.enabled=false了。

当我设置org.apache.kafka.connect.storage.StringConverter时,它可以工作,但它以字符串转义格式写入json对象。就像。{"name":"hello"}"{\"name\":\"hello\"}"的形式写入hdfs

是的,它将字符串-转义JSON

我想做的处理是基本的验证和很少的字段值转换。

Kafka或Consumer能够进行验证。连接可以进行简单的消息转换(SMT)。

有些用例中,您需要将数据“复制”到Kafka;处理“原始”主题,使用使用者读取它,然后将其生成“已清除”的主题,您可以使用Kafka Connect将其写入数据库或文件系统。

票数 2
EN

Stack Overflow用户

发布于 2017-09-04 09:30:14

欢迎来到堆栈溢出!请拿https://stackoverflow.com/tour标签

请用精确的问题,而不是征求意见-这使网站更清楚,意见不是答案(并取决于每个人的喜好)。问“如何使用卡夫卡-与json连接”

另外,请展示一些研究成果。

低开销将是卡夫卡消费者-卡夫卡流和卡夫卡连接使用卡夫卡消费者,所以你将始终能够减少开销,但也将失去所有的好处(容忍失败,易于使用,支持等)。

首先,这取决于您的处理是什么。聚合?数?验证?然后,您可以使用kafka流进行处理,并根据您想要的格式将结果写入新的主题。

然后,您可以使用kafka连接将数据发送到数据库。您没有被迫使用avro,您可以使用其他格式的键/值,请参见

Kafka Connect HDFS Sink for JSON format using JsonConverter

Kafka Connect not outputting JSON

票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46032925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档