【问题标题】:How can I get the file path for data shard in the Mapper of a Mapreduce job?如何在 Mapreduce 作业的 Mapper 中获取数据分片的文件路径?
【发布时间】:2019-03-23 22:20:00
【问题描述】:

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

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

在作业的映射阶段,我想找出数据分片的确切来源(例如 CaseA)。我怎样才能做到这一点?

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

【问题讨论】:

    标签: java mapreduce hadoop2


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-21
      • 1970-01-01
      • 2011-12-25
      • 1970-01-01
      • 1970-01-01
      • 2013-01-06
      • 2011-03-09
      相关资源
      最近更新 更多