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

첫번째 삽입은 rowvalue1을 값으로 가진 컬럼 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

지우기 위해서는 disabledrop을 합니다.

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 쉘을 종료한 후 서비스도 종료하였습니다.

Notes

  1. earthian reblogged this from dalinaum-kr
  2. dalinaum-kr posted this