我在树中的某些HDFS目录中有几个JSON文件(以.gz格式压缩):
/master/dir1/file1.gz
/dir2/file2.gz
/dir3/file3.gz
...
我需要从路径/ master /中读取这些文件,并使用Java中的Spark将它们加入到RDD中。我该怎么办?
最佳答案
[编辑]
如果
JavaRDD<String> textFile = sc.textFile("hdfs://master/dir*/file*");
不起作用,另一种方法是列出文件并合并
fileSystem.listStatus(new Path("hdfs://master/dir*"))
.filter(d -> d.isDirectory())
.map(p -> sc.textFile(p.getPath()))
.reduce((a, b) -> a.unionAll(b))
关于java - 使用Spark从Hadoop读取JSON文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36937682/