我对 Spark Streaming 很陌生。我有一些基本的疑问。有人可以帮我澄清一下吗:
我的消息大小是标准的。每条消息 1Kb。
主题分区数为 30,并使用 dstream 方法从 kafka 消费消息。
为 spark 作业分配的核心数为:
(spark.max.cores=6|spark.executor.cores=2)
据我了解,Kafka 分区数 = RDD 分区数:
In this case dstream approach: dstream.forEachRdd(rdd->{ rdd.forEachPartition{ } **Question**:This loop forEachPartiton will execute 30 times??As there are 30 Kafka partitions
}
另外由于我给了 6 个核心,从 kafka 将并行消耗多少个分区
问题:一次是6个分区还是一次
30/6 = 5个分区?有人可以详细说明这在 dstream 方法中是如何工作的。