스트리밍 수집 도구의 마지막 조각은 Amazon MSK(Managed Streaming for Apache Kafka) 다. Kinesis가 AWS 고유의 스트리밍 서비스라면, Kafka는 업계 표준 오픈소스 스트리밍 플랫폼이고 MSK는 그 Kafka를 AWS가 관리형으로 제공하는 서비스다.
핵심 질문은 어제와 같다: "Kinesis가 있는데 왜 MSK인가? 언제 무엇을 쓰나?" 오늘은 Kafka의 기본 개념(토픽·파티션·컨슈머 그룹)을 잡고, Kinesis와 정확히 어디서 갈리는지를 본다. DEA-C01에서 이 비교는 거의 반드시 나온다.
Kafka에서 데이터는 토픽(topic) 단위로 분류된다. 토픽은 "주제별 로그"라고 보면 된다(예: orders, clicks, sensor-data). 각 토픽은 다시 여러 파티션(partition) 으로 쪼개진다. 파티션이 Kafka의 병렬성·처리량 단위다.
토픽: orders
├─ 파티션 0: [msg0][msg1][msg2] ... ← append-only 로그, 순서 보장
├─ 파티션 1: [msg0][msg1] ...
└─ 파티션 2: [msg0][msg1][msg2][msg3] ...
눈치챘겠지만 구조가 KDS와 거의 같다. 토픽 ≈ 스트림, 파티션 ≈ 샤드다