Apache spark 卡夫卡火花流式cpu使用率随时间不断增加

Apache spark 卡夫卡火花流式cpu使用率随时间不断增加,apache-spark,Apache Spark,我正在用spark传输卡夫卡主题,但当程序启动时,它占用了高达10%的cpu使用率,但几个小时后,它会占用150%的cpu(2个内核)。 我的spark配置: val conf = new SparkConf(true) .setMaster("local[*]") .setAppName("Matix Processor") .set("spark.streaming.unpersist","true") .set("spark.cleaner.ttl","12

我正在用spark传输卡夫卡主题,但当程序启动时,它占用了高达10%的cpu使用率,但几个小时后,它会占用150%的cpu(2个内核)。 我的spark配置:

val conf = new SparkConf(true)
    .setMaster("local[*]")
    .setAppName("Matix Processor")
    .set("spark.streaming.unpersist","true")
    .set("spark.cleaner.ttl","125")
卡夫卡河:

val stream = KafkaUtils.createStream[String, String, StringDecoder, StringDecoder](
    streamingContext, parameters, topics, StorageLevel.MEMORY_AND_DISK)
请有人告诉我我错过了什么。
提前感谢。

您的批处理间隔或数据速率可能太短,无法在下一批准备就绪之前处理每个批。例如,如果您有一个5秒的批处理窗口,并且处理每个批处理需要5.1秒,那么您将缓慢地备份。因此,您可能需要更多的内核或更少的数据量。您正在使用
local[*]
。你能用群集来代替吗?明白你的意思了,我的批处理间隔是1秒,但我不知道如何用群集来代替本地[*]?第一次使用spark时,请帮助我解决此问题。
local[*]
用于在单个服务器上运行。如果单个服务器(即使使用所有核心)无法跟上进度,您可能需要一组节点来处理数据。有关更多信息,请参阅本页:转到spark ui并检查“流”选项卡。您的流媒体
总时间