Hadoop Mahout-单减速器

Hadoop Mahout-单减速器,hadoop,mahout,Hadoop,Mahout,我已经运行seq2sparse作业很多天了,但它就是没有完成。主要原因是大多数“子作业”只有一个减速器,而每个作业都有许多映射器 我在从命令行调用seq2sparse时指定了--numReducers=n,但该属性仅用于某些位置,如MakePartialVectors,而不用于Prune Vectors等子作业 原因可能是什么?我查看了代码,发现numReducers变量并没有传递给所有子作业,因此这些作业是使用默认的reduce容量创建的,即1 要绕过此限制,只需指定变量-Dmapred.re

我已经运行seq2sparse作业很多天了,但它就是没有完成。主要原因是大多数“子作业”只有一个减速器,而每个作业都有许多映射器

我在从命令行调用seq2sparse时指定了--numReducers=n,但该属性仅用于某些位置,如
MakePartialVectors
,而不用于
Prune Vectors
等子作业


原因可能是什么?

我查看了代码,发现
numReducers
变量并没有传递给所有子作业,因此这些作业是使用默认的reduce容量创建的,即1

要绕过此限制,只需指定变量
-Dmapred.reduce.tasks=n
,同时从命令行调用作业以及
--numReducers=n
参数

还需要指定
numReducers
,因为默认情况下,Mahout CLI将其视为一个

因此,命令的一个例子是


/mahout seq2sparse-Dmapred.reduce.tasks=10-i seq files-o vectors-nv-wt tfidf-ng 2--numReducers 10--maxDFPercent 90--minDF 2--norm 2--minLLR 20
我查看了代码,意识到
numReducers
变量并没有传递给所有子作业,因此这些作业是使用默认值创建的减少容量,即1

要绕过此限制,只需指定变量
-Dmapred.reduce.tasks=n
,同时从命令行调用作业以及
--numReducers=n
参数

还需要指定
numReducers
,因为默认情况下,Mahout CLI将其视为一个

因此,命令的一个例子是

/mahout seq2sparse-Dmapred.reduce.tasks=10-i seq files-o vectors-nv-wt tfidf-ng 2--numReducers 10--maxDFPercent 90--minDF 2--norm 2--minLLR 20