我使用命令行实用程序创建了一个har-file:hadoop archive
。
如何阅读mapreduce或spark中的HAR文件内容?是否有可以理解HAR文件的FileInputFormat?
按照答案...这里是简单的猪脚本,以防其他人感兴趣:
A = LOAD 'har:///user/me/my.har/*.parquet'
USING parquet.pig.ParquetLoader
('key:chararray')
;
答案 0 :(得分:2)
来自Hadoop Archives and MapReduce
在MapReduce中使用Hadoop Archives就像指定与默认文件系统不同的输入文件系统一样简单。如果您在
/user/zoo/foo.har
中的HDFS中存储了hadoop存档,那么为了将此存档用于MapReduce输入,您只需将输入目录指定为har:///user/zoo/foo.har
。由于Hadoop Archives作为文件系统公开,MapReduce将能够使用Hadoop Archives中的所有逻辑输入文件作为输入。
因此,您应该可以使用任何FileInputFormat来读取相同文件的HDFS目录。