모바일 광고 성과 측정 솔루션 에어브릿지(Airbridge)가 광고 클릭, 앱 설치, 구매 등 핵심 이벤트를 빠르고 정확하게 처리하기 위한 새로운 시스템 '프로젝트 디퍼렌셜(Project Differential)'을 도입하며 처리량을 10배 이상 개선했습니다. 실시간 데이터 매칭의 핵심인 이벤트 순서 보장과 유실·중복 방지라는 난제를 해결하면서도, 시스템 효율성을 극대화한 것이 특징입니다.
기존 에어브릿지 시스템은 카프카(Kafka) 메시지를 마이크로 배치(micro batch) 단위로 가져와 이벤트 종류별로 순차 처리했습니다. 이 방식은 이벤트 순서를 제어하기는 쉬웠지만, 특정 이벤트 처리가 지연되면 다른 워커(worker)들이 유휴 상태에 빠져 전체 처리 속도가 저하되는 문제가 있었습니다. 특히 워커별 처리 속도 차이나 '핫 파티션(hot partition)' 현상이 겹치면 서버를 증설해도 성능 개선이 어려웠습니다. 프로젝트 디퍼렌셜은 이러한 한계를 극복하기 위해 마이크로 배치를 없애고, 이벤트 종류별 컨슈머(Consumer)가 같은 카프카 토픽(topic)을 독립적으로 읽도록 설계했습니다. 순서 보장은 토픽 전체가 아닌 파티션(partition) 단위로 수행하며, 동일 사용자 흐름의 이벤트가 최대한 같은 파티션에 들어가도록 구성하여 비즈니스에 필요한 순서를 최적화했습니다. 또한, 뒤따르는 컨슈머가 앞선 컨슈머의 처리 위치를 추월하지 못하도록 오프셋(offset) 또는 이벤트 시간(event time) 기준으로 안전거리를 두는 메커니즘을 적용했습니다.
이러한 아키텍처 개선은 대규모 실시간 데이터 처리 시스템을 운영하는 기업들에게 중요한 시사점을 제공합니다. 완전한 전역 순서 보장이라는 이상적인 목표 대신, 실제 비즈니스 요구사항에 맞춰 '최선의 노력(best effort)'으로 순서를 지키면서도 처리량을 극대화하는 현실적인 접근 방식을 보여주기 때문입니다. 에어브릿지는 이번 개선을 통해 이벤트 유실이나 중복 없이 안정적으로 시스템을 운영하면서도, 기존 대비 10배 이상 향상된 처리 속도를 달성했습니다. 향후에는 구조 단순화, 스팟 인스턴스(Spot Instance) 종료 상황에 대응하는 적응형 흐름 제어(adaptive flow control), 그리고 순차 처리 자체를 줄이는 아키텍처 개선 등 추가적인 고도화를 검토하고 있습니다.