CUBIT 링크
개요

- VLDB (Very Large Database) 2024 년도에 소개된 CUBIT 논문을 읽고 정리해 보자.
Abstract
- Bitmap Index 는 적은 clustered 되어 있기 때문에 (즉, logical order 와 physical order 가 같기 때문에) Secondary index 를 B+ Tree 로 구성하였을 때보다 더 빠르고 메모리 사용량도 적게 먹는다.
- B+ Tree 로 secondary index 를 하게 되면 보통은 unclustered 이기 때문.
- 하지만 지금까지의 bitmap index 는 update 가 약점이었는데, 이 점은 최근 주목받는 HTAP 추세에는 별로 좋지 않다.
- 이 논문에서는 이 bitmap index 를 concurrent 하고 updatable 할 수 있게 만드는 방법을 제시한다.
- 그래서 논문 이름도 Concurrent Updatable BITmap (CUBIT) 이다.
- 핵심적인 설계는 다음의 세 가지 이다:
- 우선, bitmap index 의 update 를 처리하는 Horizontal Update Delta (HUD) 방법을 제시하고
- MVCC 로 snapshot 을 이용해 read-write blocking 을 해결하며
- MVCC 를 사용했을 때 항상 등장하는 version consolidation 도 latch-free 하게 처리하는 방법에 대해 소개한다.
- 이렇게 함으로써 index operation 에 대해서는 SOTA 에 비해 최대 16배의 throughput 과 220배의 latency 향상, TPC-H 에 대해서는 최대 2.7배 성능 향상, 그리고 CH-benCHmark 에 대해서는 최대 11배 성능 향상이 있었다고 한다.
목차
#draft 나중에 정리할 예정입니다.