UniversalRecommender在训练时不使用所有可用的核心

时间:2016-11-11 17:44:19

标签: scala apache-spark predictionio

我正在使用UR和我想知道,为什么在训练期间大部分时间只使用4个核心,当8个可用时

大多数时间训练都停留在Job 17"在EsSpark.scala:60" Stage45" atB.scala的flatMap:234"

有人可以解释它在这个阶段究竟做了什么,它可以使用所有8个核心(不仅仅是4个)吗?

我想,它没有足够的RAM,因为它使用了所有可用的64 G RAM, 但是当我在一组火花(2个实例)上运行时,情况不会改变,它总共使用4个核心。

cpu usage

1 个答案:

答案 0 :(得分:0)

问题是,预测IO使用TableInputFormatBase,默认情况下使RDD具有分区数= hbase中的#region

因此,为了增加RDD的分区数,可以在hbase中拆分区域或使用RDD.partition(#of partitions)