我有一个主题,名称为topic_1,并创建了4个分区。我需要在Kafka Spark Stream中并行阅读。所以我需要建立一个消费者群体和一个消费者。
您能帮我怎么做吗?
就目前的Kafka火花流而言,一次是来自Kafka的一个请求。
答案 0 :(得分:1)
假设您使用的是Spark中的KafkaUtils,它将自动利用Spark执行器的数量*每个执行器的核心数。
因此,如果您有2个Spark Executor,每个Executor具有2个核心,Spark将自动并行使用4个主题分区。
在Kafka Spark Streaming集成中,输入任务的数量由主题中的分区数量确定。如果您的主题有4个分区,Spark Streaming将为每个批次生成4个任务。
如果您有1个具有1个Core的Executor,则Core将依次执行4个任务(无并行运算)。而如果您有2个执行器,每个执行器具有1个核心,那么每个核心将依次执行2个任务(因此并行度为2)。
对于4个分区,您应该配置以下任何一项,以实现最大的使用者并行度: