我已经设置了一个spark-jobserver以在精简数据集上启用复杂查询。Spark JobServer,发布的内存设置
的jobserver执行两个操作:
- 同步与主远程数据库,这使得一些服务器的表的转储,减少和聚合数据,并将结果保存为实木复合地板的文件,并将它缓存作为内存中的sql表。这项行动将每天完成;
- 查询,当同步操作完成时,用户可以对聚合数据集执行SQL复杂查询,(最终)将结果导出为csv文件。每个用户在一次只能做一个查询,并等待其完成。
最大的表格(减少之前和之后,其中还包括一些连接)有近30M的行,至少有30个字段。
其实我正在开发32GB ram专用于作业服务器的开发机器,并且一切都很顺利。问题在于,在生产环境中,我们拥有与PredictionIO服务器共享的相同数量的ram。
我在问如何确定内存配置,以避免内存泄漏或火花崩溃。
我是新来的,所以每一个参考或建议都被接受。
谢谢