[DE Ch-01] 데이터 파이프라인의 큰 그림: 입력이 끝나는지, 원본을 남기는지
데이터가 생겨서 쓰이기까지 다섯 단계를 거칩니다. 배치와 스트림은 속도보다 입력이 끝나는지로 갈리고 Lambda와 Kappa는 같은 계산을 몇 벌 유지하는지로 갈립니다. 메달리온 구조가 원본을 고치지 않고 남기는 이유를 DuckDB로 버그를 냈다가 되살리며 확인합니다.
검색 결과가 없습니다
제목, 태그, 카테고리로 검색
데이터가 생겨서 쓰이기까지 다섯 단계를 거칩니다. 배치와 스트림은 속도보다 입력이 끝나는지로 갈리고 Lambda와 Kappa는 같은 계산을 몇 벌 유지하는지로 갈립니다. 메달리온 구조가 원본을 고치지 않고 남기는 이유를 DuckDB로 버그를 냈다가 되살리며 확인합니다.
끝이 없는 입력에서는 "이 구간의 데이터가 다 왔다"를 알 수 없어서 watermark라는 추정을 씁니다. watermark를 늦게 잡으면 결과가 늦고 빨리 잡으면 늦게 온 데이터를 버립니다. 허용치별로 버려지는 이벤트와 결과 지연을 시뮬레이션으로 세고 조용한 파티션 하나가 전체 watermark를 붙잡는 현상과 idleness 설정을 Flink 2.3 문서와 사례로 정리합니다.
끝이 없는 스트림을 집계하려면 시간으로 잘라야 하고 두 스트림을 이으려면 시간 범위 안에서 짝을 찾아야 합니다. Flink의 텀블링, 슬라이딩, 세션, 글로벌 윈도와 trigger, evictor가 결과를 내는 시점을 정리하고 주문과 결제를 interval join으로 이을 때 범위를 넓힐수록 짝지어지는 비율과 붙들고 있어야 하는 상태가 함께 늘어나는 것을 시뮬레이션으로 셉니다.