尽管我经常在我的Ubuntu机器上使用Hadoop,但我从来没有考虑过SUCCESS
和part-r-00000
文件。输出总是驻留在part-r-00000
文件中,但是SUCCESS
文件有什么用呢?为什么输出文件的名称是part-r-0000
?是否有任何意义/命名法,或者这只是一个随机定义的?
发布于 2012-05-20 00:14:32
请参阅http://www.cloudera.com/blog/2010/08/what%E2%80%99s-new-in-apache-hadoop-0-21/
在作业成功完成后,MapReduce运行时将在输出目录中创建一个_SUCCESS文件。对于只需要通过检查HDFS来查看结果集是否完整的应用程序来说,这可能很有用。(MAPREDUCE-947)
这通常由作业调度系统(如OOZIE)使用,以表示当所有数据都已输出时,可以开始对此目录内容的后续处理。
更新(回复评论)
输出文件默认命名为part-x-yyyyy,其中:
x
为'm‘或'r',这取决于作业是仅地图作业,还是reduceyyyyy
是地图程序或reducer任务编号(从零开始)因此,一个有32个reducer的作业将有名为part-r-00000到part-r-00031的文件,每个文件对应一个reducer任务。
https://stackoverflow.com/questions/10666488
复制相似问题