Spark读取HDFS某个路径下的子文件夹中的所有文件

解决办法:使用*


 

验证:

在hdfs某个路径下新建两个文件夹,然后分别上传一个文件到新建好的子文件夹中

 

[user1@hdp ~]$ hdfs dfs -mkdir /tmp/test
[user1@hdp ~]$ hdfs dfs -mkdir /tmp/test/data1
[user1@hdp ~]$ hdfs dfs -mkdir /tmp/test/data2
[user1@hdp ~]$ hdfs dfs -put test1.txt /tmp/test/data1/
[user1@hdp ~]$ hdfs dfs -put test2.txt /tmp/test/data2/

 其中test1.txt的内容为

hello world
java scala
spark hadoop

 

test2.txt的内容为

shanghai nanjing
hangzhou wuhan

 

然后在spark-shell中读取

scala> spark.sparkContext.textFile("/tmp/test/*").collect()
res0: Array[String] = Array(hello world, java scala, spark hadoop, shanghai nanjing, hangzhou wuhan)

可以看到已经读取到了test两个子目录下的文件。

 

posted @ 2020-07-27 11:18  梦醒江南·Infinite  阅读(7381)  评论(0编辑  收藏  举报