使用Spark从Hadoop读取JSON文件

时间:2016-04-29 11:52:07

标签: java json hadoop apache-spark

我在树中的一些HDFS目录中有几个JSON文件(压缩为.gz格式),如:

/master/dir1/file1.gz
       /dir2/file2.gz
       /dir3/file3.gz
       ...

我需要从路径/ master /中读取这些文件,并使用Spark in Java将它们连接到RDD中。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

[编辑] 如果

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))