핵심 요약
NAVER D2의 Logiss 기반 지능형 로그 파이프라인은 단일 토폴로지의 배포 한계와 트래픽 편차를 극복하기 위해 Storm-Kafka-Client의 assign를 subscribe로 변경하고 멀티 토폴로지와 sticky assignor를 도입했습니다. 장애 테스트에서 지연은 75115초에서 3090초로 감소했으나 중복은 11%에서 36%로 증가하는 상반된 양상을 확인했습니다.
구현 방법
- Storm-Kafka-Client 2.x에서 KafkaSpout의 assign를 subscribe로 전환
- 멀티 토폴로지 도입 및 range assignor/ sticky assignor 적용
- 커스텀 스케줄러로 supervisor별 균형 배치 구현
주요 결과
- 전체 파티션 지연: 75115초 → 3090초로 감소
- 데이터 중복: 약 11%에서 약 36%로 증가
- sticky assignor 및 커스템러를 통한 균형화 시도

