2015년 4월 4일 토요일

Druid (Interactive Analytics at Scale) - 설치기

Druid 설치는.... 공식 Web Site 의 Getting Started 를 참조 했지만, 무지 skip이 많다.

http://druid.io/

홈페이지 대문에 링크되어 있는 Getting Started는 그대로 따라하면 대략 5~6개의 에러를 만난다. 대표적으로, wikipedia 셈플은 MySQL 디펜던시가 없다고 해놓구선, 실행해보면 mysql 관련 시도를 한다...

물론 config 쪽에서 MySQL 접근을 하지 않도록 하는 방법도 있겠지만, Sample  만 돌리고 말것도 아니므로...대략적인 Full Setting 을 해 보았다. 기타 기본적인 세팅과 데몬 구동이 필수 필요함에도, Getting Started  는 모든걸 skip 하고 있었다.

어찌되었든, Getting Started 가 좀 비약이 심하지만, 나머지 Document 정리는 잘 되어 있는 느낌이다. github 내 소스들도 최근에도 활발히 소스 갱신이 있었음을 확인 하였다.

[Druid Dowload & install & Setting]

  1. wget http://static.druid.io/artifacts/releases/druid-0.7.0-bin.tar.gz
  2. tar xvzf druid*.tar.gz
  3. Download Zookeeper & Setting
    1. wget http://mirror.apache-kr.org/zookeeper/zookeeper-3.3.6/zookeeper-3.3.6.tar.gz
    2. tar xvzf zookeeper-3.3.6.tar.gz
    3. cp conf/zoo_sample.cfg conf/zoo.cfg
    4. ./bin/zkServer.sh start
  4. Install MySQL & initial Setting
    1. sudo yum install -y mysql-server
    2. sudo service mysql start
    3. mysql -u root
    4. GRANT ALL ON druid.* TO 'druid'@'localhost' IDENTIFIED BY 'diurd'; 
      CREATE DATABASE druid DEFAULT CHARACTER SET utf8;
  5. Coordinator Node settings
    1. 주석제거
      1. druid.host=localhost
        druid.port=8081
    2. strart
      1. java -Xmx256m -Duser.timezone=UTC -Dfile.encoding=UTF-8 -classpath config/_common:config/coordinator:lib/* io.druid.cli.Main server coordinator
  6. Historical Node settings
    1. 주석제거
      1. druid.host=localhost druid.port=8083
    2. start
      1. java -Xmx256m -Duser.timezone=UTC -Dfile.encoding=UTF-8 -classpath config/_common:config/historical:lib/* io.druid.cli.Main server historical
  7. Broker Node Settings
    1. 주석제거
      1. druid.host=localhost druid.port=8082
    2. start
      1. java -Xmx256m -Duser.timezone=UTC -Dfile.encoding=UTF-8 -classpath config/_common:config/broker:lib/* io.druid.cli.Main server broker
  8. Realtime Node Settings
    1. 주석제거
      1. druid.host=localhost druid.port=8084
    2. start
      1. java -Xmx512m -Duser.timezone=UTC -Dfile.encoding=UTF-8 -Ddruid.realtime.specFile=examples/wikipedia/wikipedia_realtime.spec -classpath config/_common:config/realtime:lib/* io.druid.cli.Main server realtime
      2. realtime 으로 데이타를 가져오는 것까지 준비가 되어 있다. example 로 우선 구동 태스트를 해 보았으며, 결과를 빠르게 확인해보기 위해서는 위 .spec 파일을 열어 수집 갱신 주기를 바꾸어 주면 가능하다.
위 처럼 Coordinator ip:port 를 브라우저에서 치면, web ui 를 볼 수 있다.
아래처럼 저장해둔 example query 를 콘솔에서 restful url 로 수행해 보자 결과가 json 으로 떨어진다. 즉, WebService 를 위한 별도의 WAS 나 Gateway Ajax 용 호스팅 Web Page 를 만들지 않아도 된다.
일단, 오늘은 싱글노드 설치 & 쿼리 결과 보는 것 까지...!!!!




댓글 없음:

댓글 쓰기