Как я могу получить путь к файлу для сегмента данных в Mapper задания Mapreduce? - PullRequest
1 голос
/ 24 марта 2019

У меня есть задание mapreduce, где путь ввода файла: /basedirectory/*/*.txt

Внутри базового каталога у меня есть разные подпапки (CaseA, CaseB и т. Д.), Каждая из которых содержит текстовые файлы hdfs.

На этапе составления карты задания я хочу выяснить, откуда именно произошел фрагмент данных (например, CaseA). Как мне этого добиться?

Я сделал нечто подобное для заданий mapreduce с более чем 1 входной таблицей hbase, где я использую context.getInputSplit (). GetTableName (), чтобы найти фактическое имя таблицы, но не уверен, что делать с входными файлами HDFS.

1 Ответ

1 голос
/ 24 марта 2019

Вы можете получить разделение ввода, используя context.getInputSplit() (где context равно mapper.context), а затем используйте метод .getPath() в inputSplit, чтобы вернуть путь к файлу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...