我们有 1 kafka主题,通过在spark中使用直接流方法我们必须处理主题中存在的数据,使用一个节点R& D集群来了解Spark的行为方式。
我的机器配置为 4核心,16 GB RAM,1个执行器。
我的问题是这个作业在运行时使用了多少个核心。
在Web控制台中,它显示了4个核心。
如何在Directstream方法中使用核心?
运行作业的命令:
./ spark / bin / spark-submit --master spark://XX.XX.XX.XXX:7077 --class org.eiq.IndexingClient~ / spark / lib / IndexingClient.jar
答案 0 :(得分:0)
假设:
然后所有核心都用于计算:它们从他们想要读取的主题中检索偏移量,并且每个核心读取这些偏移量并并行处理它们。
如果您的Kafka分区少于4个,当然这会限制数据摄取的并行性,您可以相应地从Kafka读取。
更多关于Kafka直接方法的信息: https://spark.apache.org/docs/latest/streaming-kafka-integration.html#approach-2-direct-approach-no-receivers