Cloud/AWS

[AWS] RDS

twoDeveloper 2021. 9. 5. 15:03

■ 데이터베이스 (Database)

· 여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합

· 특정 다수의 사용자들에게 필요한 정보를 제공 및 조직 내 필요한 정보를 체계적으로 저장 및 보관하여 사용자들에게 제공

 

■ RDBMS (Relational Database Management System)

· 데이터 간 사전에 정의된 관계(Relational)가 있고, 연관 관계가 있는 데이터 항목들의 모음

· 열과 행으로 이루어진 데이터 테이블로 구성

· 데이터의 각행은 고유의 식별자로 구분, 이를 기본키 (Primary Key) 라고 부름

· 여러 테이블에 있는 행들은 외래키 (Foreign Key) 를 사용하여 상호 연결

· Oracle, MySQL, Microsoft SQL Server, PostgreSQL, MariaDB 존재

· AWS에서는 RDS(Relational Database Services) 라는 서비스를 통해 RDBMS 서비스를 제공

   - Oracle, MySQl, MSSQL, Amazon Aurora

 

■ SQL

· 사용자와 관계형 데이터베이스를 연결시켜주는 표준 검색 언어

· 관계형 데이터베이스에 있는 데이터를 직접 조회, 보고서를 추출하는 데 사용

 

■ RDS (Relational Database Services)

· 클라우드에서 RDB를 더욱 간편하게 설정, 운영 및 확장할 수 있는 서비스

· HW Provisioning, 데이터베이스 설정, 패치 및 백업과 같은 시간 소모적인 관리 작업을 자동화

· 비용 효율적이고 크기 조정 가능한 데이터베이스 서비스를 제공

 

□ RDS 제공 유형

· 여러 데이터베이스 인스턴스 유형(메모리, 성능, I/O 최적화)으로 제공

· Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle, Microsoft SQL Server 제공

· AWS Database Migration Services를 사용하여 기존 데이터베이스를 Amazon RDS로 손쉽게 마이그레이션 또는 복제 가능

 

□ RDS 특징

· AWS에서 데이터베이스 서비스를 사용할 수 있는 두 가지 방법

직접 운영 AWS에서 제공하는 DB 서비스 이용
Amazon EC2 직접 DB 설치 Amazon RDS | Amazon DyanmoDB | Amazon RedShift

1) 직접 EC2 인스턴스에 DB 설치 및 이용

· On-Premise에서 사용하던 데이터베이스를 그대로 사용 가능 (가장 이질감 없는 사용 방법)

· 클라우드용 라이선스를 운영하는 경우 존재 (설치 운영 전 미리 파트너사를 통해 기존 라이선스를 사용할 수 있는지 여부 확인)

 

2) AWS에서 제공해주는 DB 사용

· 데이터베이스의 설치 및 운영/관리를 Amazon에서 직접 제공

· 별도의 운영/관리 필요가 없음

· 서비스의 용도 및 사용량에 따라 원하는 형태의 리소스를 선택

· 라이선스가 포함된 서비스, BYOL 라이선스용 서비스와 같이 기존 라이선스를 사용할 수 있는 서비스도 제공

 

3) 유연한 인스턴스 및 스토리지 확장

· RDS는 다양한 CPU/메모리 옵션을 제공

· Cloudwatch와 연계를 통해 트래픽에 따른 증설 및 사양의 축소 가능

· 스토리지는 필요에 따라 유연하게 확장 가능

General Purpose(SSD) Provisioned IOPS(SSD) Magnetic
일반적인 워크로드 빠른 속도와 대용량의 처리가 필요한 경우
최대 30,000 IOPS까지 I/O 성능 조정
접속이 빈번하지 않은 작은 워크로드의 경우
저렴한 비용으로 서비스 가능

 

4) 손쉬운 백업 및 복원

· RDS는 자동 백업 설정을 통해 손쉽게 백업 가능

· 특정 시점으로 손쉽게 복구할 수 있는 기능 제공

· 최대 35일 까지 데이터를 보존

· 백업된 스냅샷(Snapshot)을 통해 DB 생성 가능

 

5) 멀티 AZ를 통한 고가용성 확보

· RDS는 멀티 AZ 기능을 활용하여 Region 내 AZ 간 데이터베이스 동기화 구성이 가능

· 주요 장애 상황 발생 시 자동으로 데이터베이스 Failover를 수행할 수 있도록 고가용성을 지원

· 리플리케이션을 통한 가용성 지원

· MySQL은 읽기 트래픽을 자동 관리하는 Read Replica로 분산 서비스를 제공

· 이를 통해 발생되는 읽기 서비스에 대한 부하를 분산처리

· 데이터베이스의 장애 발생 시 빠른 장애 복구 가능, 손쉽게 리전간 데이터 이전이 가능

 

6) RDS 암호화 옵션을 통한 보안성 강화

· RDS는 옵션을 통한 One-Click을 통해 데이터에 대한 암호화 기능을 제공

· 데이터 백업, 스냅샷(Snapshot), Read Replica에도 적용

· KMS를 통해 사용자가 생성하고 관리하는 키(Key) 사용 가능

· RDS DB 생성 시 암호화 Enable 이후 암호화 Disable은 불가, 암호화 DB에서만 암호화 Read Replica를 생성

· 암호화되지 않은 백업을 암호화된 DB로의 데이터 복구는 불가

 

7) Database Migration 서비스

· RDS는 AWS Database Migration Service를 통해 동종 혹은 다른 DB 엔진으로부터 RDS로 데이터에 대한 Migration을 지원

 

 

'Cloud > AWS' 카테고리의 다른 글

[AWS] RDS 구축 2  (0) 2021.09.05
[AWS] RDS 구축 1  (0) 2021.09.05
[AWS] AWS VPC : NAT 구성 (구축 3)  (0) 2021.09.01
[AWS] AWS VPC : Private Subnet (구축 2)  (0) 2021.09.01
[AWS] AWS VPC : Public Subnet (구축 1)  (0) 2021.09.01