Hadoop Mapreduce 让 addInputPath 使用特定文件名
Hadoop Map Reduce let addInputPath work with spesific file name
嘿,这更像是一个 java 问题,但它与 Hadoop 相关。
我的 Map Reduce java 作业中有这行代码:
JobConf conf= new JobConf(WordCount.class);
conf.setJobName("Word Count");
.............
.............
.............
FileInputFormat.addInputPath(conf, new Path(args[0]));
而不是 "giving" 一个包含许多文件的目录,我该如何设置特定的文件名?
如果您只想对一个文件执行 map-reduce 操作,一种快速简便的解决方法是将该文件单独移动到一个文件夹中,然后将该文件夹的路径提供给您的 addInputPath。
如果您尝试为每个地图任务读取整个文件,那么我建议您看一下这个 post:
Reading file as single record in hadoop
你到底想做什么?
我会 post 编辑它作为评论,但显然我没有足够的权限...
来自书本"Hadoop: The Definitive Guide":
An input path is specified by calling the static addInputPath() method
on FileInputFormat, and it can be a single file, a directory (in which
case the input forms all the files in that directory), or a file
pattern. As the name suggests, addInputPath() can be called more than
once to use input from multiple paths.
所以为了回答你的问题,你应该能够只传递一个路径到你的特定的单个文件,它将被用作唯一的输入(只要你不做更多的 addInputPath() 调用其他一些路径)。
嘿,这更像是一个 java 问题,但它与 Hadoop 相关。
我的 Map Reduce java 作业中有这行代码:
JobConf conf= new JobConf(WordCount.class);
conf.setJobName("Word Count");
.............
.............
.............
FileInputFormat.addInputPath(conf, new Path(args[0]));
而不是 "giving" 一个包含许多文件的目录,我该如何设置特定的文件名?
如果您只想对一个文件执行 map-reduce 操作,一种快速简便的解决方法是将该文件单独移动到一个文件夹中,然后将该文件夹的路径提供给您的 addInputPath。
如果您尝试为每个地图任务读取整个文件,那么我建议您看一下这个 post: Reading file as single record in hadoop
你到底想做什么?
我会 post 编辑它作为评论,但显然我没有足够的权限...
来自书本"Hadoop: The Definitive Guide":
An input path is specified by calling the static addInputPath() method on FileInputFormat, and it can be a single file, a directory (in which case the input forms all the files in that directory), or a file pattern. As the name suggests, addInputPath() can be called more than once to use input from multiple paths.
所以为了回答你的问题,你应该能够只传递一个路径到你的特定的单个文件,它将被用作唯一的输入(只要你不做更多的 addInputPath() 调用其他一些路径)。