首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何使用direct stream在Kafka Spark Streaming中指定消费群

如何使用direct stream在Kafka Spark Streaming中指定消费群
EN

Stack Overflow用户
提问于 2016-04-09 04:13:30
回答 2查看 10.9K关注 0票数 7

如何使用直播流API指定kafka spark流的消费组id。

代码语言:javascript
运行
复制
HashMap<String, String> kafkaParams = new HashMap<String, String>();
kafkaParams.put("metadata.broker.list", brokers);
kafkaParams.put("auto.offset.reset", "largest");
kafkaParams.put("group.id", "app1");

    JavaPairInputDStream<String, String> messages = KafkaUtils.createDirectStream(
            jssc, 
            String.class, 
            String.class,
            StringDecoder.class, 
            StringDecoder.class, 
            kafkaParams, 
            topicsSet
    );

虽然我已经指定了配置,但不确定是否遗漏了什么。使用spark1.3

代码语言:javascript
运行
复制
kafkaParams.put("group.id", "app1");
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-10 20:24:40

direct stream API使用低级Kafka API,因此在任何情况下都不使用消费者组。如果你想通过Spark Streaming使用消费者群体,你必须使用基于接收器的API。

Full details are available in the doc !

票数 7
EN

Stack Overflow用户

发布于 2018-09-01 17:23:57

spark-streaming-kafka-0-8中的createDirectStream不支持群组模式,因为它使用的是低级Kafka接口。

spark-streaming-kafka-0-10支持组模式。

Consumer Configs

在0.9.0.0中,我们引入了新的

消费者,作为旧的基于Scala的简单和高级消费者的替代品。新老消费者的配置如下所示。

New Consumer Configs中,它包含group.id项。

Spark Streaming integration for Kafka 0.10正在使用新的应用程序接口。https://spark.apache.org/docs/2.1.1/streaming-kafka-0-10-integration.html

针对Kafka 0.10的星火流集成在设计上类似于0.8 Direct Stream方法。它提供了简单的并行性,Kafka分区和Spark分区之间的1:1对应,以及对偏移量和元数据的访问。然而,由于较新的集成使用新的Kafka消费者API而不是简单的API,因此在使用上存在显著的差异。

我已经在spark-streaming-kafka-0-10中测试了组模式,它确实可以工作。

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

https://stackoverflow.com/questions/36508553

复制
相关文章

相似问题

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