반응형
/*
-- Title : Data Lambda Architecture
-- Tag : 데이터 람다 아키텍처
*/
■ 데이터 람다 아키텍처
실시간 데이터 처리를 위해 기존의 Batch Data Pipeline과 실시간 Streaming Data Pipeline이 하이브리드로 구성된 대량의 데이터 처리 개념으로 3개의 Layer로 구성됨
- Batch Layer : 모든 수신된 데이터를 배치와 실시간 레이어에 저장하고 향후 인덱싱을 위한 준비, 마스터 데이터 셋으로 원본 저장
- Serving Layer : 배치 레이어의 데이터셋이 저장되고 배치 뷰 생성
- Speed Layer : 실시간 데이터를 처리하는 레이어로 현재 인덱싱 작업에 집중, 임시적 실시간 뷰 생성
ㅁ 람다 아키텍처 활용
- 배치 뷰와 실시간 뷰의 중복 지양
- 실시간 뷰는 정기적으로 삭제 필요
- 배치 뷰와 실시간 뷰의 JOIN 방법 필요(NoSQL 경우)
■ Data Lambda Architecture 장단점
ㅁ 람다 아키텍처 이점
- 서버 관리 없음 – 소프트웨어를 설치, 유지 또는 관리할 불필요
- 유연한 확장 – 애플리케이션을 자동으로 확장하거나 용량을 조정하여 확장 가능
- 자동화된 고가용성 – 서버리스 애플리케이션에 이미 가용성과 내결함성이 내장되어 모든 요청이 성공 여부에 대한 응답을 받을 것이라는 보장
- 비즈니스 민첩성 – 변화하는 비즈니스/시장 시나리오에 실시간으로 대응
ㅁ 람다 아키텍처 단점
- 복잡성 - 일반적으로 배치 및 스트리밍 계층에 대해 두 개의 별도 코드 기반을 유지해야 하므로 디버깅 어려움
■ Data Lambda Architecture 구성 사례
ㅁ Databricks
ㅁ AWS Lambda Architecture
ㅁ CREDERA Lambda Architecture 예제
※ Kappa Architecture 참조
※ References:
- https://www.snowflake.com/guides/lambda-architecture
- https://www.databricks.com/glossary/lambda-architecture
- https://hazelcast.com/glossary/lambda-architecture/
반응형