使用哪个FileInputFormat读取Hadoop存档文件(HAR)文件



我使用命令行实用程序hadoop archive创建了一个har文件。

如何在mapreduce或spark中读取HAR文件的内容?是否有可以理解HAR文件的FileInputFormat?


按照答案。。。这里有一个简单的猪脚本,以防其他人感兴趣:

A =     LOAD 'har:///user/me/my.har/*.parquet'  
        USING parquet.pig.ParquetLoader 
        ('key:chararray')
        ;

来自Hadoop档案和MapReduce

在MapReduce中使用Hadoop档案就像指定一个不同于默认文件系统的输入文件系统一样简单。如果您在/user/zoo/foo.har的HDFS中存储了一个hadoop归档文件,那么要将该归档文件用于MapReduce输入,您只需要将输入目录指定为har:///user/zoo/foo.har。由于Hadoop档案是作为一个文件系统公开的,MapReduce将能够使用Hadoop档案中的所有逻辑输入文件作为输入。

因此,您应该能够使用任何FileInputFormat来读取相同文件的HDFS目录。

最新更新