Contents
- 구글 데베 Bigtable 고 기
- http://nforge.zeropage.org/projects/bigtablet
- 못만들
- 못만들
1. 기능 ¶
블릿 당 ★★★★★
SCAN ★★★★★
라 ★★★★
Tablet Server 록 ★★★
Master Server 록 ★★★
라 러드 ★★
SSTABLE Compaction ★★★
복구 ★★
블릿 Split ★★
heartbeat ★
만기 ★
로드밸런/블릿 복구
B+ 리 ★★★★★SCAN ★★★★★
라 ★★★★
read/write
밋로그 기 ★★★Tablet Server 록 ★★★
Master Server 록 ★★★
라 러드 ★★
SSTABLE Compaction ★★★
minor compaction
major compaction
블릿 복구 ★★major compaction
복구 ★★
블릿 Split ★★
heartbeat ★
만기 ★
2.1. 기능명 ¶
- 리
- 블릿 개, cpu rate, 메모리 량
- ISSUE : 균+ 를
- 균로 리를 결만 값 보다 다면 로드 밸런 나 는다.
- 균로 리를 결만 값 보다 다면 로드 밸런 나 는다.
- 블릿 개, cpu rate, 메모리 량
-
- 가load가 TS(source) 가load가 TS(target) 가 때
- source 게 target ip 달 블릿 개를 달
- 가load가 TS(source) 가load가 TS(target) 가 때
- TS
- TS
- 당 블릿 SSTABLE들 minor compaction
- source는 target게 갯만 블릿 리로 달 ( 된 블릿 달다)
- 블릿 리 달 블릿들
- target게 대로 달는
- 당 블릿 SSTABLE들 minor compaction
- 겟 TS
- 달 블릿 리로 블릿들 다
- TS게 공 메 보
- 달 블릿 리로 블릿들 다
- TS
- 게 공 메 달( 데)
- 게 공 메 달( 데)
- TS
-
- b+ 리(메블릿)
- b+ 리(메블릿)
- ISSUE
- 러 로드가 나 TS가 는 로드 밸런 가?
- target 대로 달는 떻게 ?
- target 게 블릿 리를 달고 가 target 블릿 리 블릿 리를 교 밸런 되는 .
- target 게 블릿 리를 달고 가 target 블릿 리 블릿 리를 교 밸런 되는 .
- 더 나 로드밸런
- 로드밸런 블릿 개 떻게?
- 로드밸런 블릿 개 떻게?
- 러 로드가 나 TS가 는 로드 밸런 가?
3.1. 기능명 ¶
- 는 기로 TS들게 heartbeat를 는다
- 는 기로 TS들 블릿 리를 다.
- 블릿 리들과 메블릿(루블릿나?)과 교 락된 블릿 리가 는 검
- 락된 블릿 리가 다면 당 블릿 리를 가고 는 TS가 만기된 것.(<- 만기가 되지 않았다면?)
- 당 블릿 리를 다른 TS들게 당.
- target들 다. (떤 기로? 몇개나?)
- traget들게 블릿 리를 달다.
- 락된 블릿 리가 다면 당 블릿 리를 가고 는 TS가 만기된 것.(<- 만기가 되지 않았다면?)
- 블릿 리들과 메블릿(루블릿나?)과 교 락된 블릿 리가 는 검
- 는 기로 TS들게 heartbeat를 는다
- TS
- 기 공 게 공 메 달 ( 데)
- 기 공 게 공 메 달 ( 데)
- ISSUE
- 블릿 떤 까?
- 균?
- 개?
- 균?
- 블릿 떤 까?
3.2. ISSUE ¶
- 메데 블릿 (B+ 리 )
- : 가
- : 데
- 데 : target 블릿 리를 달고 DFS 블릿 기 공면 source게 공 메 달.
- source는 target게 공 메를 면 블릿 리 달 블릿들 다.
- source는 게 공 메를 보내 를 데다.
- 는 메블릿 데다.
- : 가
- 로드 밸런 target 다된다면 : 는 로드밸런 다른 target . TS 복구를 다.
- 로드 밸런 source가 다된다면? : TS 복구
- TS는 달 블릿 떻게 것가 : 블릿 리 부 되는 블릿 N개
- DFS 블릿 기 대
- 무 기 -> DFS 부 가
- 기 블릿 -> 보
- 무 기 -> DFS 부 가
6.1.1. read ¶
- 라
- B+리 는 row를 가고 는 TS를
- B+리 는 row를 가고 는 TS를
- TS
- 라 ROW 기 들다 (ISSUE 6. 라는 떤 로 TS게 ROW를 것가)
- TS는 가 블릿들 ROW를 검
- 검결과들 merge다.
- merge결과를 String 리로 라게 돌려다
- 라 ROW 기 들다 (ISSUE 6. 라는 떤 로 TS게 ROW를 것가)
7. 밋로그 기 ★★★ ¶
기(write) 만 기록됨
기 (2GB)
료구를 공 -> 바 돌 공 면 memtable들 minor compaction 다.
그러나 compaction는 모든 되므로 로그는 다.
기 (2GB)
료구를 공 -> 바 돌 공 면 memtable들 minor compaction 다.
그러나 compaction는 모든 되므로 로그는 다.
10.1. Minor Compaction ¶
memtable 더 기 때 SSTABLE로 변. 로 DFS 다.
- 리
- memtable게 당된 메모리를 다 더 기를 때
- 밋로그게 당된 량 다 더 기를 때
- memtable게 당된 메모리를 다 더 기를 때
10.2. Major Compaction ¶
SSTABLE들 병 근 기록만 남긴다.
client 기 답
client 기 답
- ISSUE
- SSTABLE 병 기?
- major compaction 면 SSTABLE 1개가되나?
- SSTABLE 병 기?
12.1. 기능명 ¶
- 가 다되 감는 ?는 로 를 결다.
- ISSUE
- 다 떻게 감?
- 가 로 를 결?
- 다 떻게 감?
- ISSUE
- 로 린다
- ISSUE : 가 를 리?
- 가? TS가?
- 가? TS가?
- ISSUE : 가 를 리?
- 는 Locker TS리를 다.
- 는 Locker 루블릿 보를 다.
- 는 TS들게 블릿 리를 다.
13.1. 기능명 ¶
- 블릿 기가 200MB를 면 major compaction
- 블릿 split 는 반드 sort되 다.
- 블릿 split 는 반드 sort되 다.
- split다
- SSTABLE 논리로 된다
- 러 블릿 나 SSTABLE 다.
- ISSUE
- 나 sstable 러 블릿 공 게 다.
- merge compaction로 두개 sstable만들면 sstable 복를 막 다.
- 나 sstable 러 블릿 공 게 다.
- 러 블릿 나 SSTABLE 다.
17. 블릿 ¶
블릿 관리는
- 블릿
- 밋로그
- 블릿
- 기능
- 보 록 (Locker)
- 블릿 ()
- heartbeat 보내기 ()
- 블릿 (블릿)
- 블릿 병 (블릿)
- 블릿 데 기 (라)
- 블릿 데 기 (라)
- 블릿 리 달기(블릿 )
- 블릿 리 기 (블릿 )
- 밋로그 기 (DFS)
- 보 록 (Locker)
18. ¶
러 관리
- 블릿 보/timeout 리
- 블릿 ID 리
- 블릿 보/timeout 리
- 기능
- 보(ip, port) 록 (Locker)
- 블릿 규(또는 ) 감 (Locker)
- 블릿 (블릿 )
- hearbeat , 기 (블릿 )
- 로드밸런 (블릿 )
- 보(ip, port) 록 (Locker)
19. 라 ¶
데 기/기
Locker나 블릿 근 라 API로 다.
Locker나 블릿 근 라 API로 다.
- root tablet
- meta tablet 블럭
- root tablet
- 기능
- root tablet (Locker)
- 라 api
- 라 api
- 데 기 (블릿 )
- 라 api
- 라 api
- 데 기 (블릿 )
- 라 api
- 라 api
- root tablet (Locker)