
358
클라우드 네이티브 애플리케이션 디자인 패턴
8.5
데이터 관리
4
장에서도 살펴보았듯이 클라우드 네이티브 데이터 관리의 핵심 요건 중 하나는 마이크로서비
스 수준에서 데이터를 분산해서 관리하는 것입니다. 이 조건을 만족해야만 마이크로서비스들
간의 결합도를 낮출 수 있을 뿐 아니라, 마이크로서비스 개발팀이 더 적합한 데이터 관리 기법
이나 데이터 스토어를 자유롭게 선택할 수 있기 때문입니다. 온라인 쇼핑몰 애플리케이션 설계
에는 이전에 살펴보았던 데이터 관리 요구사항들을 이 책에서 살펴본 내용 그대로 적용하도록
하겠습니다. 그리고 전체 애플리케이션의 관점에서 어떻게 데이터 관리가 이루어지는지 알아
보는 것보다는, 특정 상황에서 데이터 관리를 어떻게 하는지 중점적으로 살펴보겠습니다.
[그림
8
-
4
]는 상품 목록과 재고 서비스에서 어떻게 데이터를 관리하는지 보여주고 있습니다.
재고 서비스는 재고 목록과 수량을 관리하기 위해 별도의 관계형 데이터베이스를 사용하고 있
으며, 상품 목록 서비스의 경우
NoSQL
데이터베이스를 사용해서 데이터를 관리하고 있습니
다.
CQRS
와 같은 패턴을 사용해서 상품 목록 서비스를 여러 개의 독립적인 서비스들로 나눌
수 있습니다. 여기에서는 명령 및 질의 요소로 나눌 수 있겠죠. 명령 부분은
RDBMS
를 사용하
고 질의 부분은
NoSQL ...