Simple is IT, 누구나 보고 누구나 깨닫는 IT

DataBase_HBase 본문

Simple is IT/Database

DataBase_HBase

currenjin 2020. 5. 5. 22:56

HBase

: Key-Value Store 기반의 NoSQL이며 하둡을 위한 비관계형 분산 DB이다.

HBase Table 형태

구성

Table : 여러 개의 Row로 구성

[AB001 Line 등]

Row : Row Key와 하나 또는 여러 개의 Column들로 구성, Row Key를 이용해 정렬

Row Key : RDBMS에서 PK와 비슷한 역할

[Cf:name 등]

Column_Family : 성능 향상을 위해 Column들을 물리적으로 묶어둔 것

[lastname 등]

Column_Qualifier : 칼럼 한정자를 통해 표현, 칼럼 한정자는 사전에 지정될 필요가 없음

Cell : 실질적으로 저장되는 데이터 또는 값, Timestamp와 함께 저장

Timestamp

값과 함께 내부적으로 저장되며 값의 버전을 위해 식별자로도 활용

TImestamp의 저장 형태

실습

/etc/profile

- 환경 변수 설정

export HBASE_HOME=/root/hbase=2.1.2

export PATH=$PATH:$HBASE_HOME/bin

hbase-2.1.2-bin.tar.gz 받아온 후 압축 해제

~/hbase-2.1.2/conf/hbase-env.sh

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64/

vi ~/hbase-2.1.2/conf/hbase-site.xml

<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

<property>

<name>hbase.rootdir</name>

<value>file:///root/hbase/hbase_data</value>

</property>

<property>

<name>hbase.unsafe.stream.capability.enforce</name>

<value>false</value>

</property>

</configuration>

start-hbase.sh

jps로 확인시 HMaster 동작 확인

hbase shell 실행

status

데이터 삽입

create 'student', 'cf_name' // student 테이블 추가 후 column family 추가

describe 'student'

scan 'student'

put 'student', 's1', 'cf_name:lastname', 'jeong'

// student table에 sl라는 키 값을 사용하며 cf_name에 속한 lastname이라는 칼럼에 jeong 데이터 삽입

hive와 hbase의 연동 해보기

cp ~/hbase-2.1.2/lib/hbase-common-2.1.2.jar ~/hive-3.1.2/lib

cp ~/hbase-2.1.2/lib/hbase-client-2.1.2.jar ~/hive-3.1.2/lib

hive 접속 후

CREATE EXTERNAL TABLE student

(key string, lastname string) STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'

WITH SERDEPROPERTIES("hbase.columns.mapping"

= ":key, cf_name:lastname") TBLPROPERTIES("hbase.table.name"="student");

해당 내용 한 줄에 입력

hive에서 조회가 정상적으로 된다.



'Simple is IT > Database' 카테고리의 다른 글

AWS Database Migration Service_보류  (0) 2020.07.02
DB 이중화(DB Master, Slave)  (0) 2020.05.05
Apache Hive의 간단한 설정  (0) 2020.05.05
빅데이터(Big Data)와 하둡(Hadoop)  (0) 2020.05.05
DataBase_View and Index  (0) 2020.05.05
Comments