Функция
main()
в типичной программе Hadoop обычно выполняет следующие действия:
- указывает путь ввода / вывода для задания
- настраивает преобразователи / редукторы / объединители / разделители
- настраивает память
Затем он создает экземпляр интерфейса Job
, запускает его и вызывает waitForCompletion
, который блокируется до завершения задания.Этот вызов отправляет запрос приложения Yarn под капот, который порождает AppMaster где-то в кластере.
AppMaster отвечает за создание процессов Map / Reduce, отслеживание их состояния и создание отчетов о ходе выполнения.Для каждого задания, выполняемого в кластере Hadoop, существует 1 экземпляр AppMaster.