Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
就此而言,我是 Hadoop 和 Java 的新手。我正在尝试从我正在编写的 MapReduce 驱动程序中计算 HDFS 上文件夹中的文件数。我想在不调用 HDFS Shell 的情况下执行此操作,因为我希望能够传入我在运行 MapReduce 作业时使用的目录。我尝试了很多方法,但由于我对 Java 的经验不足,都没有成功。
任何帮助将不胜感激。
谢谢,
游牧民族。
您可以只使用 FileSystem 并遍历路径内的文件。这是一些示例代码
int count = 0; FileSystem fs = FileSystem.get(getConf()); boolean recursive = false; RemoteIterator<LocatedFileStatus> ri = fs.listFiles(new Path("hdfs://my/path"), recursive); while (ri.hasNext()){ count++; ri.next(); }