Apache spark Spark流媒体作业保持内存增长
我在单机模式下运行spark v 1.6.1,具有64GB RAM和16核 我已经创建了五个工作者实例来创建五个执行器,因为在独立模式下,一个工作者节点中不能有多个执行器 配置: SPARK_WORKER_实例5 火花塞-工人-核心1 SPARK\u MASTER\u OPTS“-Dspark.deploy.default.Cores=5” 所有其他配置在Apache spark Spark流媒体作业保持内存增长,apache-spark,memory-leaks,spark-streaming,Apache Spark,Memory Leaks,Spark Streaming,我在单机模式下运行spark v 1.6.1,具有64GB RAM和16核 我已经创建了五个工作者实例来创建五个执行器,因为在独立模式下,一个工作者节点中不能有多个执行器 配置: SPARK_WORKER_实例5 火花塞-工人-核心1 SPARK\u MASTER\u OPTS“-Dspark.deploy.default.Cores=5” 所有其他配置在spark_env.sh 我正在以1分钟的间隔运行spark streaming direct kafka作业,该作业从kafka获取数据,并
spark_env.sh
我正在以1分钟的间隔运行spark streaming direct kafka作业,该作业从kafka获取数据,并在聚合后将数据写入mongo
问题:
当我启动主进程和从进程时,它会启动一个主进程和五个工作进程。每个进程只消耗约212MB的ram。当我提交作业时,它会再次创建5个执行进程和1个作业进程,而且内存使用总量会增长到8GB,并且在没有数据处理的情况下也会随时间(缓慢)增长
我们将在最后取消持久化缓存的rdd,并将spark.cleaner.ttl
设置为600。但记忆仍在增长
还有一件事,我已经看到了合并的SPARK-1706,这也是为什么我无法在一个工作进程中创建多个执行器。此外,在SPARK_env.sh
文件中,设置与执行器相关的任何配置都处于仅纱线模式
任何帮助都将不胜感激
谢谢嗨,你明白了吗?