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

需求如下:

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

方案:

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

String id = ((FileSplit) context.getInputSplit()).getPath().getName();

 

猜你喜欢

转载自snv.iteye.com/blog/1820035