
FMS(Fleet Management System) 주행이벤트 파이프라인 개선기
두줄요약
주행 이벤트의 순서 보장과 대량 IoT 데이터 처리를 위해 파이프라인을 두 차례 개선했습니다. Kafka·NoSQL 기반 비동기 구조와 차량별 순차 처리로 정합성과 확장성을 높였습니다.
문제 상황
- 차량별 선후행 관계가 중요한 주행 이벤트에서 IoT 프로토콜 간·내 데이터 도착 순서 미보장
- RDB 적재 후 스케줄링 방식의 주기적 처리로 유휴 시간 리소스 낭비와 특정 시점 부하 집중
- API 기반 MSA에서 배포·장애 시 데이터 연속성, 중복, 누락 관리 필요
해결 방법
- 초기 단계에서 IoT 데이터를 RDB에 먼저 적재하고 주기적 쿼리로 순서 제어 기반 마련
- 이후 RDB·스케줄링·API 중심 구조를 NoSQL·Kafka 기반 실시간 이벤트 파이프라인으로 전환
- 비동기 드라이버로 비동기 구간 확장, TTL 인덱스로 시계열 원천 데이터 보관량 관리
구조와 흐름
- 차량별 Check-In & Check-Out으로 한 번에 하나의 데이터 Chunk만 순차 처리
- Check-In Expire 정책으로 무한 대기 방지, 멱등 설계로 적재부터 이벤트 발행까지의 라이프사이클 관리
- 이벤트 조합 규칙 순회와 실차 데이터 시뮬레이션으로 선후행 이벤트 정합성 검증
성능/운영 포인트
- 배치성 작업 제거로 시간대별 리소스 집중 최소화와 서버 역할 분리
- Kafka 메시지 큐로 서버 일시 중단 시 복구 유연성 확보
- NoSQL 스케일 아웃과 이벤트 기반 확장으로 대량 데이터 및 연계 서비스 대응력 강화


