【发布时间】: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