ListFiles из кластера HDFS

Я любитель с хаупом и прочим. Теперь я пытаюсь получить доступ к кластеру Hadoop (HDFS )и получить список файлов из клиентского eclipse. Я могу выполнить следующие операции после настройки необходимых конфигураций на Java-клиенте Hadoop.

Я могу выполнять операции copyFromLocalFile , copyToLocalFile для доступа к HDFS от клиента. Вот с чем я сталкиваюсь. Когда я даю метод listFiles (), я получаю

org.apache.hadoop.fs.LocatedFileStatus@d0085360
org.apache.hadoop.fs.LocatedFileStatus@b7aa29bf

Основной метод

Properties props = new Properties();
props.setProperty("fs.defaultFS", "hdfs://<IPOFCLUSTER>:8020");
props.setProperty("mapreduce.jobtracker.address", "<IPOFCLUSTER>:8032");
props.setProperty("yarn.resourcemanager.address", "<IPOFCLUSTER>:8032");
props.setProperty("mapreduce.framework.name", "yarn");
FileSystem fs = FileSystem.get(toConfiguration(props)); // Setting up the required configurations
Path p4 = new Path("/user/myusername/inputjson1/");
RemoteIterator<LocatedFileStatus> ritr = fs.listFiles(p4, true);
while(ritr.hasNext())
        {
            System.out.println(ritr.next().toString());
        }

Я также пробовал FileContext и в итоге получил только строку объекта filestatus или что-то в этом роде. Есть ли возможность брать имена файлов, когда я перехожу к удаленному каталогу hdfs, есть метод getPath (). Это единственный способ, которым мы можем получить полный путь к именам файлов, используя API-интерфейс hadoop, или есть какие-либо другие метод, чтобы я мог получить только имя файлов в указанном пути к каталогу, пожалуйста, помогите мне в этом, спасибо.

5
задан Logan 9 July 2012 в 11:16
поделиться