Как запустить задание MapReduceIndexerTool из Java? - PullRequest
0 голосов
/ 31 мая 2018

Я хочу запустить MapReduceIndexerTool из Java.

Сейчас я делаю это из командной строки, используя hadoop jar, как вы можете видеть здесь , но я хочу проверить его состояние (чтобы увидеть, завершено ли оно, выполняется и т. Д.)из кода Java.

Итак, в основном я хочу запустить его из Java , чтобы иметь возможность проверить его состояние из Java.Есть ли способ запустить его из командной строки и проверить его состояние из Java?

Также есть способ заставить Map Reduce отправлять событие (например, при обратном вызове)когда работа завершена?Что-то вроде веб-крючка?

1 Ответ

0 голосов
/ 03 июня 2018

Насколько я знаю, интерфейс инструмента предоставляет только метод int run(String[] args), поэтому в общем случае вы должны создать новый экземпляр, сформировать правильную строку аргумента и вызвать этот метод.

С другой стороны, MapReduceIndexerTool имеет int run(Options options) метод, который можно использовать для его запуска без формирования аргумента в стиле оболочки.Однако этот метод защищен, поэтому для его создания необходимо создать вызывающий класс в том же пакете, что и MapReduceIndexerTool.

...