scala - scala中的HDFS文件列表

标签 scala hadoop apache-spark hdfs

我试图在 hdfs 目录中查找文件列表,但当我尝试运行以下代码时,代码将其期望的文件作为输入。

val TestPath2="hdfs://localhost:8020/user/hdfs/QERESULTS1.csv"
val hdfs: org.apache.hadoop.fs.FileSystem = org.apache.hadoop.fs.FileSystem.get(sc.hadoopConfiguration)
      val hadoopPath = new org.apache.hadoop.fs.Path(TestPath1)
      val recursive = true
     // val ri = hdfs.listFiles(hadoopPath, recursive)()
      //println(hdfs.getChildFileSystems)
      //hdfs.get(sc

val ri=hdfs.listFiles(hadoopPath, true)
println(ri)

最佳答案

您应该首先将默认文件系统设置为hdfs://,我看起来您的默认文件系统是file://

val conf = sc.hadoopConfiguration 
conf.set("fs.defaultFS", "hdfs://some-path")

val hdfs: org.apache.hadoop.fs.FileSystem = org.apache.hadoop.fs.FileSystem.get(conf)

...

关于scala - scala中的HDFS文件列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36736954/

相关文章:

java - Gson:java.lang.StackOverflowError: null

hadoop - 如何使用Hadoop MapReduce将数据从AWS S3导入HDFS

hadoop - 为什么在 Ambari 从 1.6.0 迁移到 2.0.0 时调用 hive Metatool updatelocation 以将位置移动到不需要的地方?

scala - Spark shell : strange behavior with import

scala - 错误 :scalac: bad symbolic reference. SQLContext.class 中的签名指的是包 org.apache.spark 中的类型 Logging,该类型不可用

java - 用于Spark提交的本地或远程jar

scala 测试 - 如何 stub curry 方法

java - 其他库的 Scalaz 类型类实例汇总

scala - Scala Future 的优雅处理[任一]]

sql - “Hive” 多列的最大列值