Aurora
AWS에서 자체 개발한 AWS만의 RDBMS로써 MySQL 및 Postgresql 호환 가능 함
Aurora vs RDS 차이
1. Storage
- RDS MySQL: ①자신의 EBS -> ②EBS 미러링 -> ③Replication 데이터 전송 -> Replica받은쪽에서 ④EBS 저장 및 ⑤EBS 미러링 실행
- Aurora: 4/6쿼럼을 사용해 Shared Storage에 저장, Replica로 전달하는 것은 frm 및 redo log로써 네트워크 bandwidth 사용이 적고 빠름
2. 관리주체
- RDS MySQL: 관리자가 직접 관리
- Aurora: AWS가 개발해서 버전 업그레이드를 주기적으로 시행
3. Read Replica 구성
- RDS MySQL: Read Replica 구성 시 binlog 사용으로 Read뿐 아니라 Write도 같이 처리 됨
- Aurora: Shared Storage 및 redo log 사용으로 빠른 동기화 및 bandwidth 사용량 적음
Aurora Endpoint
- Cluster Endpoint(Writer Endpoint): Aurora는 Single Write Cluster이기 떄문에 Writer Instance만 접근되는 Endpoint로 FailOver되면 매핑되는 Instance가 달라짐
- Reader Endpint: Read Replica들에 접근하기 위한 Endpoint, Round Robin 방식 접근
- Instance Endpoint: 각 Instance 하나하나에 접근하는 Endpoint
- Custom Endpoint: 관리포인트에 따라 도메인형식으로 생성가능한 Endpoint
Aurora 장점
1. Failover
- RDS-MySQL 동일하게 auto failover 기능이 있고, RDS보다 빠르게 넘어감
2. 성능
3. 복제 지연 시간 단축
- 밀리세컨 단위의 지연이기 때문에 없다고 볼수 있음(Shared Storage 및 redo log 사용)
4. Cache Warm
- 캐시와 인스턴스가 분리된 구조라서 인스턴스 재시작되어도 캐싱된 데이터는 남아 있음
캐시 WarmUp(디스크 데이터를 메모리에 적재 과정)불필요
5. 무한 Storage(64TB)
- 64TB까지 자동으로 할당
- RDS-MySQL: EBS 볼륨 사이즈를 정해서 인스턴스를 생성
6. 시점복구 (Restore)
- 백업본을 통해 복구 시 RDS-MySQL 에서는 최대 5분의 손실이 발생했다면, RDS-Aurora 에서는 어떤 시점으로도 복구가 가능
7. 빠른 Crash Recovery
- RDS-MySQL: Crash 났을 경우 checkpoint 시점부터 redo log 를 1개의 thread 로 복구 진행
- Aurora: 병렬,분산,비동기 방식으로 redo log를 재생하여 빠른 복구가 가능
8. 스토리지 보안 강화
- Storage 레벨에서의 암호화 가능(TDE 개념)
Aurora 단점
1. 비용
- RDS보다 약 20%정도 비용이 비싸다고 함
2. 패치로 인한 DownTime
- OS 및 보안 등 패치가 발생할 경우 Failover가 발생하지 않고 Writer 인스턴스 재시작 후 바로 Reader 인스턴스들 재시작으로 DownTime 자주 발생
3. MySQL 최신 버전 지원
- RDS-MySQL 대비 낮은 버전 지원
* 사용하다보면 다른 문제점들도 있을것 같은데 계속 정리 필요
'개발 > AWS' 카테고리의 다른 글
EC2 Java 설치 및 JAVA_HOME 설정 (0) | 2022.01.21 |
---|---|
AWS VPC 개념 (0) | 2022.01.21 |
AWS - S3 개념 (0) | 2022.01.19 |
AWS - EC2 기본 (0) | 2022.01.16 |
AWS 로드발란서(ELB) 특징 및 종류 (0) | 2021.12.28 |
댓글