首页 文章

使用Spark从Hadoop读取JSON文件

提问于
浏览
0

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

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

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

1 回答

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

相关问题