본문 바로가기
NoSQL/HBase

Hbase 리뷰

by Lohen 2016. 2. 5.

Hbase 리뷰

리카르돌 2012-07-26 17:35:38 주소복사
조회 69 스크랩 0

HBase 특성에 대한 기본적인 개념 리뷰 중..

1. HBASE ? ( http://wiki.apache.org/hadoop/Hbase )<?-ml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><?XML:NAMESPACE PREFIX = O />

ü 구글 Bigtable을 모델로 하여 초기 모델 개발(2007)

ü Hadoop의 서브 프로젝트로 편입 (2008)

ü 분산 컬럼 기반(distributed column oriented) 데이터베이스

ü Bigtable 1000개 이상의 Cluster node를 지원

ü 대용량 Read/Write 기능 지원, Fast Scans 지원

ü HDFS 기반 위에 구현됨

ü Zookeeper를 이용한 고 가용성 보장

Membership 정보저장, Dead Server 탐지, Master 선출 및 복구

2. HBASE 주요 용어

ü Table

- Row들의 집합 (Row Key가 있으며 다수의 column family로 구성)

- Schema 정의서 Column Family 만 정의

ü Row Key

- 임의의 Byte열로 사전순으로 내림차순 정렬

-  Byte문자열은 테이블의 시작과 끝을 의미

ü Column Family

- Column들의 그룹으로 모든 컬럼패밀리의 Member는 같은 접두사를 사용

- DB기술팀:김병수와 DB기술팀:이용석 은 DB기술팀이라는 컬럼 패밀리의 멤버컬럼

ü Cell

- ROW KEY & Column & Version이 명시된 튜플

- 값은 임의의 Byte열이며 Timestamp가 있음

3. HBASE Architecture

ü Hbase Cluster Architecture

 

ü HBase System components

ü HBase Data Model

ü HBase Data 분산 및 Lookup 방식

4. HBASE VS RDBMS 의 비교

HBase

RDBMS

컬럼 기반

로우 기반

동적 스키마(동적컬럼추가가능)

고정 스키마

get / put / scan 등등

SQL

대용량 테이블 용도

일반 테이블

MapRduce Join 활용

Join에 최적화 됨

Rowkey만 인덱스 지원

임의 컬럼에 대한 인덱스 지원

초당 수십만건 Read/Write

초당 수천건 Read/Write

최대 PB 저장 용량

최대 TB 급 저장 용량

프로젝트 진행중

인증/허가 수준의 보안기능제공

단일로우 트랜잭션 보장

다중 로우 트랜잭션 보장

5. HBase Table 구조 확인

ü HBase column 은 미리 선언 되는 것이 아니고 Runtime시에 정의 된다.

ü Timestamp descending 방식으로 저장되어 timestamp에 따라 컬럼은 time-version value 형태로

디스크 상에 저장된다. Time-version  value들의 그룹을 cell이라고 명칭함.

Columns 내부에 Dynamic하게 새로운 Entity 정의가 가능함

6. HBase Modeling Example

ü 1:M 구조의 Relationship

ü M:M 구조의 Relationship

 HBASE 를 활용 하기 위해서는

ü RDBMS를 버리는 것이 아니라 서비스에 따른 적절한 솔루션 선택이 필요

ORACLE + MYSQL + HBASE + Mem Cache + NoSQL등 서비스/데이터에 따른 다양한 조합

ü Hadoop, Zookeeper, 기타 오픈 소스 활용 능력이 안정적 서비스 운영의 필수 조건

기술력의 내재화 없이는 서비스 성공 불가함

ü Data Architecture 보다 System & Application Architecture의 역량이 매우 중요

ü Row Key 기반의 대량 데이터가 발생 가능한 서비스 모델에 적합

서비스 & 데이터 모델이 Row Key 기반으로 단순해야 최적화 가능한 구조임

ü HBASE의 안정성 확보 필요

HW 차원의 안정성 확보도 필요하지만 프로그램의 코드 레벨 수준에서 안정성 검증 필요

출처 : Gruter Technical Note

http://www.bicdata.com/

: http://wiki.apache.org/hadoop/Hbase

: Ian Varley HBase Schema Design

 

 

출처: http://www.cyworld.com/duetys/14411321 


반응형