RDS
RDS (Relational Database Service)
RDS: SQL을 언어로 사용하는 managed database service (완전 관리형)
- 프로비저닝, OS 패칭 전부 자동
- 지속적 백업 㖅 특정 시간으로 복구할 수 있음! (Point in Time Restore)
- 모니터링 대시보드도 있음
- read 레플리카
- multi AZ 셋업 가능
- Scaling capability
- EBS 스토리지 사용
RDS 특징
RDS Read Replica
- 읽기기 전용 복제본
- Read Capabilities를 늘릴 수 있다.
Q: RDS를 사용하고 있는 회사에서 하루/한달에 한번씩 통계용으로 데이터를 읽어오는데
성능에 문제가 생기는 것을 발견했다. 이때의 솔루션은?A: RDS Read Replica
Storage Auto Scaling 기능
- Horizontal scaling
- 데이터베이스 인스턴스의 수를 증가/감소 시킴
- 읽기 부하가 높을 때 추가적인 read replica를 자동으로 생성하여 부하 분산
Multi AZ
- High Availability
- 다중 AZ 설정 시 AZ별 인스턴스에는 마스터 DB로부터 Sync 복제가 일어난다.
- 여러개의 RDS 이지만, 하나의 DNS만 바라본다
Multi AZ vs Read Replica / Auto Scaling
- Multi AZ = standby -> 대기하는 것
- High Availability를 위해 장애를 대비하는 용도
- Active-active: 여러 개의 자원이 동시에 서비스(active) 되는 것
- Active-standby: 하나의 서버가 대기 (standby) 상태에 있음
DynamoDB
DynamoDB
DynamoDB - AWS에서 만든 DBMS
- managed serverless NoSQL DB
- key-value store (키-값 데이터베이스)
- put(key, value): key-value 쌍을 저장소에 저장하는 연산
- get(key): key에 대응되는 value 조회
DynamoDB 구조
- 테이블: 데이터를 저장하는 기본 단위
- 아이템: 테이블 내의 개별 레코드 (== RDB의 row)
- Primary Key = Partition key + Sort key (키)
- Attribute (값)
테이블의 아이템들이 여러 서버에 partition으로 나눠서 분산 저장 -> 조회할 때 어떤 partition에 있는지 알아야함
DynamoDB 장점
- key/value 스토어, TTL 기능 지원
- HA, Multi AZ, Read and Writes are decoupled, transaction capability
- DAX 클러스터를 읽기 캐시로 생성할 수 있다. -> ms 단위의 latency
- IAM을 통한 보안, 인증, 인가
- Event Processing: DynamoDb 스트림과 Lambda/Kinesis Data Streams를 통합할 수 있음.
- 따라서 Dynamo 테이블의 모든 변화에 따라 함수를 호출할 수 있다.
- Global Table 기능: active-active 설정이 가능하다.
정리
RDS
- Relational Database Service
- SQL을 쿼리 랭귀지로 사용하는 managed 데이터베이스 서비스
DynamoDB
- AWS의 독점 기술, managed / serverless / NoSQL DB
- key-value store
'ASC' 카테고리의 다른 글
6. Storage - S3 & CloudFront (0) | 2023.11.23 |
---|---|
Computing - Lightsail & EC2, Auto Scaling & ELB (0) | 2023.11.08 |
3. VPC & Route53 (0) | 2023.11.01 |
2. Container & Docker + CI/CD (1) | 2023.10.29 |
1. 클라우드 컴퓨팅 개요 & IAM (0) | 2023.09.29 |