'tajo'에 해당되는 글 3건

  1. 2015.11.01 처음 실행시 TajoMaster 가 죽는 경우
  2. 2015.07.02 apache tajo 설치
  3. 2015.06.29 protocol buffer 2.5.0 설치

처음 목표는 phd 에 tajo 설치였으나 아직 phd 는 지원하지 않는건지 실패하고나서


apache hadoop 에 tajo 를 설치하였다


os 는 rhel 6.6

hadoop 은 apache hadoop 2.6.0

노드 2개로 하둡 클러스터를 구성하였다

1번에 Namenode, HistoryServer, Datanode

2번에 ResourceManager, Datanode

tajo 는 0.11.0


TajoMaster 는 1번

TajoWorker 는 1번, 2번

Catalog 는 mysql 로 할 계획이다


설치 후 start-tajo.sh 를 실행하였는데 실행이 잘 되는듯 보였으나


1번에 TajoMaster 가 올라오지 않았다


로그를 보니(아래 로그 참조) PARTITION_KEYS table 생성시 key was too long 이란다


mysql character set 이 utf8 이어서 그랬다


그래서 임시로 다시 latin 으로 변경(utf8 설정을 주석) 후 mysqld 재시작 하고


tajo database 를 다시 만든 후에 start-tajo.sh 를 실행하니 정상적으로 올라왔다


tsql 도 정상 실행 되었다


tajo 실행시 mysql catalog create 문은

https://github.com/apache/tajo/blob/master/tajo-catalog/tajo-catalog-server/src/main/resources/schemas/mysql/mysql.xml

에서 확인할 수 있다


mysql 설정을 다시 utf8 로 바꾼 후 tajo 를 재시작 해도 잘 실행되었다






2015-11-01 21:05:52,224 WARN org.apache.tajo.catalog.store.XMLCatalogSchemaManager: Failed to drop database objects TABLE PARTITION_KEYS

2015-11-01 21:05:52,225 ERROR org.apache.tajo.catalog.CatalogServer: CatalogServer initialization failed

java.lang.reflect.InvocationTargetException

        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

        at java.lang.reflect.Constructor.newInstance(Constructor.java:526)

        at org.apache.tajo.catalog.CatalogServer.serviceInit(CatalogServer.java:135)

        at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)

        at org.apache.hadoop.service.CompositeService.serviceInit(CompositeService.java:107)

        at org.apache.tajo.master.TajoMaster.serviceInit(TajoMaster.java:213)

        at org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)

        at org.apache.tajo.master.TajoMaster.main(TajoMaster.java:603)

Caused by: org.apache.tajo.exception.TajoInternalError: internal error: internal error: Specified key was too long; max key length is 1000 bytes

        at org.apache.tajo.catalog.store.AbstractDBStore.<init>(AbstractDBStore.java:190)

        at org.apache.tajo.catalog.store.MySQLStore.<init>(MySQLStore.java:34)

        ... 10 more



'[BigData] > [Apache TAJO]' 카테고리의 다른 글

처음 실행시 TajoMaster 가 죽는 경우  (0) 2015.11.01
apache tajo 설치  (0) 2015.07.02
Posted by FeliZ_하늘..

댓글을 달아 주세요

일단 목표는 타조 설치 후 mysql 로 metadata 를 저장하는 것이다


tajo 를 설치하기 위해서는 protocol buffer 2.5.0 이 필요하다고 한다.


저번에 이미 protocol buffer 2.5 는 설치했다


내 환경은


iMac 이고 os 는 10.10 Yosemite 에서 Parallels 8 로 ubuntu 12.04 를 띄워서 테스트 했다


ubuntu 12.04

apache hadoop 2.6.0

mysql 5.5.43

oracle java 1.7.0_80

apache maven 3.3.3

protocol buffer 2.5.0


싱글 노드로 테스트 할것이다


일단 git 에서 tajo 를 받는다


현재는 0.11.0 이 받아진다


페이스북 한국 타조 유저 그룹을 보니 0.11.0 에 row 단위 insert 기능이 추가 될 예정이라고 한다


tajo 는 대용량 데이터 저장 용도로 설계됐기 때문에 되지 않았다고 한다


테스트 결과 0.11.0 이지만 아직 구현은 안된것 같다 syntax error 가 난다.


$ git clone https://github.com/apache/tajo.git

$ cd tajo

$ mvn clean install -DskipTests -Pdist -Dtar -Dhadoop.version=2.6.0

$ cd tajo-dist/target/tajo-0.11.0-SNAPSHOT/conf

$ cp catalog-site.xml.template catalog-site.xml

$ cp tajo-site.xml.template tajo-site.xml

$ vi catalog-site.xml


tajo.catalog.jdbc.connection.id

tajo.catalog.jdbc.connection.password

tajo.catalog.store.class

  <value>org.apache.tajo.catalog.store.MySQLStore</value>

tajo.catalog.jdbc.uri


4개 속성의 주석을 제거하고 각자 환경에 맞게 수정한다.(tajo.catalog.store.class 속성의 value 는 그대로 둔다)


$ vi tajo-site.xml


tajo.rootdir 속성을 각자 환경에 맞게 수정한다.


나는 hdfs://localhost:54310 으로 수정했다


$ vi tajo-env.sh


HADOOP_HOME

JAVA_HOME

TAJO_CLASSPATH


3가지 속성을 수정한다.(TAJO_CLASSPATH 는 mysql jdbc jar 파일의 절대경로를 적어준다)


$ vi ~/.bashrc


맨 아래에 아래를 추가해준다


export TAJO_HOME=[설치한 tajo 경로]/tajo-dist/target/tajo-0.11.0-SNAPSHOT

export PATH=$PATH:$TAJO_HOME/bin


$ source ~/.bashrc

$ cd $TAJO_HOME/bin

$ ./start-tajo.sh

$ ./tsql


default>


default> 가 뜨면 성공!


그러면 hdfs 상에 /system, /tmp, /warehouse 가 생기고


mysql 에 tajo 라는 database 가 생길 것이다

'[BigData] > [Apache TAJO]' 카테고리의 다른 글

처음 실행시 TajoMaster 가 죽는 경우  (0) 2015.11.01
apache tajo 설치  (0) 2015.07.02
Posted by FeliZ_하늘..

댓글을 달아 주세요

먼저 내 환경은 iMac 에서 ubuntu 12.04 를 parallels 8 로 띄운 환경이다


$ wget http://protobuf.googlecode.com/files/protobuf-2.5.0.tar.gz

$ tar xzvf protobuf-2.5.0.tar.gz

$ cd protobuf-2.5.0/

$ ./configure


이 단계에서 나는 c++ 이 깔려있지 않아서 에러가 났다


$ apt-get install g++ pentium-builder

$ ./configure

$ make

$ make check

$ sudo make install

$ sudo ldconfig

$ protoc --version 

libprotoc 2.5.0


버전이 나오면 성공!!

'[프로그래밍]' 카테고리의 다른 글

rsync 로 CRAN mirroring  (0) 2015.10.06
GIS shp 파일 변환  (0) 2015.07.28
protocol buffer 2.5.0 설치  (0) 2015.06.29
/etc/hosts 파일 설정  (0) 2015.03.16
putty 에서 pem 파일 이용하여 접속하기  (0) 2015.02.26
버전관리 Git  (0) 2015.02.07
Posted by FeliZ_하늘..

댓글을 달아 주세요