114
2
부
구조적 스트리밍
구조적 스트리밍 모델은 이동 중에 데이터를 처리하기 위한 데이터셋
SQL
지향 모델의 확장이다.
●
데이터가 소스
source
스트림으로부터 도착하여 정의된 스키마가 있다고 가정한다.
●
이벤트 스트림은 무한한 테이블에 추가된 행으로 보여질 수 있다.
●
스트림에서 결과를 얻기 위해 연산을 해당 테이블에 대한 쿼리로 표현한다.
●
동일한 쿼리를 업데이트 테이블에 지속적으로 적용하여 처리된 이벤트의 출력 스트림을 생성한다.
●
결과 이벤트는 출력 싱크
sink
에 제공된다.
●
싱크는 스토리지 시스템, 다른 스트리밍 백엔드 또는 처리된 데이터를 사용할 준비가 된 애플리케이션일 수
있다.
이 모델에서 이론적으로 제한이 없는
unbounded
테이블은 정의된 리소스 제약 조건이 있는 실제
시스템에서 구현해야 한다. 따라서 모델을 구현하려면 잠재적으로 무한한 데이터 유입을 처리하
기 위해 특정 고려 사항 및 제한 사항이 필요하다.
이러한 문제를 해결하기 위해 구조적 스트리밍은 이벤트 시간 지원, 워터마킹
watermarking
및 과
거 데이터가 실제로 얼마나 오래 저장되는지 결정하는 다양한 출력 모드와 같은 새로운 개념을
데이터셋 및 데이터프레임
API
에 도입했다.
개념적으로 구조적 스트리밍 모델은 일괄 처리와 스트리밍 처리 사이의 경계를 흐리게 하여 빠
르게 움직이는 데이터 상에서의 분석에 대한 추론의 부담을 상당 부분 제거한다.
7.1
구조적 스트리밍의 첫걸음
앞서 소스, 싱크 그리고 쿼리와 같은 구조적