0

我正在尝试运行 Oozie (v4.3.0) 流程,在我的一项工作中,我有多个输入和每个输入的多个映射器。这是它在 Driver 类中的样子:

MultipleInputs.addInputPath(job, new Path(args[0]), TextInputFormat.class, LeftMapper.class);
MultipleInputs.addInputPath(job, new Path(args[1]), TextInputFormat.class, RightMapper.class);

但在 Oozie workflow.xml 中,根据thisthis ,它可能看起来像:

        <property>
            <name>mapred.input.dir.mappers</name>
            <value>
                ${left};com.pge.mapreduce.join.LeftMapper,${right};com.pge.mapreduce.join.RightMapper
            </value>
        </property>
        <property>
            <name>mapred.input.dir.formats</name>
            <value>
                ${left};org.apache.hadoop.mapreduce.lib.input.TextInputFormat,${right};org.apache.hadoop.mapreduce.lib.input.TextInputFormat
            </value>
        </property>

但这对我不起作用,我收到错误

作业中未指定输入路径

UPD

job.properties

nameNode=maprfs:///
jobTracker=maprfs:///
queueName=default
examplesRoot=demo-flow
userName=mapr    
left=${nameNode}/user/${userName}/${examplesRoot}/left.csv
right=${nameNode}/user/${userName}/${examplesRoot}/right.csv
4

0 回答 0