Мне нужно разобрать файлы PDF, которые находятся в HDFS, в программе уменьшения карты в Hadoop. Поэтому я получаю PDF-файл от HDFS как . Входные делители и его нужно разобрать и отправить в класс Mapper. Для реализации этого InputFormat я прошел через этот link. Как можно разбить эти входные расщепления и преобразовать их в текстовый формат?Разбор PDF-файлов в Hadoop Map Уменьшить
ответ
Обработка PDF-файлов в Hadoop может быть произведена путем расширения FileInputFormat Класс. Пусть класс, расширяющий его, будет WholeFileInputFormat. В классе WholeFileInputFormat вы переопределяете метод getRecordReader(). Теперь каждый PDF будет получен как Индивидуальный входной сплит. Тогда эти отдельные расщепления могут быть проанализированы для извлечения текста. Это link дает ясный пример понимания того, как расширить FileInputFormat.
Это зависит от ваших расколов. Я думаю (может быть неправильно), что вам понадобится каждый PDF в целом, чтобы его разобрать. Для этого есть Java-библиотеки, и Google знает, где они.
Учитывая, что вам нужно будет использовать подход, в котором у вас есть файл в целом, когда вы будете готовы его проанализировать. Предполагая, что вы захотите сделать это в картографе, вам понадобится читатель, который передал бы целые файлы картографу. Вы могли бы написать своего собственного читателя, чтобы сделать это, или, возможно, там уже есть. Вы могли бы создать читатель, который сканирует каталог PDF-файлов и передает имя каждого файла в качестве ключа в картограф, а содержимое - как значение.
Реализация формата WholeFileInput вместо формата CombileFileInput решает проблему. Таким образом, в формате WholeFileInput каждый файл PDF будет приниматься как единый входной раскол. Тогда эти входные расщепления могут быть полностью проанализированы. – WR10
Также, пытаясь разобрать весь файл в виде одного раскола, не будет ли размер файла, который будет считаться, узким местом? Рассмотрите файл TB по размеру, и если есть один файл, он должен быть проанализирован принудительно на одной машине. как мы преодолеем это узкое место? – WR10
Ну, сначала выясните, действительно ли это так, что вам нужен PDF в целом, чтобы разобрать его. Если нет, это устраняет проблему. Предполагая, что вы не можете разбить его, я думаю, вам нужно передать имена файлов в виде разделов и прочитать прямо из HDFS в вашем картографе. –
- 1. hadoop - map/уменьшить функциональность
- 2. Hadoop Map Уменьшить: Алгоритмы
- 3. Hadoop Map Уменьшить CustomRecordReader
- 4. Hadoop Map Уменьшить CustomRecordReader Уменьшить фазу
- 5. hadoop map уменьшить вторичную сортировку
- 6. Вход TSV в Hadoop Map Уменьшить
- 7. Hadoop Map/Уменьшить с помощью базы данных
- 8. Как Hadoop Map Уменьшить весь файл
- 9. Hadoop map уменьшить - доступ к отсутствующим данным
- 10. process small file map уменьшить hadoop
- 11. Hadoop map уменьшить hipi.mapreduce.BinaryOutputFormat не найден
- 12. Hadoop map уменьшить формат ввода всего файла
- 13. HADOOP - Извлечение JSON From Map Уменьшить работу
- 14. hadoop map уменьшить принятие навсегда для завершения
- 15. Как Hadoop Map и уменьшить рамки
- 16. Почему Spark быстрее, чем Hadoop Map Уменьшить
- 17. Hadoop map уменьшить всегда записывать одинаковые значения
- 18. Как написать несколько файлов в mapper в Hadoop map/уменьшить?
- 19. map уменьшить количество слов пример
- 20. Чтение данных формата avro в hadoop/map уменьшить
- 21. map уменьшить программу для реализации структуры данных в каркасе hadoop
- 22. В eclipse Map/Уменьшить местоположение, новое местоположение Hadoop не отвечает?
- 23. hadoop map уменьшить работу в ожидании слишком долго
- 24. Настроить формат ввода в hadoop и map уменьшить
- 25. Hadoop map/reduce chaining
- 26. Lauching map уменьшить работу в эластичной карте amazon уменьшить
- 27. Разбор XML-файлов в Hadoop
- 28. Hadoop Map Уменьшить рамки для анализа больших данных
- 29. Hadoop Map Уменьшить запросы для больших ключевых пространств
- 30. Cassandra Hadoop map уменьшить с широкими рядами игнорирует предикат среза
Этот ответ может быть частью того, что вы ищете: http://stackoverflow.com/a/9298965/698839 –