아파치 하마
Apache Hama![]() | |
개발자 | 아파치 소프트웨어 재단 |
---|---|
릴리스 미리 보기 | 0.7.1 / 2016년 3월 14일; 전 |
리포지토리 | 하마 저장소 |
기록 위치 | 자바 |
운영 체제 | 크로스 플랫폼 |
유형 | 분산 컴퓨팅, 대량 동기식 병렬 처리 |
면허증 | 아파치 라이선스 2.0 |
웹사이트 | hama |
Apache Hama는 매트릭스, 그래프, 네트워크 알고리즘과 같은 대규모 과학적 계산을 위한 대량 동기식 병렬 컴퓨팅 기법에 기초한 분산 컴퓨팅 프레임워크다.[1]아파치 소프트웨어 재단 산하 최상위 프로젝트였다.2020년 4월에 은퇴한 프로젝트 자원은 아파치 애티켓의 일부로 이용 가능하다.[2]에드워드 J. 윤([3]Edward J. Yoon)이 ("Hadoop Matrix"의 줄임말)이라는 이름을 붙여 만든 것으로, 2010년 설명한 구글의 프레겔 대규모 그래프 컴퓨팅 프레임워크에서 영감을 얻었다.[4]하마(Hama)는 동물과 동물학(Apache Pig 등)의 이름을 따서 아파치 프로젝트를 명명하는 트렌드를 따라 한국어(하마)로 하마(Hapopotham)를 의미하기도 한다.[5]
건축
Hama는 BSPMaster, GrammerServers, Zookeeper의 세 가지 주요 구성 요소로 구성된다.[6]
BSPMaster
BSPMaster는 다음을 담당한다.
- 그루밍 서버 상태 유지
- 클러스터의 수퍼 단계 제어
- 작업 진행률 정보 유지 관리
- 작업 예약 및 서버 정비에 태스크 할당
- 신랑 서버에 실행 클래스 배포
- 제어 결함
- 사용자에게 클러스터 제어 인터페이스 제공
BSP 마스터와 여러 신랑은 대본에 의해 시작한다.그런 다음, bsp 마스터는 RPC 서버 for gramer server로 시작한다.그루밍 서버는 BSPPeeer 인스턴스와 bsp 마스터에 접속하기 위한 RPC 프록시로 시작한다.시작 후 각 신랑은 주기적으로 최대 작업 용량, 사용되지 않은 메모리 등을 포함하여 신랑 서버 상태를 둘러싸는 하트비트 메시지를 보낸다.
BSP 마스터가 하트비트 메시지를 수신할 때마다 최신 신랑 서버 상태(bsp 마스터는 유휴 신랑 서버에 효과적으로 작업을 할당하기 위해 신랑 서버의 상태를 사용함)를 불러오고, 신랑 서버가 수행해야 하는 할당된 작업 및 기타 작업을 포함하는 하트비트 응답을 반환한다.현재로서는 FIFO 작업 스케줄러와 매우 간단한 작업 할당 알고리즘이 있다.
그루밍서버
신랑 서버(strial server, 짧게 신랑이라고 함)는 BSPMaster가 할당한 BSP 작업을 수행하는 프로세스다.각 신랑은 BSPMaster에 연락하며, 배정된 업무를 맡아 BSPMaster와 함께 주기적인 피그백(pigeback)을 통해 상태를 보고한다.각 신랑은 HDFS 또는 다른 분산 스토리지로 작동하도록 설계되었다.기본적으로, 신랑 서버와 데이터 노드는 하나의 물리적 노드에서 실행되어야 한다.
동물원 관리인
사육사는 BSPPeer의 효율적인 장벽 동기화를 관리하기 위해 사용된다.
참고 항목
참조
- ^ "Apache Hama". Project web site. Retrieved September 20, 2013.
- ^ 아파치 하마 - 아파치 다락방
- ^ 아파치 하마 제안
- ^ Grzegorz Malewicz; Matthew H. Austern; Aart J.C Bik; James C. Dehnert; Ilan Horn; Naty Leiser; Grzegorz Czajkowski (2010). "Pregel: a system for large-scale graph processing". Proceedings of the 2010 ACM SIGMOD International Conference on Management of data. pp. 135–146. doi:10.1145/1807167.1807184. ISBN 9781450300322.
- ^ "하마 - 위키낱말사전". ko.wiktionary.org (in Korean). Retrieved 2019-02-21.
- ^ 아파치 하마 건축