如何在Mapreduce作业的Mapper中获取数据分片的文件路径?

问题描述 投票:1回答:1

我有一个mapreduce工作,文件输入路径是:/basedirectory/*/*.txt

在基本目录中,我有不同的子文件夹(CaseA,CaseB等),每个子文件夹都包含hdfs文本文件。

在作业的地图阶段,我想找出数据碎片的确切位置(例如CaseA)。我怎样才能做到这一点?

我为mapreduce作业做了类似的事情,有超过1个输入hbase表,我使用context.getInputSplit()。getTableName()来查找实际的表名但不知道如何处理HDFS输入文件。

java mapreduce hadoop2
1个回答
1
投票

您可以使用context.getInputSplit()(其中contextmapper.context)获取输入分割,然后在.getPath()上使用inputSplit方法返回文件路径。

© www.soinside.com 2019 - 2024. All rights reserved.