아파치 스톰

Apache Storm
아파치 스톰
Distributed and fault-tolerant realtime computation
분산 및 내결함성 실시간 계산
개발자백타입, 트위터
안정적 해제
2.3.0 / 2021년 9월 27일; 3개월(2021-09-27)
리포지토리스톰 리포지토리
기록 위치클루주르 & 자바
운영 체제크로스 플랫폼
유형분산된 스트림 처리
면허증아파치 라이선스 2.0
웹사이트storm.apache.org

Apache StormClojure 프로그래밍 언어로 주로 작성된 분산 스트림 처리 연산 프레임워크다. 원래 네이선 마즈와[1] 백타입 팀이 만든 이 프로젝트는 트위터가 인수한 후 오픈 소스로 진행되었다.[2][3] 그것은 맞춤형 생성 "스푸트"와 "볼트"를 사용하여 정보 출처와 조작을 정의하여 스트리밍 데이터의 일괄, 분산 처리를 허용한다. 초기 개봉일은 2011년 9월 17일이었다.[4]

스톰 어플리케이션은 그래프 정점 역할을 하는 스푸트와 볼트가 있는 방향 아세클릭 그래프(DAG) 형태의 "토폴로지"로 설계된다. 그래프의 가장자리는 명명된 스트림과 한 노드에서 다른 노드로 직접 데이터를 전송한다. 토폴로지는 함께 데이터 변환 파이프라인 역할을 한다. 피상적인 수준에서 일반적인 위상 구조는 MapReduce 작업과 유사하며, 주요 차이점은 데이터가 개별 배치와 반대로 실시간으로 처리된다는 것이다. 또한, 스톰 토폴로지는 소멸될 때까지 무기한 실행되는 반면, MapReduce 작업 DAG는 결국 종료되어야 한다.[5]

스톰은 2014년[6] 9월 아파치 최상위 프로젝트가 됐고, 앞서 2013년 9월부터 육성 이었다.[7][8]

개발

아파치 스톰은 아파치 라이선스 하에 개발되어 대부분의 기업이 사용할 수 있게 되었다.[9] Git은 Apache Incubator 프로그램에서 버전 제어와 문제 추적을 위한 Atlassian JIRA에 사용된다.

주요 릴리스[10]
버전 릴리스 날짜
2.3.0 2021년 9월 27일
2.2.0 2020년 6월 30일
2.1.0 2019년 9월 6일
1.2.3 2019년 7월 18일
2.0.0 2019년 5월 30일
1.1.4 2019년 1월 8일
1.2.2 2018년 6월 4일
1.1.3
1.0.7 2018년 5월 3일
1.2.1 2018년 2월 19일
1.2.0 2018년 2월 15일
1.1.2
1.0.6 2018년 2월 14일
1.0.5 2017년 9월 15일
1.1.1 2017년 8월 1일
1.0.4 2017년 7월 28일
1.1.0 2017년 3월 29일
1.0.3 2017년 2월 14일
0.10.2 2016년 9월 14일
0.9.7 2016년 9월 7일
1.0.2 2016년 8월 10일
1.0.1 2016년 5월 6일
0.10.1 2016년 5월 5일
1.0.0 2016년 4월 12일
0.10.0 2015년 11월 5일
0.9.6
0.9.5 2015년 6월 4일
0.9.4 2015년 3월 25일
0.9.3 2014년 11월 25일
0.9.2 2014년 6월 25일
0.9.1 2014년 2월 10일
과거 버전(아파시가 아님) 릴리스 날짜
0.9.0 2013년 12월 8일
0.8.2 2013년 1월 11일
0.8.1 2012년 9월 6일
0.8.0 2012년 8월 2일
0.7.0 2012년 2월 28일
0.6.0 2011년 12월 15일
0.5.0 2011년 9월 19일

아파치 스톰 아키텍처

Apache Storm 클러스터는 다음과 같은 중요한 구성 요소로 구성된다.

  • 노드- 노드에는 두 가지 유형이 있다. 마스터 노드 및 작업자 노드. 마스터 노드는 기계에 작업을 할당하고 성능을 모니터링하는 데몬 님버스를 실행한다. 한편, Worker Node는 Supervisor라는 데몬을 실행하는데, 이 데몬은 다른 worker 노드에 작업을 할당하고 필요에 따라 이를 운영한다. 스톰은 클러스터의 상태와 상태를 모니터링할 수 없기 때문에 동물원 키퍼를 배치해 님버스와 슈퍼바이저를 연결하는 문제를 해결한다.
  • 구성 요소 - Storm에는 다음과 같은 세 가지 중요 구성 요소가 있다. 토폴로지, 스트림 및 스푸트. 토폴로지는 스트림과 스푸트로 만들어진 네트워크다. 스트림은 튜플의 무한 파이프라인이며, Spout은 데이터를 스트림의 튜플로 변환하여 처리할 볼트로 전송하는 데이터 스트림의 원천이다.[citation needed]

피어 플랫폼

스톰은 수십 개의 스트림 처리 엔진 중 하나에 불과하다. 자세한 목록은 스트림 처리를 참조하십시오. 트위터는 2015년[11] 6월 2일 스톰과 호환되는 API Heron을 발표했다. 스파크 스트리밍플링크와 같은 다른 유사한 스트리밍 데이터 엔진이 있다.[12]

참고 항목

참조

  1. ^ Marz, Nathan. "About Nathan Marz". Nathan Marz. Retrieved 28 March 2013.
  2. ^ "BackType Website (defunct)". BackType. Retrieved 28 March 2013.
  3. ^ "A Storm is coming: more details and plans for release". Engineering Blog. Twitter Inc. Retrieved 29 July 2015.
  4. ^ "Storm Codebase". Github. Retrieved 8 February 2013.
  5. ^ "Tutorial - Components of a Storm cluster". Documentation. Apache Storm. Retrieved 29 July 2015.
  6. ^ "Apache Storm Graduates to a Top-Level Project".
  7. ^ "Storm Project Incubation Status". Apache Software Foundation. Retrieved 29 October 2013.
  8. ^ "Storm Proposal". Apache Software Foundation. Retrieved 29 October 2013.
  9. ^ "Powered By Storm". Documentation. Apache Storm. Retrieved 29 July 2015.
  10. ^ "Apache Storm". storm.apache.org. Retrieved 18 August 2017.
  11. ^ "Flying faster with Twitter Heron". Engineering Blog. Twitter Inc. Retrieved 3 June 2015.
  12. ^ Chintapalli, Sanket; Dagit, Derek; Evans, Bobby; Farivar, Reza; Graves, Thomas; Holderbaugh, Mark; Liu, Zhuo; Nusbaum, Kyle; Patil, Kishorkumar; Peng, Boyang Jerry; Poulosky, Paul (May 2016). "Benchmarking Streaming Computation Engines: Storm, Flink and Spark Streaming". 2016 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). IEEE. pp. 1789–1792. doi:10.1109/IPDPSW.2016.138. ISBN 978-1-5090-3682-0. S2CID 2180634.

외부 링크