Categories: 정보관리기술사

제136회 정보관리기술사 3교시 2번 — Lambda·Kappa 아키텍처와 Kafka·Flink Exactly-Once

정보관리기술사 · 136회 3교시 · 2번 · 배점 25점

제136회 정보관리기술사 3교시 2번

서술형 | 25점
[문제] 빅데이터 처리를 위한 람다(Lambda) 아키텍처와 카파(Kappa) 아키텍처의 개념·구성 요소·장단점을 비교 설명하시오. 또한 실시간 스트림 처리 시스템(Apache Kafka, Apache Flink)의 핵심 특성과 정확히 한 번(Exactly-Once) 처리 보장 메커니즘을 서술하고, 현대 데이터 플랫폼 구축 시 아키텍처 선택 기준을 제시하시오.

1. Lambda 아키텍처

Lambda 아키텍처는 Nathan Marz가 제안한 빅데이터 처리 패턴으로, 배치 레이어(Batch Layer), 스피드 레이어(Speed Layer), 서빙 레이어(Serving Layer)의 3계층으로 구성된다.

레이어 역할 기술 스택
Batch Layer 전체 히스토리 데이터 재처리, 정확성 우선, 높은 레이턴시(수 시간) Hadoop MapReduce, Apache Spark
Speed Layer 실시간 스트림 처리, 최신 데이터 보완, 낮은 레이턴시(수 초) Apache Storm, Apache Flink, Kafka Streams
Serving Layer 배치 뷰 + 실시간 뷰 병합, 저지연 쿼리 응답 Apache Druid, HBase, Cassandra

장점: 결함 허용성 높음, 정확성 보장, 재처리 가능
단점: 동일 로직을 배치·스트림 두 곳에 구현해야 하는 코드 중복, 운영 복잡도 높음

2. Kappa 아키텍처

Kappa 아키텍처는 Jay Kreps(Kafka 창시자)가 제안한 단순화된 아키텍처로, Lambda의 배치 레이어를 제거하고 스트림 처리만으로 모든 데이터를 처리한다. Kafka의 오프셋(Offset) 기반 리플레이 기능을 활용하여 재처리를 구현한다.

Lambda Architecture Data Source Batch Layer Speed Layer Serving Layer vs Kappa Architecture Data Source (Kafka) Stream Only (Flink/Kafka) Serving 비교 Lambda: 배치+스트림 병행, 코드 중복, 높은 일관성 Kappa: 스트림만, 단순화, Kafka 리플레이로 재처리, 운영 간소화

장점: 코드 단일화, 운영 간소화, 빠른 개발
단점: 대규모 배치 처리 성능이 Lambda보다 낮을 수 있음, Kafka 의존도 높음

3. Apache Kafka와 Apache Flink 핵심 특성

시스템 특성 핵심 기능
Apache Kafka 분산 이벤트 스트리밍 플랫폼. 높은 처리량, 낮은 레이턴시, 영구 로그 저장 토픽·파티션·컨슈머 그룹, 오프셋 기반 재소비, KRaft(ZooKeeper 제거), Kafka Streams
Apache Flink 상태 저장(Stateful) 스트림 처리 엔진. 진정한 스트리밍(micro-batch 없음) 이벤트 시간 처리, 워터마크, 체크포인트, Savepoint, 세션/텀블링/슬라이딩 윈도우

4. Exactly-Once 처리 보장 메커니즘

  • Kafka Exactly-Once: 프로듀서 멱등성(Idempotent Producer, enable.idempotence=true) + 트랜잭션 API(begin/commit/abort) 조합. 트랜잭션 코디네이터가 오프셋·메시지를 원자적으로 커밋
  • Flink Exactly-Once: 분산 스냅샷(Chandy-Lamport 알고리즘 기반 체크포인트) + 2단계 커밋(Two-Phase Commit, 2PC) 프로토콜로 소스·싱크 모두 정확히 한 번 처리 보장
  • 핵심 개념: At-Most-Once(유실 허용) < At-Least-Once(중복 허용) < Exactly-Once(유실·중복 모두 방지)

5. 아키텍처 선택 기준

선택 기준 Lambda 권장 Kappa 권장
데이터 특성 대규모 히스토리 재처리 빈번 스트리밍 중심, 배치 필요 적음
팀 역량 배치·스트림 모두 전문가 보유 스트림 처리 전문 팀 보유
복잡도 허용 높은 일관성 요구(금융·의료) 빠른 개발·운영 간소화 선호
인프라 비용 Hadoop 클러스터 이미 보유 시 클라우드 관리형 Kafka 사용 시
[ 결론 ]

Lambda 아키텍처는 배치와 스트림을 병행하여 높은 정확성을 보장하지만 코드 중복이 단점이다. Kappa는 Kafka 리플레이를 통해 배치 레이어를 제거하여 단순화를 달성한다. Flink의 체크포인트와 Kafka의 트랜잭션으로 Exactly-Once를 보장하며, 현대 플랫폼에서는 Kappa 아키텍처가 주류를 이루고 있다.

zerg96

Recent Posts

충격! 코스피 8% 폭락에 SK텔레콤 AI 차단까지 – 한국의 AI 도박이 터졌다

코스피 8% 폭락, 서킷브레이커 발동, SK텔레콤 Claude AI 차단까지. 한국의 AI 레버리지 버블이 단 하루…

1개월 ago

당신 얼굴이 이미 쓰이고 있다… AI 딥페이크 범죄, 생각보다 훨씬 심각합니다

SNS 사진 1장으로 30초 만에 딥페이크 영상이 완성됩니다. 당신의 얼굴이 이미 범죄에 악용되고 있을 수…

1개월 ago

당신 얼굴이 이미 쓰이고 있다 — AI 딥페이크 범죄, 생각보다 훨씬 심각합니다

SNS 사진 1장으로 30초 만에 딥페이크 영상이 완성됩니다. 당신의 얼굴이 이미 범죄에 악용되고 있을 수…

1개월 ago

달러·원 환율 급등, 지금 당신이 꼭 알아야 할 것들

달러/원 환율이 급등하는 이유와 실생활 영향을 정리했습니다. 지금 당장 활용할 수 있는 환전·투자 대응 전략까지…

1개월 ago

미래에셋·미래에셋벤처투자·미래에셋생명 동반 급등, 스페이스X와 무슨 관계?

미래에셋·미래에셋벤처투자·미래에셋생명이 동반 급등한 이유는 스페이스X 상장 기대감입니다. 세 회사가 스페이스X와 어떻게 연결되어 있는지 상세히 분석했습니다.

1개월 ago

스페이스X 상장 D-데이? 일론 머스크가 절대 말 안 하는 진짜 이유

스페이스X 상장이 계속 미뤄지는 진짜 이유를 파헤쳤습니다. 화성 계획, 스타링크 분리, 국방 계약... 머스크가 절대…

1개월 ago