【发布时间】:2015-03-05 19:43:00
【问题描述】:
我的 hadoop 工作需要了解每条记录的派生输入路径。
例如,假设我正在对一组 S3 对象运行作业:
s3://bucket/file1
s3://bucket/file2
s3://bucket/file3
我想减少键值对例如
s3://bucket/file1 record1
s3://bucket/file1 record2
s3://bucket/file2 record1
...
是否有org.apache.hadoop.mapreduce.InputFormat 的扩展可以实现这一点?或者有比使用自定义输入格式更好的方法吗?
我知道在映射器中可以从MapContext (How to get the input file name in the mapper in a Hadoop program?) 访问此信息,但我使用的是 Apache Crunch,我无法控制我的任何步骤是 Maps 还是 Reduces,但是我可以可靠地控制InputFormat,所以在我看来它是做这个的地方。
【问题讨论】:
标签: java hadoop apache-crunch