AI 요약
Lakebase는 데이터베이스의 연산(Compute)과 스토리지(Storage)를 분리하여 기존 모놀리식 Postgres의 구조적 한계를 극복한 차세대 아키텍처입니다. 전통적인 Postgres는 시스템 장애 시 데이터 손상을 방지하기 위해 8KB 페이지 전체를 로그에 기록하는 '전체 페이지 쓰기(Full Page Write, FPW)' 방식을 사용하는데, 이는 쓰기 작업이 많은 환경에서 로그 볼륨을 최대 15배까지 팽창시키는 병목의 원인이었습니다. Lakebase는 연산 계층을 상태가 없는(Stateless) 구조로 전환하고, WAL(Write-Ahead Log)을 Paxos 기반의 분산 스토리지 쿼럼으로 스트리밍함으로써 이 문제를 해결했습니다. 로컬 디스크에 직접 페이지를 쓰지 않기 때문에 데이터 손상 위험인 'torn page' 현상이 원천적으로 차단되었으며, 결과적으로 FPW를 비활성화하여 성능을 극대화할 수 있었습니다. 이번 기술적 진보는 쓰기 성능의 5배 향상뿐만 아니라 네트워크 및 스토리지 효율성을 획기적으로 개선했다는 점에서 큰 의미를 갖습니다.
핵심 인사이트
- 성능 비약적 향상: 기존 Postgres 대비 쓰기 처리량(Write Throughput)이 5배 빨라졌습니다.
- 로그 트래픽 급감: Full Page Write(FPW) 제거를 통해 WAL(Write-Ahead Log) 트래픽을 94%나 절감했습니다.
- 지연 시간 개선: 읽기 테일 지연 시간(Read Tail Latency)을 2배 감소시켜 사용자 경험을 개선했습니다.
- 데이터 안정성 확보: 8KB 페이지가 부분적으로 기록되어 발생하는 'torn page' 현상을 구조적으로 방지했습니다.
주요 디테일
- FPW의 비효율성 해결: 체크포인트 이후 첫 수정 시 8KB 전체를 로그에 담던 관행을 없애 로그 비대화를 막았습니다.
- Stateless 연산 계층: 연산 노드가 로컬 데이터 디렉토리에 의존하지 않아 유연한 스케일링과 즉각적인 복구가 가능합니다.
- Paxos 기반 스토리지: WAL 데이터를 'Safekeepers'라 불리는 분산 쿼럼에 안전하게 보관하여 내구성을 보장합니다.
- 읽기 성능 최적화: FPW를 끄더라도 스토리지 계층에서 효율적인 페이지 재구성(Replay) 알고리즘을 적용해 읽기 속도 저하를 방지했습니다.
- 오래된 병목 제거: 지난 10년 동안 Postgres 성능의 걸림돌이었던 체크포인트 및 로그 처리 메커니즘을 현대화했습니다.
향후 전망
- 클라우드 네이티브 환경에서 Postgres의 활용도가 더욱 높아지며, 대규모 쓰기 부하가 발생하는 엔터프라이즈 시장에서의 채택이 가속화될 것입니다.
- 연산과 스토리지의 완전 분리 모델이 차세대 데이터베이스 아키텍처의 표준으로 자리 잡을 것으로 보입니다.
