Hbase, 단독(standalone)으로 설치하기.
이 글은 Hbase QuickStart를 해본 것을 기록을 남긴 것입니다.
Hbase를 단독으로 설치하기 위해 미러를 이용합니다. Hbase가 Google의 BigTable이 Google File System에 의존하 듯 Hadoop에 의존할 줄 알았는데 단독 구성도 가능하네요.
tar xvzf hbase-0.90.4.tar.gz
mkdir rootdir
cd hbase-0.90.4
Hbase에서 쓸 rootdir을 만들었습니다. 이 디렉토리를 설정파일(conf/hbase-site.xml) 의 hbase.rootdir에 설정합니다.
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///Users/dalinaum/hbase/rootdir</value>
</property>
</configuration>
경로가 file://뒤에 /로 시작하는 것을 주의합시다. 또, 맥 사용자들은 /home이 아닌 /Users에서 홈 디렉토리가 시작하는 점을 유의하셔야 합니다. 이제 Hbase를 수행시킵니다.
./bin/start-hbase.sh
starting master, logging to (중략)local.out
이제 Hbase가 동작하고 있으니 shell을 수행하겠습니다.
./bin/hbase shell
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 0.90.4, r1150278, Sun Jul 24 15:53:29 PDT 2011
이제 cf 컬럼 패밀리를 가진 test 테이블을 만듭니다.
hbase(main):001:0> create 'test', 'cf'
0 row(s) in 0.5790 seconds
이제 자료들을 삽입하겠습니다.
hbase(main):002:0> put 'test', 'row1', 'cf:a', 'value1'
0 row(s) in 0.2530 seconds
hbase(main):003:0> put 'test', 'row2', 'cf:b', 'value2'
0 row(s) in 0.0340 seconds
hbase(main):004:0> put 'test', 'row3', 'cf:c', 'value3'
0 row(s) in 0.0350 seconds
첫번째 삽입은 row에 value1을 값으로 가진 컬럼 cf:a을 삽입하는 것입니다. 컬럼들은 콜론을 기준으로 컬럼 패밀리 전치사 cf와 콜론 뒤의 컬럼 수식자 접미사 a식으로 구성되어 있습니다.
이제 스캔을 해봅시다.
scan 'test'
ROW COLUMN+CELL
row1 column=cf:a, timestamp=1316337980526, value=value1
row2 column=cf:b, timestamp=1316337990551, value=value2
row3 column=cf:c, timestamp=1316338000426, value=value3
3 row(s) in 0.1210 seconds
하나의 값을 가져오는 것은 아래와 같습니다.
get 'test', 'row1'
COLUMN CELL
cf:a timestamp=1316337980526, value=value1
1 row(s) in 0.0380 seconds
지우기 위해서는 disable과 drop을 합니다.
hbase(main):007:0> disable 'test'
0 row(s) in 2.0620 seconds
hbase(main):008:0> drop 'test'
0 row(s) in 1.1100 seconds
종료합시다.
hbase(main):009:0> exit
./bin/stop-hbase.sh
stopping hbase.......
Hbase 쉘을 종료한 후 서비스도 종료하였습니다.