11년 전 Dataflow Model, 지금 보니 뭐가 맞고 뭐가 틀렸나
Key Point
스트림 처리의 기초 논문이 10년 경험 후 자신의 설계를 재평가하며, 뭐가 옳았고 뭐가 구조적 실수였는지 명백히 하는 드문 사례이기 때문이다.
핵심 요약
- Dataflow Model은 11년 전 비구조화된 스트리밍 데이터를 다루는 통합 모델(윈도우, 트리거, 워터마크, 철회)을 제시했고, 이번 VLDB Test of Time 상 수상 기념으로 자체 평가를 수행했다.
- 핵심 토대들은 잘 작동했다: 이벤트 타임의 중요성, 완성도 기다림의 무의미성, 강한 일관성 보장이 모두 시간을 견뎠다.
- 하지만 분석 인터페이스에서 중요한 실수가 있었다: 윈도우와 트리거의 의미론이 운영 문제와 뒤섞여 과도하게 강조되었고, 트리거는 사용자가 마주쳐야 할 일이 아닌 문제를 과도하게 엔지니어링한 답이었다.
- 더 깊은 진실을 놓쳤다: 스트림과 테이블은 접근 의미론만 다른 같은 객체이며, 목표 달성 메커니즘은 결국 SQL, 증분 뷰 유지, 명시적 신선도 계약 같은 데이터베이스 기법으로 진화했다.
- 완성도 원칙은 워터마크(스트림이 보이는 경우)와 스냅샷 일관성 갱신(스트림이 안 보이는 경우) 두 가지로 분화했으며, 후자가 사용자에게 더 적게 요구해 더 넓게 도달했다.