Архитектура Apache Tika и узлы обработки - PullRequest
0 голосов
/ 26 июня 2019

Я только начал изучать Apache Tika. Я хочу проверить, как работают процессы Apache Tika.

Я пытался запустить Tika на отдельной машине, но хотел знать, как она работает в среде Cloudera Cluster в реальном времени.

Пример. У меня есть PDF-файл на 200 страниц, и я использую Tika для извлечения текста или функций. Будет ли Тика выполнять этот процесс, используя один узел (т.е. рассматривая один файл как один блок), или он будет выполняться с использованием нескольких узлов?

Я просто сравниваю процесс Tika с Mapreduce и узнаю, обрабатывает ли Tika файл блок за блоком.

Пожалуйста, помогите мне понять этот фон процессов.

У меня нет сейчас кода со мной.

Пожалуйста, помогите мне понять, что фоновые процессы работают с точки зрения узлов.

1 Ответ

1 голос
/ 26 июня 2019

Я хочу проверить, как работают фоновые процессы apache tika.

Apache Tika использует абстракцию TikaInputStream поверх класса InputStream Java. Что означает, что читает файлы как поток байтов. Никаких блоков, ничего необычного на низком уровне!

Я пытался запустить Tika на отдельной машине, но хотел знать, как она работает в среде Cloudera Cluster в реальном времени.

Пример: у меня есть PDF-файл на 200 страниц, и я использую Tika для извлечения текст или особенности. Будет ли Тика выполнять этот процесс, используя один узел (т.е. рассматривая один файл как один блок) или он будет выполнен с использованием несколько узлов?

Я просто сравниваю процесс Тика с Mapreduce и узнаю, что Тика тоже обработка блока файла блоком.

Поскольку вы упомянули Map-Reduce конкретно, поведение использования Apache Tika на кластере CDH можно найти здесь . По сути, на CDH ваше приложение MR будет считывать файлы из HDFS (используя методологию блоков) и обрабатывать разделение с использованием библиотек Apache Tika, как вы делаете это в автономном режиме. Обратите внимание, что обработка будет разделена на основе входных разделений (базовых блоков HDFS). Рабочий пример можно найти здесь: https://github.com/ppruski/tika-hadoop-mapreduce

Таким образом, вы определенно можете использовать кластер CDH для достижения эффективности параллельной обработки, поскольку MR или Spark используют одинаковую методологию для вычисления входных разбиений.

...