【问题标题】:How can I find the consumer group id of a spark structrued streaming application?如何找到 spark 结构化流应用程序的使用者组 ID?
【发布时间】:2020-04-02 00:10:49
【问题描述】:

在 Spark Streaming 编程中,我们可以通过以下配置显式分配 kafka 消费者组 id:

val kafkaParams = Map[String, Object](
  ...
  "group.id" -> "use_a_separate_group_id_for_each_stream",
  ...
)

val rdd = KafkaUtils.createRDD[String, String](sparkContext, kafkaParams, offsetRanges, PreferConsistent)

在 spark 结构化流中设置您自己的消费者组 ID 是被禁止的。

在我的程序中,我不会更改使用者组 ID,而是重用该组 ID 来查找该组已订阅的主题分区的最新偏移量。

那么有什么方法可以让我在我的 spark 应用程序中隐式使用消费者组 ID?

【问题讨论】:

    标签: apache-spark spark-structured-streaming


    【解决方案1】:

    消费者组 id 在创建 rdd 时由 Apache Spark 内部生成:

      // So that consumers in executors do not mess with any existing group id
      .set(ConsumerConfig.GROUP_ID_CONFIG, s"$uniqueGroupId-executor")
    

    您可以查看KafkaSourceProvider.scala 以查看正在生成的内容。我不建议更改它,但可能会顺流到其他静态消费者组

    【讨论】:

    • 谢谢。我将检查该类以查看嵌入式消费者组是如何生成的。不是很有必要,目前我创建了另一个消费者来获取有关我关注的主题的信息。
    • 如果这回答了您的问题,请将其标记为回答有帮助。
    • 好的。我已将此答案标记为有用,但有以下反馈:“感谢您的反馈!声望低于 15 人的投票将被记录,但不要更改公开显示的帖子分数”
    猜你喜欢
    • 2021-02-09
    • 2020-07-08
    • 2019-08-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-01
    • 2019-04-01
    • 2018-11-14
    相关资源
    最近更新 更多