☁️
AWS Databases
July 15, 2024
AWS Databases
AWS RDS

- SQL 지원
- Postgres
- MySQL
- MariaDB
- Oracle
- Microsoft SQL Server
- Aurora (AWS 소유)
💡 EC2 대신 RDS에 데이터베이스를 배포하는 이유
- 자동화된 관리 작업(자동 백업, 자동 패치, 모니터링 및 알림)
- 고가용성 및 내구성(다중 AZ 배포, 자동 장애 조치)
- 확장성 및 성능 최적화(수직 확장, 읽기 복제본, 자동 스토리지 확장)
RDS Usecase Example
ELB가 EC2들에 부하를 분산하고, 각 EC2 들은 통일된 RDS에서 데이터 읽기/쓰기 작업을 수행한다.
Amazon Aurora

- Aurora는 2가지 데이터베이스 기술을 지원한다.
- PostgreSQL
- MySQL
- RDS에 비하여 MySQL에서 5배, PostgreSQL에서 3배 더 나은 성능
- 저장 공간 자동 확장 기능
- 10GB 단위로 최대 128TB까지 자동 확장
- RDS보다 20%정도 더 비싸지만 더 효율적임.
- 서버리스 가능
- 관리가 필요 없음
Aurora Architecture
클라이언트는 Proxy Fleet을 통해 데이터베이스에 접근하며, 확장이 필요한경우 데이터베이스가 자동으로 확장된다.
RDS 배포 옵션
Read Replicas

그림은 2개의 Read Replica를 생성하여 어플리케이션에서 읽기작업을 병렬적으로 수행할 수 있도록 한다. 다만 쓰기 작업은 메인 RDS인 하나에서 수행된다. 치대 5개의 Read Replica를 만들 수 있다.
Multi-AZ

고가용성을 위해 메인 RDS가 충돌하면 장애 조치가 트리거되어 FailoverDB를 사용하게 된다. 단 하나의 AZ만 Failover AZ로 설정할 수 있다.
Multi-Region
이 또한 Read Replica를 다룬다. 다만 서로 다른 리전에서 실행된다는 것이 다르다.