Courses
0에서 시작해 실무 감각까지 — 진짜 스트림 처리 엔진 코스
5일 (하루 2~3시간 기준) · 5개 phase · 17개 스텝
연관 기술: kafka spark
아래 질문에 스스로 답해보세요 — 채점하지 않는 자가 진단용입니다. 이미 아는 내용이면 관련 스텝을 빠르게 넘어가도 좋습니다.
클러스터에서 잡을 여러 노드에 나눠 병렬로 처리한다고 할 때, 왜 하나의 큰 서버 대신 여러 대의 작은 서버로 나눠 처리하는지 이유를 설명할 수 있나요?
분산 처리의 기본 동기(처리량 확장 + 내결함성)를 이미 아는지 확인 — 알면 Day 1의 아키텍처 설명을 빠르게 통과시킬 수 있다
"배치 처리"와 "스트림(실시간) 처리"의 차이를 한 문장으로 설명한다면?
이 코스 전체의 전제가 되는 배치 vs 스트리밍 구분을 이미 아는지 확인
센서가 오전 9시에 데이터를 만들었는데 네트워크 지연 때문에 서버에는 9시 5분에 도착했습니다. 이 데이터를 "9시 데이터"와 "9시 5분 데이터" 중 어느 쪽으로 취급해야 할까요? 왜 그렇게 생각하나요?
이벤트 시간(event time) 개념의 직관을 이미 갖고 있는지 확인 — Day 2 후반부 속도를 좌우하는 핵심 질문
Kafka를 써보셨거나 개념(토픽/파티션/컨슈머 그룹)을 알고 계신가요?
Kafka Streams/Spark Structured Streaming과 비교하며 진행할지, 처음부터 설명할지 결정
스트리밍 잡이 처리 도중 서버 장애로 죽었다가 재시작됐습니다. 이때 "같은 데이터를 두 번 처리하는 것"을 막으려면 어떤 정보가 어딘가에 저장되어 있어야 할 것 같나요?
장애복구/exactly-once에 대한 직관을 확인 — Day 3의 체크포인트 학습 속도에 반영
마이크로배치와 진짜 스트림 처리의 차이, Flink의 기본 아키텍처(개인 PC 기준), Kafka Streams와의 포지셔닝 차이를 설명할 수 있다
DataStream API의 기본 변환, keyBy가 상태 관리와 어떻게 연결되는지, event time과 processing time의 차이를 설명할 수 있다
watermark가 지연-정확도 트레이드오프를 어떻게 관리하는지, 윈도우가 언제 닫히는지, keyed state와 체크포인트가 각각 무엇을 보장하는지 설명할 수 있다
로컬 Docker 환경에서 Flink+Kafka를 띄우고, 지금까지 배운 windowed aggregation·watermark·checkpoint를 실제 코드와 UI로 확인할 수 있다
Flink SQL/Table API가 DataStream API와 어떤 관계인지, 언제 Flink를 골라야 하는지 실무 기준으로 판단할 수 있다