
백엔드
Flink SQL 도입기
두줄요약
이벤트 스트리밍 처리를 위해 Flink SQL을 도입한 사례와 선택 이유를 정리했습니다. 또한 Kubernetes 기반 HA 구성, GitOps 배포, 운영 중 트러블슈팅과 모니터링 포인트를 공유했습니다.
핵심 내용
- 이벤트 스트리밍 처리를 위해 Flink SQL을 도입한 사례와 선택 배경 정리
- 레거시 모놀리식 스트리밍 앱의 운영 부담, 클러스터 구축 방식, GitOps 기반 쿼리 배포, 운영 중 트러블슈팅 경험 공유
- HA, 이벤트 타임/워터마크, 윈도우 처리, UDF/커스텀 커넥터 같은 Flink SQL의 확장성과 실무 활용 포인트 설명
선택 이유
- ksqlDB 대비 stateful 처리의 HA 동작과 리소스 효율성에서 유리한 점 검토
- Spark Structured Streaming 대비 실시간성은 좋지만 팀 경험 부족과 커스텀 싱크 작성 부담 존재
- Flink 내부 이해도가 높아 생산성과 운영 효율성 측면의 이점 기대
성능/운영 포인트
- Kubernetes 기반 Session mode와 HA 구성, S3 저장소를 활용한 복구 설정
- TaskManager 실패, 비정상 데이터, 자원 부족, 재시작 후 일부 Job 실패 등 주요 운영 이슈 대응
- numRunningJobs, CPU/메모리 사용량, busyTime, Kafka lag 같은 핵심 모니터링 지표 활용
