sayu.day
Database

MongoDB WiredTiger 스토리지 엔진 이해하기

WiredTiger의 MVCC, 캐시, 체크포인트, 성능 튜닝 포인트를 실무 중심으로 정리합니다.

발행 2025년 12월 30일1155

같은 주제에서 이어 읽기

MongoDB 샤딩(Sharding) 완벽 가이드

Database 안에서 이어지는 글

WiredTiger를 이해할 때 중요한 건 구현 디테일보다 "병목이 어디서 생기는가"입니다.

핵심 동작

  1. WAL(저널) 기록
  2. 메모리 캐시에 반영
  3. 체크포인트 시 디스크 반영

이 순서 덕분에 장애 복구와 성능을 함께 잡습니다.

알아야 할 4가지

1) 문서 수준 동시성 + MVCC

읽기/쓰기가 서로 덜 막히므로 혼합 워크로드에서 유리합니다.

2) 캐시 튜닝

캐시가 작으면 eviction 압력이 커지고 지연이 튑니다. 크면 시스템 전체 메모리 압박이 옵니다. 관측 후 조정이 필수입니다.

3) 체크포인트/저널

내구성 설정을 낮춰 TPS를 올릴 수 있지만 장애 시 손실 범위가 늘어납니다. SLO 기준으로 결정해야 합니다.

4) 압축

저장공간과 CPU의 트레이드오프입니다. 일반적으로 기본 압축에서 시작해 I/O 병목이 심할 때만 재평가하는 것이 안전합니다.

운영 체크리스트

  1. serverStatus().wiredTiger를 정기 수집
  2. eviction 지표와 write latency를 함께 관찰
  3. checkpoint 스파이크 시간대를 파악
  4. 대량 배치 작업은 평시 트래픽과 분리

결론

WiredTiger 튜닝은 단일 옵션 최적화가 아니라 캐시, 체크포인트, 저널 정책을 함께 맞추는 작업입니다.

다음 읽기

이 생각이 이어지는 방향

Database 더 보기
공유

읽은 뒤의 대화

읽은 뒤의 생각을 이어갑니다

질문, 반론, 조용한 후속 메모를 이 글 아래에 남길 수 있습니다.

sayu.day는 생각과 작업의 흔적을 천천히 정리하는 개인 출판물입니다.
직접 겪고 검토한 내용, 다시 읽을 만한 아이디어, 작업하며 남긴 메모를 모읍니다.
시간이 지난 글은 현재의 판단과 다를 수 있어 업데이트 맥락을 함께 남깁니다.

© 2026 sayu.day