Amazon DynamoDB 란?
- 완전관리형 서비스, 고가용성, 여러 리전에 걸쳐 복제 가능
- NoSQL Database - join X, aggregation X
- 방대한 워크로드, 분산 DB에 적절하다 -> 수평 확장, 용량이 크다
- 초당 수백만의 리퀘스트가 오고, 수 조의 행, 수백 TB의 용량이 있다.
- Dynamo API는 성능이 빠르고 일관적이다. => 내부에서 프로비저닝 할 필요가 없다.
- IAM과 완전 통합 -> 보안성, 인증, 관리
- DynamoDB Streams로 event driven programming이 가능하다.
- 저렴한 가격, 오토 스케일링 가능
- Standard & Infrequent Access (IA) Table Class
DynamoDB 기초
- 데이터베이스가 아니다!
- 테이블로 이루어져 있다.
- 각각의 테이블은 Primary Key를 가지고 있으며, 테이블이 생성될 때 결정된다.
- 각각의 테이블은 무한개의 아이템(=행)으로 이루어질 수 있다.
- 각각의 아이템은 attribute(속성)을 가지고 있으며, 계속해서 증가할 수 있고 null값일 수도 있다.
- 아이템의 최대 크기는 400KB로, 매우 작다. 따라서 큰 object를 저장하기에는 적합하지 않다.
- 데이터 타입 : Scalar Type, Document Type, Set Type
Read/Write Capacity Mode
- 프로비저닝 할 필요가 없으므로, read/write 처리량만 정의하면 된다.
Provisioned Mode(기본)
- 초당 read/write할 수를 특정한다.
- 용량을 미리 정한다(plan capacity) - 예측이 가능하다.
- 프로비전된 Read Capacity Units(RCU)와 Write Capacity Units(WCU) 당 지불한다.
- RCU, WCU에 대해 오토 스케일링 모드를 추가할 수 있다.
On-Demand Mode
- 워크로드에 따라 read/write가 자동적으로 scale up/down 한다.
- 모든 읽기와 쓰기를 자동으로 허용한다.
- 용량을 미리 정할 필요가 없다.
- 사용한 만큼 지불하기 때문에, 더 비싸다
- 예측하기 어려운 워크로드에 적절하다.
'Public Cloud > AWS' 카테고리의 다른 글
AWS - 스토리지 추가 기능 (0) | 2022.07.11 |
---|---|
AWS - 모니터링 및 감사 (0) | 2022.07.05 |
AWS - CloudFront (0) | 2022.07.04 |
AWS : Load Balancing (0) | 2022.06.29 |
AWS : Serverless 개요, AWS Lambda (0) | 2022.06.27 |