Open junho85 opened 8 years ago
HBase 관련 자료 보기
http://deview.kr/2015/schedule#session/85
Slide http://www.slideshare.net/deview/223-h-base-consistent-secondary-indexing
Video http://serviceapi.rmcnmv.naver.com/flash/outKeyPlayer.nhn?vid=418C21077EB1D33E966E04CC676647DAE467&outKey=V128f33271536740e439e39e3c5c982f5e4382d3853f4c26a0a6239e3c5c982f5e438&controlBarMovable=true&jsCallable=true&skinName=tvcast_white
HBase 의 모든 데이터는 rowkey 기준으로 사전순으로 정렬 row 키가 아닌 것을 기준으로 검색하려면 Full scan 필요
HBase 는 대규모에 집중 그래서 보조인덱스는 지원하지 않음 필요하면 직접 만들어 써야 됨
index 테이블 만들어서 할 수 있음
그러나 Consistency 가 깨질 수 있음
Index consistency가 깨어지는 3가지 경우
찾고 있던 것 HBase에서 동작하는 보조인덱스 시스템
직접 구현
Index Consistency 가 깨어진 이유
...
어떻게 만들까? HBase의 오픈소스 Transaction 시스템들을 이용하여 구현하면?
MVCC (Multi-version concurrency control)
Versioned Index 3가지의 timestamp의 비교를 통한 index consistency 구현
movieStar
movieStar.index.spouse ...
Versioned Index와 index consistency
Put 동작방식
dataTable 에서 Scan/Get 동작방식
Local vs Global indexing ...
Local indexing data와 index가 같은 리전 서버에 ... data의 Region단위로 인덱스 생성하기 ...
위태위태 RDB의 개념을 가져온 것
NoSql, Index
한권의 책을 HBase Table에 넣는다면? HBaseTable = PaperBook rowkey = page_num + word_seq value = word
: FullScan 하면 책 한권의 ...
Index는?
HBaseTable = PaperBook rowkey = page_num + word_seq value = word
IndexTable = PaperBook's index indexRowkey = hotKeyword{}page_num
책의 모든 단어를 Indexing 하지는 않는다.
사람들이 찾아보는 단어는 한정되어 있음 모두 넣으면 종이 낭비
Full index 비용
Index를 통해 데이터를 찾지 않는다면 모든 비용은 쓸모가 없다. ...
Sub-index란? 필요한 데이터만 Indexing 하기
Full-index에서 Sub-index로 General Index->Purpose orientated Index Non-conditional Index->Multi-Conditional Index
Full Index->Sub-Index
sub index 조건과 데이터타입
EQUAL NOT_EQUAL GREAT_OR_EQUAL SMALL_THAN NULL NOT_NULL ...
& 여러가지 데이터 타입
String int ...
Purpose orientated index
Request] 35살 이하, 결혼하지 않은 배우 정보 리스트
movieStar.index.spose
HTableInterface indexTable = conn.getTable("movieStar....
작고 많은 수의 인덱스 vs 크고 적은 수의 인덱스
Performance: 작고 많은 sub-Indices? indexes 아닌가? ...
Performance: 10% sub ...
Performance: 10% sub indices
Disk Usage
Dynamic & Flexible 유연하고 동적인 구조라면
Tag SNS의 #HashTag 와 유사한 기능
Tagging/untagging tag/untag
Get by tag name Scan by Tag
38min
마무리: 보조인덱스 구축시 고려할 점
개요
HBase 관련 자료 보기
http://deview.kr/2015/schedule#session/85
Slide http://www.slideshare.net/deview/223-h-base-consistent-secondary-indexing
Video http://serviceapi.rmcnmv.naver.com/flash/outKeyPlayer.nhn?vid=418C21077EB1D33E966E04CC676647DAE467&outKey=V128f33271536740e439e39e3c5c982f5e4382d3853f4c26a0a6239e3c5c982f5e438&controlBarMovable=true&jsCallable=true&skinName=tvcast_white
내용
HBase 의 모든 데이터는 rowkey 기준으로 사전순으로 정렬 row 키가 아닌 것을 기준으로 검색하려면 Full scan 필요
HBase 는 대규모에 집중 그래서 보조인덱스는 지원하지 않음 필요하면 직접 만들어 써야 됨
index 테이블 만들어서 할 수 있음
그러나 Consistency 가 깨질 수 있음
Index consistency가 깨어지는 3가지 경우
찾고 있던 것 HBase에서 동작하는 보조인덱스 시스템
직접 구현
Index Consistency 가 깨어진 이유
...
어떻게 만들까? HBase의 오픈소스 Transaction 시스템들을 이용하여 구현하면?
MVCC (Multi-version concurrency control)
...
Versioned Index 3가지의 timestamp의 비교를 통한 index consistency 구현
movieStar
movieStar.index.spouse ...
Versioned Index와 index consistency
Put 동작방식
dataTable 에서 Scan/Get 동작방식
Local vs Global indexing ...
Local indexing data와 index가 같은 리전 서버에 ... data의 Region단위로 인덱스 생성하기 ...
위태위태 RDB의 개념을 가져온 것
NoSql, Index
한권의 책을 HBase Table에 넣는다면? HBaseTable = PaperBook rowkey = page_num + word_seq value = word
: FullScan 하면 책 한권의 ...
Index는?
HBaseTable = PaperBook rowkey = page_num + word_seq value = word
IndexTable = PaperBook's index indexRowkey = hotKeyword{}page_num
책의 모든 단어를 Indexing 하지는 않는다.
사람들이 찾아보는 단어는 한정되어 있음 모두 넣으면 종이 낭비
Full index 비용
Index를 통해 데이터를 찾지 않는다면 모든 비용은 쓸모가 없다. ...
Sub-index란? 필요한 데이터만 Indexing 하기
Full-index에서 Sub-index로 General Index->Purpose orientated Index Non-conditional Index->Multi-Conditional Index
Column-based Index->Cell(Column+Value) based Index
Full Index->Sub-Index
sub index 조건과 데이터타입
EQUAL NOT_EQUAL GREAT_OR_EQUAL SMALL_THAN NULL NOT_NULL ...
& 여러가지 데이터 타입
String int ...
Purpose orientated index
Request] 35살 이하, 결혼하지 않은 배우 정보 리스트
movieStar.index.spose
...
작고 많은 수의 인덱스 vs 크고 적은 수의 인덱스
Performance: 작고 많은 sub-Indices? indexes 아닌가? ...
Performance: 10% sub ...
Performance: 10% sub indices
Disk Usage
Dynamic & Flexible 유연하고 동적인 구조라면
...
Tag SNS의 #HashTag 와 유사한 기능
Tagging/untagging tag/untag
Get by tag name Scan by Tag
38min
마무리: 보조인덱스 구축시 고려할 점