TrailDB to Ziegel(Cgo to Go)
스토리지 엔진GoC++OLAP성능 개선마이그레이션
AI 요약
BetaAB180은 자체 OLAP 데이터베이스인 Luft의 데이터 저장을 위해 사용하던 오픈소스 스토리지 엔진 TrailDB를 직접 개발한 Ziegel로 교체한 과정을 공유합니다. 기존 TrailDB는 2019년 개발 중단으로 인한 성능 및 생산성 문제, 비효율적인 멀티코어 활용, Row 단위 데이터 저장 방식, 그리고 Go(Luft)와 C++(TrailDB)라는 두 가지 언어 사용으로 인한 개발 비효율 등의 단점을 가지고 있었습니다.
이러한 문제를 해결하기 위해 AB180은 5단계의 마이그레이션 작업을 수행했습니다. 정합성 검증을 위한 테스트 추가, 엔진 교체 인터페이스 구현, 스토리지 엔진(Ziegel) 구현 및 안정화, 성능 최적화 및 프로덕션 적용, 그리고 최종적으로 TrailDB 의존성 제거 과정을 거쳐 성공적으로 스토리지 엔진을 교체했습니다.
이 과정을 통해 인덱싱 소요 시간을 절반으로 줄이고 쿼리 성능 저하를 최소화하는 등 성능 향상을 달성했습니다.
이 글이 궁금하신가요?
원문 블로그에서 전체 내용을 확인해 보세요
원문 읽으러 가기


