【问题标题】:Spark job-server release memorySpark 作业服务器释放内存
【发布时间】:2016-12-15 12:30:01
【问题描述】:

我已在独立模式下设置了 spark 作业服务器(请参阅 https://github.com/spark-jobserver/spark-jobserver/tree/jobserver-0.6.2-spark-1.6.1)。

我创建了一个要使用的默认上下文。目前我在这方面有两种工作:

  • 与另一台服务器同步:
    • 从其他服务器的数据库中转储数据;
    • 执行一些连接,减少数据,生成新的 DF;
    • 将获取的DF保存在parquet文件中;
    • 将此 parquet 文件加载为临时表并缓存它;
  • 查询:对缓存表执行 sql 查询。

我保留的唯一对象是最终将被缓存的表。

我不明白为什么当我执行同步时,所有分配的内存都被使用并且从未释放,但是,如果我直接加载 parquet 文件(重新启动服务器,使用生成的 parquet 文件以前),只使用了一小部分内存。

我错过了什么?有没有办法释放未使用的内存?

谢谢

【问题讨论】:

    标签: memory apache-spark spark-jobserver


    【解决方案1】:

    您可以通过取消持久化缓存表来释放内存:yourTable.unpersist()

    【讨论】:

      猜你喜欢
      • 2016-04-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多