❐ 정리
- 1부와 2부에서는
- 분산 데이터베이스로 가기 위해 고려해야 할 모든 주요 사항을 밑바닥 부터 다뤘음.
- 하지만 1,2부에서는 애플리케이션이 단일 데이터베이스를 사용한다고 가정했음.
- 3부에서는
- 다양한 특징을 가지는 여러 데이터 시스템을 일관성 있는 하나의 애플리케이션 아키텍처로
통합하는 문제에 대해서 검토한다.
- 다양한 특징을 가지는 여러 데이터 시스템을 일관성 있는 하나의 애플리케이션 아키텍처로
❐ 레코드 시스템과 파생 데이터 시스템
➔ 데이터를 저장하고 처리하는 시스템은 크게 두 분류로 나눌수 있음.
레코드 시스템
- 믿을 수 있는 데이터 버전을 저장한다.
- 진실의 근원(source of truth)라고도 한다.
- 각 사실은 일반적으로 정규화를 거쳐 정확하게 한 번 표현된다.
파생 데이터 시스템
- 다른 시스템에 존재하는 데이터를 가져와 특정 방식으로 변환하고 처리한 결과
- 파생 데이터를 잃게 되더라도, 원천 데이터로부터 다시 생성할 수 있음.
- 대표적인 예로 캐시를 들 수 있음.
- 엄밀히 말하자면, 파생 데이터는 중복(rerdundant)라고 할 수 있음.
- 읽기 질의 성능을 높이는 데 종종 필수적 요소임.
- 대개 비정규화 과정을 통해 생성됨 (스테이킹 개발할 때 grossRewardAmount 같은거)
❐ 3부 개요
- 10장에서는
- (mapReduce와 같은) 일괄 처리 방식(batch-oriented) 데이터플로 시스템을 살펴볼 예정
- 대규모 데이터 시스템을 구축하기 위한 원리가 무엇인지 알아볼 예정
- 11장에서는
- 10장과 동일한 아이디어를 데이터 스트림에 적용해볼 예정
- 12장에서는
- 이 책의 마지막 장
- 미래에 신뢰할 수 있고 확장 가능하면 유지보수하기 쉬운 애플리케이션을 구축하기 위해서
앞서 언급한 도구들을 어떻게 사용해야 하는지에 대한 아이디어를 모색할 예정
'Book > 데이터 중심 애플리케이션 설계' 카테고리의 다른 글
| 11. 스트림 처리 (0) | 2025.11.01 |
|---|---|
| 10장. 일괄 처리(Batch Processing) (0) | 2025.10.26 |
| 9장. 일관성과 합의 (Consistency and Consensus) (0) | 2025.10.17 |
| 8장. 분산 시스템의 골칫거리(The Trouble with Distributed Systems) (0) | 2025.10.13 |
| 7장. 트랜잭션 (0) | 2025.09.29 |