Я пытаюсь добавить несколько файлов в распределенный кеш Hadoop. На самом деле я не знаю названия файлов. Они будут называться как part-0000*
. Может ли кто-нибудь сказать мне, как это сделать?
Спасибо, Бала.
Я пытаюсь добавить несколько файлов в распределенный кеш Hadoop. На самом деле я не знаю названия файлов. Они будут называться как part-0000*
. Может ли кто-нибудь сказать мне, как это сделать?
Спасибо, Бала.
Вы можете использовать команду hadoop -put или -copyFromLocal:
hadoop fs -copyFromLocal /home/hadoop/outgoing/* /your/hadoop/dir
Я решил эту проблему, хотя, возможно, немного поздно:
FileSystem fs = directoryPath.getFileSystem(getConf());
FileStatus[] fileStatus = fs.listStatus(directoryPath);
for (FileStatus status : fileStatus) {
DistributedCache.addFileToClassPath(status.getPath(), conf);
}
Это то, что вы хотели сделать?
Ничто не мешает вам программно получить список файлов, если они все находятся в одном каталоге, и добавить их по одному, верно? Или ваш случай другой?