'Zeppelin'에 해당되는 글 1건

  1. 2015.05.27 [Apache Tajo] Apache Tajo 데스크탑 + Zeppelin 연동 하기

[Apache Tajo] Apache Tajo 데스크탑 + Zeppelin 연동 하기

ITWeb/Apache Tajo 2015. 5. 27. 18:35

Apache Tajo 데스크탑 버전과 Zeppelin을 이용한 분석 환경 구성입니다.

모든 설치 및 사용 가이드는 각각의 홈페이지에 자세히 나와 있습니다.

단지 제가 실행한 로그만 모아서 글 남겨 봅니다.


Apache Tajo 데스크탑 설치 하기


1. 다운로드 및 설치 가이드

http://www.gruter.com/blog/getting-started-with-tajo-on-your-desktop/


2. 압축 해제 하기

$ tar -xvzf tajo-0.11.0-desktop-3.0.tar.gz

$ ln -s tajo-0.11.0-desktop-3.0 tajo

$ cd tajo


3. 설정 하기

$ bin/configure.sh

Enter JAVA_HOME [required]

/Library/Java/JavaVirtualMachines/jdk1.7.0_55.jdk/Contents/Home

Would you like advanced configure? [y/N]

y

Enter tajo.rootdir [default: file:///Users/hwjeong/temp/kgloballondon/tajo/data/tajo]


Enter tajo.staging.directory [default: file:///Users/hwjeong/temp/kgloballondon/tajo/data/staging]


Enter tajo.worker.tmpdir.locations [default: /Users/hwjeong/temp/kgloballondon/tajo/data/tempdir]


Enter heap size(MB) for worker [default: 1024]


Done. To start Tajo, run /Users/hwjeong/temp/kgloballondon/tajo/bin/startup.sh

- JAVA_HOME 설정은 개발환경에 맞춰 설정 하시면 됩니다.
- advanced configure 설정은 따로 하지 않으셔도 되지만 어떤 항목이 있는지 확인하기 위해 "y"를 선택했습니다.
- OSX 사용자의 경우 아래와 같이 확인 하시면 됩니다.
$ /usr/libexec/java_home -v 1.7
또는
$ /usr/libexec/java_home -v 1.6

4. Tajo 실행 하기
$ bin/startup.sh
starting master, logging to /Users/hwjeong/temp/kgloballondon/tajo/bin/../logs/tajo-hwjeong-master-jeong-ui-MBP.out
Tajo master starting....Connection to localhost port 26003 [tcp/*] succeeded!
Tajo master started.

starting worker, logging to /Users/hwjeong/temp/kgloballondon/tajo/bin/../logs/tajo-hwjeong-worker-jeong-ui-MBP.out
Tajo worker started.

Tajo master web UI
http://localhost:26080

5. 테스트 데이터 등록
$ bin/make-test.sh
Databases and tables for test were successfully created.

6. Tajo Shell 명령어 실행
$ bin/tsql

default> \c tpc_h10m
You are now connected to database "tpc_h10m" as user "hwjeong".
tpc_h10m> \d
customer
lineitem
nation
orders
part
partsupp
region
supplier
tpc_h10m>

여기까지는 "다운로드 및 설치 가이드"에 나와 있는 것과 동일 합니다.
다만 제가 수행한 로그를 기록한 것 뿐입니다.

Zeppelin 설치 하기

1. 다운로드 및 설치 가이드
https://zeppelin.incubator.apache.org/docs/install/install.html

2. git clone 하기
$ git clone https://github.com/apache/incubator-zeppelin.git zeppelin
Cloning into 'zeppelin'...
remote: Counting objects: 21256, done.
remote: Total 21256 (delta 0), reused 0 (delta 0), pack-reused 21256
Receiving objects: 100% (21256/21256), 10.76 MiB | 1.75 MiB/s, done.
Resolving deltas: 100% (8584/8584), done.
Checking connectivity... done.
$ cd zeppelin

3. Local mode 로 빌드하기
$ sudo mvn clean install -DskipTests
- sudo 로 실행한 이유는 dependency 설치 시 권한 문제로 인한 오류를 예방하기 위해서 입니다.

4. Zeppelin 실행 하기
$ bin/zeppelin-daemon.sh start
Zeppelin start                                             [  OK  ]
-  중지는 start 대신 stop 하시면 됩니다.
$ bin/zeppelin-daemon.sh stop
Zeppelin stop                                              [  OK  ]

5. Zeppelin WebUI 접속 하기
http://localhost:8080/

Zeppelin에서 Apache Tajo SQL 사용 하기

1. Note 생성 하기


2. Tajo 질의 작성 하기

## Note 2AQG17JRB를 클릭 하세요.

%tajo select * from tpc_h10m.nation;


%tajo 

SELECT n.n_name as nation, sum(o.o_totalprice) as order_amount 

FROM tpc_h10m.customer c, tpc_h10m.nation n, tpc_h10m.orders o 

WHERE c.c_nationkey = n.n_nationkey 

and o.o_custkey = c.c_custkey 

GROUP BY c.c_nationkey, n.n_name 

ORDER BY n.n_name;

- "%tajo" 부분은 zeppelin의 interpreter binding 정보를 참고 하시면 되며, tajo를 지정한 내용입니다.

- tajo의 tsql에서 제공하는 "\명령어"는 지원되지 않기 때문에 사용에 유의 하셔야 합니다.



3. 질의 결과를 Graph로 보기

Command Shell 하단에 그래프 아이콘을 클릭 하시면 결과를 보실 수 있습니다.


여기까지 제공된 문서를 기반으로 구성해본 내용이였습니다.

더불어 Apache Tajo와 Zeppelin과의 통신은 JDBC Driver를 통해서 이루어 집니다.




: