- LSM Tree + SSTable
LSM: Log Structured Tree SSTable: Sorted String Table
로그 추가 방식의 데이터베이스 쓰기/갱신 발생시 실제로 그 데이터를 찾아서 삭제하는게 아닌 데이터를 추가하는 방식을 통해 처리됨
구성 요소
- wal(write ahead log): 장애 나도 복구 가능하게 먼저 로그에 기록
- memtable: 메모리 기반의 데이터 저장소
- sstable: 디스크 기반의 데이터 저장소
쓰기 흐름
- wal에 데이터 추가
- memtable에 데이터 추가
- memtable이 가득 차면 sstable로 변환
- sstable이 가득 차면 디스크에 저장
bloom filter sparse index compaction