70
1
부
아파치 스파크를 사용한 스트림 처리의 기본
이 아키텍처에서 스파크는 컴퓨팅 엔진으로서 데이터 처리 기능을 제공하는 데 초점을 맞추고
그림의 다른 블록과의 기능 인터페이스를 가질 필요가 있다. 특히 리소스 매니저로서 얀, 메소
스, 쿠버네티스와 인터페이스하고, 많은 데이터 소스에 커넥터를 제공하는 동시에 새로운 데이
터 소스는 쉽게 확장 가능한
API
를 통해 추가하고, 출력 데이터 싱크와 통합하여 업스트림 시
스템에 결과를 제시할 수 있는 클러스터 추상화 레이어를 구현한다.
3.2
아키텍처 모델
이제 스트림 처리와 배치 처리 사이의 연결 고리에 관심을 돌려보자. 특히 스트림 처리를 할 수
있는 시스템이 있다면 배치 처리가 여전히 관련성이 있는지, 그 이유는 무엇인지 자문해볼 것
이다.
이 장에서는 두 가지 스트리밍 애플리케이션 아키텍처 개념, 즉 보완적인 결과를 얻기 위해 병렬
로 실행되는 배치 상대와 스트리밍 애플리케이션을 복제할 것을 제안하는 람다 아키텍처
Lambda
architecture
와 애플리케이션의 두 버전을 비교해야 할 경우 둘 다 스트리밍 애플리케이션이어야
한다고 주장하는 카파 아키텍처
Kappa
architecture
의 개념을 비교해볼 것이다. 그러한 아키텍처들
이 무엇을 달성하고자 하는지 자세히 살펴볼 것이며, 카파 아키텍처가 일반적으로 구현하기 쉽
고 가벼움에도 불구하고 람다 아키텍처가 여전히 필요한 경우는 무엇인지, 그리고 왜 필요한지
알아볼 것이다.
3.3
스트리밍 애플리케이션에서 배치 처리 구성 요소의 사용