
MySQL부터 S3 하이브리드 저장소까지, 멈추지 않는 성장을 뒷받침하는 독자적 TSDB 엔진 개발 전략
기하급수적으로 늘어나는 인프라 지표를 효율적으로 관리하기 위해 LY가 선택한 자체 TSDB 개발 여정과 기술적 성취를 다룬다. 오픈소스의 한계를 넘어 IMDB, Cassandra, S3를 조합한 다중 계층 아키텍처로 어떻게 비용과 성능의 균형을 잡았는지 상세한 통찰을 제공한다.
대규모 분산 환경에서 모니터링 비용 급증과 시스템 가시성 저하를 겪는 백엔드 및 인프라 엔지니어에게 필독을 권한다. 특히 데이터 생애 주기에 따른 저장 매체 분리 전략은 실무에서 비용 효율적인 아키텍처를 설계하는 데 매우 유용한 참고서가 될 것이다.
MSA 전환과 쿠버네티스 도입으로 인해 관리해야 할 지표 데이터가 기하급수적으로 증가하며 기존 MySQL 및 OpenTSDB 기반 시스템이 쓰기 부하와 저장 용량 한계에 직면했다. 특히 대규모 환경에서 태그 스키마의 경직성과 쿼리 지연 시간 증가는 실시간 모니터링의 효율성을 크게 저하시켰다.
Meta의 Gorilla 아키텍처에서 영감을 얻어 조회 패턴에 최적화된 자체 TSDB를 개발하고, IMDB, Cassandra, S3를 조합한 다중 계층 저장소 전략을 도입했다. 쓰기와 읽기 역할을 분리한 계층형 구조와 가중치 기반 부하 분산 알고리즘을 통해 데이터 수집 및 처리 효율을 극대화했다.
일간 수조 건의 지표를 안정적으로 처리하며 매년 2,000억 건 이상의 데이터 증가를 수용할 수 있는 선형적 확장성을 확보했다. 사용자에게는 기존 API 호환성을 유지하여 별도의 마이그레이션 비용 없이 성능 향상의 혜택을 제공하는 심리스한 전환에 성공했다.
Trade-off
데이터 저장소로 사용되는 Cassandra의 경우 방대한 데이터 양으로 인해 노드 리밸런싱에 수십 시간이 소요되는 운영적 제약이 발생했다. 또한 성능 최적화를 위해 시도했던 Direct I/O가 공유 스토리지의 대역폭을 과도하게 점유하는 부작용이 발견되어 B+ 트리 기반 캐시로 설계를 변경해야 했다.
특정 시점의 상태를 나타내는 수치 데이터를 타임스탬프와 결합하여 저장하고 조회하는 데 특화된 데이터베이스다.
데이터의 접근 빈도와 시급성에 따라 서로 다른 물리적 저장 매체를 계층적으로 배치하여 성능과 비용을 최적화하는 전략이다.
Meta(구 Facebook)에서 개발한 인메모리 시계열 데이터베이스 구조로, 높은 압축률과 빠른 쓰기 성능이 특징이다.




