Методы вывода списка файлов в HDFS с примерами кода

Чтобы составить список файлов в HDFS (распределенной файловой системе Hadoop), вы можете использовать различные методы в зависимости от вашего языка программирования и используемого API Hadoop. Вот несколько примеров на разных языках программирования:

  1. Java:

    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.FileStatus;
    import org.apache.hadoop.fs.Path;
    public class HdfsListFiles {
    public static void main(String[] args) throws Exception {
        Configuration conf = new Configuration();
        FileSystem fs = FileSystem.get(conf);
    
        Path path = new Path("/path/to/directory");  // Specify the directory path in HDFS
    
        FileStatus[] fileStatuses = fs.listStatus(path);
    
        for (FileStatus fileStatus : fileStatuses) {
            System.out.println(fileStatus.getPath());
        }
    
        fs.close();
    }
    }
  2. Python (PySpark):

    from pyspark.sql import SparkSession
    spark = SparkSession.builder \
    .appName("HDFS List Files") \
    .getOrCreate()
    hadoop_conf = spark._jsc.hadoopConfiguration()
    fs = spark._jvm.org.apache.hadoop.fs.FileSystem.get(hadoop_conf)
    path = spark._jvm.org.apache.hadoop.fs.Path("/path/to/directory")  # Specify the directory path in HDFS
    file_status = fs.listStatus(path)
    for status in file_status:
    print(status.getPath())
    spark.stop()
  3. Интерфейс командной строки (CLI):
    Вы также можете использовать интерфейс командной строки для вывода списка файлов в HDFS. Откройте терминал и выполните следующую команду:

    hdfs dfs -ls /path/to/directory

Эта команда выведет список файлов и каталогов в указанном каталоге HDFS.