애플리케이션은 결국 데이터를 어딘가에 저장한다. 그런데 AWS 콘솔을 열면 데이터베이스 카테고리에만 RDS, Aurora, DynamoDB, ElastiCache, Redshift 같은 이름이 줄줄이 나온다. 처음 보면 "DB는 그냥 하나면 되는 거 아냐?"라고 생각하기 쉽지만, 시험에서도 실무에서도 핵심은 "이 데이터에는 어떤 DB가 맞느냐"를 고르는 것이다.
오늘은 다섯 가지 대표 데이터베이스 서비스를 외우는 게 아니라, 각자가 어떤 문제를 풀려고 태어났는지를 그림으로 잡는다. 그 그림이 잡히면 "고객 주문 데이터", "장바구니 임시 저장", "한 달치 매출 분석" 같은 시나리오에서 답이 자연스럽게 보인다.
먼저 큰 틀부터. AWS의 데이터베이스 서비스는 거의 전부 **관리형(managed)**이다. 즉 서버 설치, OS 패치, 백업, 장애 복구 같은 귀찮은 운영 일을 AWS가 대신해준다. 우리가 직접 EC2에 MySQL을 깔 수도 있지만, 그러면 패치도 백업도 전부 내 책임이 된다.
💡 관련 이론: 이것이 Day별로 반복되는 공동 책임 모델의 데이터베이스 버전이다. RDS 같은 관리형 서비스를 쓰면 엔진 패치·백업·복제 같은 "인프라 운영"은 AWS 책임으로 올라가고, 고객은 데이터 모델링·접근 권한·쿼리 같은 "데이터 안의 일"에 집중한다.