Приложение mapreduce, которое имеет только 17000+ заданий карты, работает очень медленно на пряже после завершения 16000+ карт - PullRequest
0 голосов
/ 12 сентября 2018

Я использую простой sql (выберите xx, xx ... из viewXXX, где xxxxx), используя hive0.13.1 на hadoop2.6.0 (инфраструктура MRv2, а не tez).После отправки я обнаружил, что это MR-задание, которое имеет только 17000+ задач сопоставления и не содержит задач сокращения.

Задание выполняется очень быстро в первые 15 минут (все 400+ контейнеров в моем кластере (20+узлы) выделяются для выполнения задач в течение этого периода), но после этого становятся очень медленными (другие задания не выполняются в моем кластере).

Я запускаю его пару раз и обнаруживаю, что количество контейнеров, выделенных для задания, уменьшается (не строго, а примерно) с течением времени, и примерно через 15 минут количество контейнеров, выделенных для заданиястановится 1 (который является контейнером ApplicationMaster)!Затем AM всегда ждет, пока RM предоставит ему контейнер для запуска задачи карты.RM не занят (не много GC) и имеет много доступных контейнеров (я нахожу это в журнале RM), но он назначает AM 1 контейнер в МИНУТУ.Таким образом, работа, наконец, занимает 7 часов .:(

Любая помощь будет оценена!

...