Public Cloud/AWS

AWS : Serverless - DynamoDB

서머스 2022. 7. 4. 23:17

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