将减少java堆空间

h7wcgrx3  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(343)

我正在用hadoop实现一个程序。我的问题是如何处理java空间不足的问题,我在xml文件中添加了一些属性配置,但是没有成功。增加减速机的数量对我也不起作用。因为在我的程序中,每个减速机都需要一个大的稀疏整矩阵,我不能改变这个逻辑。然而,每个reducer都会收到一个以列id作为键,以列向量作为值的条目。有什么方法可以摆脱这个困境吗?
ps:我第一个想法是reducer会一列接一列,这样不会造成内存不足的问题。但似乎不是这样。实际上,我正在尝试实现一篇论文中描述的算法。减速器的算法如下所示。第11行是我提到的列,每个reducer都有矩阵的每一列。

cgh8pdjw

cgh8pdjw1#

之所以使用hadoop,是因为无法将整个数据集放入内存。要么你不改变逻辑,试图找到一台足够大的计算机,要么你并行化算法,利用hadoop。

相关问题