도입
1 / 14DynamoDB — NoSQL 데이터 모델링
관계형 데이터베이스(RDB)가 초당 100만 건을 처리해야 한다면 어떻게 될까요? 수십 개의 서버에 데이터를 분산하고, 복제하고, 샤딩을 수동으로 관리해야 합니다. 그것이 2004년 Amazon이 직면한 문제였습니다. 쇼핑 시즌마다 트래픽이 폭발하고, Oracle DB는 한계에 부딪혔으며, 엔지니어링 팀은 인프라와 씨름하느라 새로운 기능을 만들 시간이 없었습니다.
그 해결책으로 Amazon 내부 엔지니어들이 만든 것이 Dynamo였습니다. 2007년 논문으로 세상에 공개되고, 2012년 클라우드 서비스 Amazon DynamoDB로 출시된 이 데이터베이스는 지금 Amazon.com의 쇼핑 카트, Prime Video, 그리고 수천 개의 SaaS 서비스를 떠받치고 있습니다.
이 레슨을 마치면 다음을 이해할 수 있습니다:
- 관계형 DB가 대규모에서 어떤 한계에 부딪히는지, 그리고 NoSQL이 그것을 어떻게 해결하는지
- DynamoDB의 핵심 개념 — 파티션 키, 정렬 키, 속성, 단일 테이블 디자인
- 읽기/쓰기 용량 모드와 RCU/WCU 계산 방법
- 쿼리 vs 스캔의 차이, 그리고 왜 스캔은 위험한가
- GSI/LSI 보조 인덱스로 다양한 접근 패턴을 지원하는 방법
- DynamoDB 테이블을 직접 만들고 데이터를 넣어 보는 실습

사전 지식: 이 레슨은 Lambda 기초와 API Gateway 개념을 완료한 분을 대상으로 합니다. SQL과 관계형 데이터베이스(테이블, 행, 열, 조인)의 기본 개념을 알고 있으면 NoSQL과의 차이점을 더 명확하게 이해할 수 있습니다.
← → 이동F 집중