Apache Hama - Apache Hama

Apache Hama это распределенная вычислительная среда, основанная на объемная синхронная параллель вычислительные методы для массовых научных вычислений, например, матричные, графические и сетевые алгоритмы.[1] Это проект верхнего уровня в рамках Фонд программного обеспечения Apache. Он был создан Эдвардом Дж. Юном,[2] назвал его (сокращенно от «Hadoop Matrix») и вдохновился Google Платформа Pregel для крупномасштабных графовых вычислений, описанная в 2010 году.[3] Хама также означает бегемот на корейском языке (하마),[4] следуя тенденции называть проекты Apache именами животных и зоологии (например, Апачская свинья ).

Архитектура

Hama состоит из трех основных компонентов: BSPMaster, GroomServers и Zookeeper.[5]

BSPMaster

BSPMaster несет ответственность за:

  • Поддержание статуса сервера groom
  • Управление супершагами в кластере
  • Ведение информации о ходе работы
  • Планирование заданий и назначение задач серверам очистки
  • Распространение класса выполнения по серверам подготовки
  • Контроль неисправности
  • Предоставление пользователям интерфейса управления кластером.

Мастер BSP и несколько грумов запускаются сценарием. Затем мастер bsp запускает сервер RPC для серверов очистки. Серверы Groom запускаются с экземпляром BSPPeer и прокси RPC для связи с мастером bsp. После запуска каждый groom периодически отправляет контрольное сообщение, в котором указывается состояние его сервера groom, включая максимальную емкость задачи, неиспользуемую память и так далее.

Каждый раз, когда мастер BSP получает контрольное сообщение, он обновляет статус сервера groom - мастер bsp использует статус серверов groom, чтобы эффективно назначать задачи незанятым серверам groom - и возвращает ответ пульса, который содержит назначенные задачи и другие действия, которые должен выполнять обслуживающий сервер. На данный момент у нас есть планировщик заданий FIFO и очень простые алгоритмы назначения задач.

GroomServer

Сервер очистки (сокращенно groom) - это процесс, который выполняет задачи BSP, назначенные BSPMaster. Каждый клиент связывается с BSPMaster, и он берет на себя поставленные задачи и сообщает о своем статусе с помощью периодических совмещений с BSPMaster. Каждый groom разработан для работы с HDFS или другими распределенными хранилищами. По сути, сервер очистки и узел данных должны работать на одном физическом узле.

Работник зоопарка

Zookeeper используется для управления эффективной барьерной синхронизацией BSPPeers.

Смотрите также

Рекомендации

  1. ^ «Апач Хама». Веб-сайт проекта. Получено 20 сентября, 2013.
  2. ^ Предложение Apache Hama
  3. ^ Гжегож Малевич; Мэтью Х. Остерн; Аарт Дж. К. Бик; Джеймс К. Денерт; Илан Хорн; Нати Лейзер; Гжегож Чайковский (2010). «Pregel: система для обработки крупномасштабных графиков». Материалы Международной конференции по управлению данными ACM SIGMOD 2010 г.. С. 135–146. Дои:10.1145/1807167.1807184. ISBN  9781450300322.
  4. ^ "하마 - 위키 낱말 사전". ko.wiktionary.org (на корейском). Получено 2019-02-21.
  5. ^ Архитектура Apache Hama

внешняя ссылка