Apache Hama

редактировать
Apache Hama
Логотип Hama
Разработчик Apache Software Foundation
Предварительный выпуск 0.7.1 / 14 марта 2016 г.; 4 года назад (2016-03-14)
Репозиторий Репозиторий Хама
Написано наJava
Операционная система Кросс-платформенная
Тип Распределенные вычисления, массовая синхронная параллельная
Лицензия Лицензия Apache 2.0
Веб-сайтhama.apache.org

Apache Hama - это среда распределенных вычислений на основе по методам массовых синхронных параллельных вычислений для массовых научных вычислений, например, матричных, графических и сетевых алгоритмов. Это проект верхнего уровня в рамках Apache Software Foundation. Он был создан Эдвардом Дж. Юном, который назвал его (сокращение от «Hadoop Matrix») и был вдохновлен платформой для крупномасштабных графических вычислений Pregel от Google, описанной в 2010 году. Хама также означает hippopotamus на корейском языке (하마), следуя тенденции называть проекты Apache именами животных и зоологии (например, Apache Pig ).

Содержание
  • 1 Архитектура
    • 1.1 BSPMaster
    • 1.2 GroomServer
    • 1.3 Zookeeper
  • 2 См. Также
  • 3 Ссылки
  • 4 Внешние ссылки
Архитектура

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

BSPMaster

BSPMaster отвечает за:

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

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

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

GroomServer

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

Zookeeper

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

См. Также
  • значок Портал компьютерного программирования
Ссылки
Внешние ссылки
Последняя правка сделана 2021-06-11 20:10:30
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте