- 3장 - 우수한 데이터 아키텍처 설계2024년 11월 08일
- 31514
- 작성자
- 2024.11.08.:15
데이터 아키텍처
<가역적 의사결정>
가역적 의사결정은 세상의 변화와 새로운 정보 수집에 따라서 프로세스를 조정할 수 있게 해준다.
조직이 성장함에 따라 자연스럽게 기업의 경직화가 발생하는 경향이 있는데, 이때 되돌릴 수 있는 결정 문화를 채택하면 각종 의사결정에 수반되는 위험을 줄임으로써 이러한 경직화를 극복하는 데 도움이 된다.
<트레이드오프>
데이터 엔지니어가 최적의 시스템을 설계하려면 모든 단계에서 트레이드오프를 고려해야 하며, 동시에 값비싼 기술 부채를 최소화해야 한다.
데이터 아키텍처는 기업의 진화하는 요구 사항을 지원하는 시스템 설계로, 트레이드오프에 대한 신중한 평가를 통해 유연하고 되돌릴 수 있는 결정을 내림으로써 실현된다.
우수한 데이터 아키텍처의 원칙
공통 컴포넌트를 현명하게 선택하라
데이터 엔지니어의 주요 업무 중 하나는 조직 전체에서 널리 쓸 수 있는 공통 컴포넌트와 관행을 선택하는 것이다.
공통 컴포넌트를 사용하면 팀 내에서 또는 팀 간의 공유된 지식 및 기술과 함께 민첩성을 실현할 수 있다.
공통 컴포넌트의 예로는 객체 스토리지, 버전 제어 시스템, 관찰 가능성, 모니터링 및 오케스트레이션 시스템, 처리 엔진이 있다.
장애에 대비하라
견고한 데이터 시스템을 구축하려면 설계 시 장애를 고려해야 한다.
데이터 엔지니어는 장애에 대비하기 위해 신뢰성, 가용성, RTO(복구 시간 목표), RPO(복구 시점 목표)를 고려해야 한다.
확장성을 위한 아키텍처를 설계하라
데이터 시스템의 확장성을 위해 스케일 업이나 스케일 다운이 가능하도록 설계해야 한다.
탄력적 시스템은 부하에 따라 동적으로 확장할 수 있다.
아키텍처는 리더십이다
데이터 아키텍트는 기술의 결정과 아키텍처 설명을 담당하며, 효과적인 리더십과 교육을 통해 이러한 선택 사항을 전파할 책임이 있다.
항상 아키텍처에 충실하라
아키텍트의 임무는 기본 아키텍처(현재 상태)에 대한 깊은 지식을 개발하고, 목표 아키텍처를 개발하며, 아키텍처 변경의 우선순위와 순서를 결정하는 시퀀싱 계획을 수립하는 것이다.
느슨하게 결합된 시스템을 구축하라
2002년에 제프 베이조스가 아마존 직원들에게 보낸 베이조스 API 선언문으로 알려진 이메일을 참고하여, 기술과 인간 시스템을 모두 느슨하게 결합하면 효율적으로 협업할 수 있다.
되돌릴 수 있는 의사결정을 하라
아키텍처를 단순화하고 민첩성을 유지하려면 돌이킬 수 있는 의사 결정을 목표로 삼아야 한다.
데이터 아키텍처 전반에 걸친 기술의 분리/모듈화 등의 변화 속도를 고려할 때, 항상 현재에 적합한 최고의 솔루션을 선택하도록 노력해야 한다.
또한 환경의 진화에 따라 업그레이드하거나 더 나은 방법을 채택할 수 있도록 준비하자.
보안 우선순위를 지정하라
모든 데이터 엔지니어는 자신이 구축하고 유지 관리하는 시스템의 보안을 책임져야 한다.
핀옵스를 수용하라
핀옵스는 데브옵스와 재무팀 간의 협력적인 업무 관계를 통해 인프라 비용 효율성을 높이고 궁극적으로는 클라우드 환경의 수익성을 높인다.
데이터 아키텍처의 사례 및 유형
데이터 웨어하우스
데이터 웨어하우스는 보고 및 분석에 사용되는 중앙 데이터 허브로, 가장 오래되고 잘 확립된 데이터 아키텍처의 하나다.
데이터 웨어하우스 아키텍처는 조직과 기술 두 가지 유형으로 나눌 수 있다.
<조직 데이터 웨어하우스 아키턱처>
조직 데이터 웨어하우스 아키텍처는 특정 비즈니스 팀의 구조 및 프로세스와 관련된 데이터를 구성한다.
조직 데이터 웨어하우스 아키텍처의 주요 특징은 다음과 같다.
- OLTP에서 OLAP 분리
- 데이터 중앙 집중화 및 구성
<기술 데이터 웨어하우스 아키텍처>
기술 데이터 웨어하우스 아키텍처는 MPP와 같은 데이터 웨어하우스 기술적 본질을 반영한다.
MPP는 대량의 데이터를 병렬로 스캔하도록 최적화되어 있어 고성능 집계 및 통계를 수행할 수 있는 것을 말한다.
<데이터 마트>
데이터 마트는 단일 하위 조직이나 부서 또는 비즈니스 라인에 초점을 맞춰 분석 및 보고서를 제공하도록 설계된 웨어하우스의 한층 더 정교한 하위집합이다.
데이터 마트가 필요한 이유는 다음과 같다.
- 데이터 마트는 분석과 보고서 개발자가 데이터에 더 쉽게 접근할 수 있도록 한다.
- 데이터 마트는 초기 ETL 또는 ELT 파이프라인이 제공하는 것보다 더 많은 변환 단계를 제공하므로 성능이 향상된다.
데이터 레이크
데이터 레이크는 스토리지와 컴퓨팅이 긴밀하게 연결된 단일 데이터 웨어하우스에 의존하는 대신, 모든 크기와 유형의 방대한 데이터를 저장할 수 있다.
원하는 데이터 처리 기술을 선택해 데이터를 쿼리하거나 변환할 수 있다는 장점이 있다.
하지만 스키마 관리, 데이터 카탈로그 작성 및 검색 도구가 거의 없는 상태에서 관리 불가능한 크기로 증가한다는 단점이 있다.
데이터 레이크하우스
데이터 레이크하우스는 데이터 웨어하우스에서 볼 수 있는 제어, 데이터 관리, 데이터 구조를 통합하는 동시에, 객체 스토리지에 데이터를 저장하고 다양한 쿼리 및 변형 엔진을 지원한다.
특히 데이터 레이크하우스는 단순히 데이터를 쏟아붓기만 하고 갱신하거나 삭제하지는 않는 본래의 데이터 레이크에서 크게 벗어난 ACID 트랜잭션을 지원한다.
모던 데이터 스택
모던 데이터 스택의 주요 목표는 클라우드 기반의 플러그 앤 플레이 방식과 사용하기 쉬운 기성 구성 요소를 써서 모듈식이면서도 비용 효율적인 데이터 아키텍처를 구축하는 것이다.
이러한 구성 요소에는 데이터 파이프라인, 스토리지, 변환, 데이터 관리/거버넌스, 모니터링, 시각화 및 탐색이 포함된다.
람다 아키텍처
기술의 발전에 따라 스트리밍 데이터 관련 작업의 인기가 폭발적으로 높아졌다.
이에 따라 데이터 엔지니어는 배치 및 스트리밍 데이터를 단일 아키텍처로 조정하는 방법을 찾아야 했다.
람다 아키텍처에서는 배치, 스트리밍 및 서빙 등의 시스템이 서로 독립적으로 작동한다.
하지만 코드베이스가 서로 다른 여러 시스템을 관리하기란 말 그대로 매우 어려운 작업으로, 조정하기 어려운 코드와 데이터들 때문에 오류가 발생하기 쉬운 시스템을 만들 수 있다.
데이터 흐름 모델, 통합 배치, 스트리밍
배치 및 스트림 처리 관리의 주요 문제 중 하나는 여러 코드 경로를 통합하는 것이다.
이를 위해 구글은 데이터 흐름 모델과 이 모델을 구현하는 아파치 빔 프레임워크를 개발했다.
데이터 흐름 모델의 핵심 개념은 다양한 유형의 윈도우에서 집계가 수행되므로 모든 데이터를 이벤트로 간주하는 것이다.
'Book > 견고한 데이터 엔지니어링' 카테고리의 다른 글
5장 - 수명 주기 1단계 원천 시스템에서의 데이터 생성 (0) 2024.11.15 4장 - 데이터 엔지니어링 수명 주기 전체에 걸친 기술 선택 (1) 2024.11.13 2장 - 데이터 엔지니어링 수명 주기 (2) 2024.11.01 1장 - 데이터 엔지니어링 상세 (0) 2024.10.31 다음글이전글이전 글이 없습니다.댓글