【问题标题】:What is the most simple way to write to kafka from spark stream从火花流写入kafka的最简单方法是什么
【发布时间】:2016-11-12 07:48:30
【问题描述】:

我想从 spark 流数据写入 kafka。 我知道我可以使用KafkaUtils 从kafka 读取。 但是,KafkaUtils 不提供 API 来写入 kafka。

我检查了past questionsample code

上面的示例代码是写入kafka的最简单方法吗? 如果我采用上述示例的方式,我必须创建许多类...

你知道更简单的方法或库来帮助写入 kafka 吗?

【问题讨论】:

  • 作为补充说明,我用 scala 来描述 spark 应用程序。所以,想知道可以在scala上使用的简单方法。

标签: apache-spark apache-kafka spark-streaming


【解决方案1】:

看看here:

基本上,这篇博文总结了您提供的链接中以不同变体形式编写的可能性。

如果我们直接看你的任务,我们可以做出几个假设:

  • 您的输出数据分为多个分区,这些分区可能(并且经常会)驻留在不同的机器上
  • 您希望使用标准 Kafka Producer API 将消息发送到 Kafka
  • 您不想在实际发送到 Kafka 之前在机器之间传递数据

鉴于这些假设,您的解决方案集非常有限:您是否必须为每个分区创建一个新的 Kafka 生产者并使用它来发送该分区的所有记录,或者您可以将此逻辑包装在某种工厂 / Sink 但基本操作将保持不变:您仍然会为每个分区请求一个生产者对象并使用它来发送分区记录。

我建议您继续使用提供的链接中的一个示例,代码很短,而且您找到的任何库很可能在幕后执行完全相同的操作。

【讨论】:

  • 感谢您的回复。我可以用你的建议方式从 spark 写信给 kafka。谢谢!
猜你喜欢
  • 2015-10-13
  • 2017-04-27
  • 2019-10-11
  • 2020-04-16
  • 2020-06-21
  • 1970-01-01
  • 2021-07-22
  • 2018-06-02
  • 2017-02-10
相关资源
最近更新 更多