2168575 发表于 2016-12-13 07:08:55

Hadoop在Mapper中获取当前操作文件的文件名

  需求如下:
  hadoop的MR执行时,有时候需要获取当前读取的文件名,如对qq聊天记录的分词解析,每个聊天记录的问题命名为qq1-qq2.txt用来表示qq1对qq2说的所有的聊天记录,那么当我们分词完成之后,需要入Hbase,这个时候rowkey为qq1-qq2,内容为语义分析的结果列表。

  方案:
  针对此操作需要获取当前读取的文件的路径或者直接读到文件名,从而得到文件名,实现如下:

String id = ((FileSplit) context.getInputSplit()).getPath().getName();
   
页: [1]
查看完整版本: Hadoop在Mapper中获取当前操作文件的文件名