[오픈소스] Apache Zeppelin

2018. 5. 16. 13:46

cybertramp 지식

최근 R, 하둡, jupyter-notebook 이라는 말을 듣다가 아파치 재단에서 하는 듯한 프로젝트인 Apache Zeppelin을 듣게 되어서 무엇인가 궁금하여 기록한다.




Apache Zeppelin은 최근(2013년)에 등장한 데이터 분석도구이며, 아파치 소프트웨어 재단의 후원을 받아 개발 되고 있는 오픈소스 프로젝트이다. 데이터 분석도구는 예전부터 존재 해왔다. Mathmatica, Matlab, 오픈소스인 IPython, Jupyter, Hadoop, Spark 등이 있다. 이 중 오픈소스 범주에 포함되는 것이 Apache Zeppelin이다.


Apache Zeppelin은 웹을 기반으로 하는 IDE 보면된다. 어떠한 언어가 있는데 그것을 코딩하고 디버깅하고 실행하기 편하게 만들어주며 그 IDE를 웹서버가 제공해준다고 생각하면된다. 우리는 웹서버 프로그램을 실행하고 사이트로 접속만 하면된다.

이 덕분에 초보자도 손쉽게 코딩을 하고 Run 버튼 만 누르면 실행결과가 '뙇!' 하고 나타난다. 또한 실행결과도 저장 할 수있고 매우 접근성이 뛰어 나게 된다.


Apache Zeppelin은 대게 Jupyter와 많이 비교된다. 왜냐하면 둘다 web based notebook 이기 때문이다.

※ notebook : 코드, 텍스트, 수식, 인라인 플롯, 기타 미디어 등을 포함하는 문서


차이는 아래와 같다.


Jupyter

 - 주로 파이썬 유저들이 많이 사용 => 버그, 신기능 등이 빨리 업데이트

 - 기여자가 Apache Zeppelin에 비해 10배 이상 많음

 - 한정된 메모리 공간에서 사용 할때 적합

 - 다양한 언어 지원

 - 사용 : 웹 스크래핑, 데이터 모델링(적은 시각화)


Zeppelin

 - Apache 프로젝트 Top에 최근에서야 올라와서 인지도가 낮음

 - 메모리의 제약을 넘을 수 있는 데이터에 적합하여 팀과 공유하고 대시보드를 만들 때 유용

 - Apache Spark를 기반

 - 다양한 언어 지원

 - 사용 : 데이터를 분석, 발표


Apache Zeppelin은 Apache Spark를 사용하려면 CLI 에서 일일이 입력해야하는 번거로움을 notebook 기반에서 제공함으로써 보완하는 프로그램이다.


※ 참고로 Spark란 오픈소스 빅데이터 프레임워크 이다. 또한 하둡의 경쟁자이기도 한데, 하둡보다 속도가 빠르다.


하둡 : 분산형 스토리지(HDFS)기반 + 빅데이터프로세싱

스파크 : 빅데이터 프로세싱 => 하둡 빅데이터 프로세싱으로 사용 할수있음


Git을 기반으로 서비스를 제공하는 Github, Gitlab, Bukkit 등이 있듯이

Zeppelin 기반으로 서비스를 제공하는 zepl 이 있다.