На рисунке показаны Pig
и Hive
поверх MapReduce
. Это связано с тем, что MapReduce
- это механизм распределенных вычислений, который используется Pig
и Hive
. Pig
и Hive
запросы выполняются как MapReduce
задания. С Pig
и Hive
легче работать, поскольку они дают абстракцию более высокого уровня для работы с MapReduce
.
Теперь давайте взглянем на Spark
/ Storm
/ Flink
на YARN
на картинке. YARN
- это менеджер кластеров, который позволяет запускать различные приложения поверх него. Storm
, Spark
и Flink
- все это примеры приложений, которые могут работать поверх YARN
. MapReduce
также рассматривается как приложение, которое может работать на YARN
, как показано на схеме. YARN
обрабатывает часть управления ресурсами, чтобы несколько приложений могли использовать один кластер. (Если вас интересует другой пример подобной технологии, проверьте Mesos
).
Наконец, внизу картинки есть HDFS
. Это распределенный уровень хранения, который позволяет приложениям хранить и получать доступ к данным. Он обеспечивает такие функции, как распределенное хранение, репликация и отказоустойчивость.
Если вы заинтересованы в более глубоких погружениях, посетите страницу Apache Projects .