EC2 인스턴스에 MySQL 같은 관계형 데이터베이스 엔진을 설치하면 되는데 굳이 RDS를 사용하는 이유?

박두팔이·2023년 12월 24일
0

Deployment 간단 개념


RDS, 사용하는 이유?

AWS를 공부하다가 EC2(가상의 컴퓨터를 임대하는 서비스)인스턴스에 MySQL과 같은 관계형 데이터베이스 엔진을 설치하는데 굳이 RDS(관계형 데이터베이스)를 사용하는 이유가 궁금해졌다.

데이터베이스만 따로 분리해서 서비스를 이용해야 할 이유가 있을까?

1. 편리한 관리와 유지보수:
RDS는 데이터베이스를 쉽게 프로비저닝하고 관리할 수 있는 관리형 서비스로, 복잡한 설정과 유지보수 작업을 AWS가 대신 처리한다. 이는 개발자가 데이터베이스 운영에 덜 신경 쓰고 더 많은 시간을 애플리케이션 개발에 집중할 수 있도록 도와준다.

RDS를 사용하지 않고 EC2만을 사용하는 것은,

개인 소유 차량을 이용하는 것과 같다.
유지 보수, 보험처리 같은 일들을 온전히 운전자가 부담한다. 차량 정비를 위해서 정비소에 주기적으로 방문해야 하고, 기타 차량과 관련된 다른 일이 생길 때 들여야 하는 시간과 수고가 생긴다.

EC2 인스턴스를 사용하면 데이터베이스와 관련해서 자동으로 관리를 담당하는 부분이 매우 적기 때문에, 사용자가 일일이 시간을 투자하여 데이터베이스 엔진의 설치와 버전 관리, 데이터 백업을 해야한다.

가용성과 내구성이 확보되지 않기 때문에 데이터베이스에 저장된 데이터가 유실되거나 정상적으로 사용하지 못할 확률이 커지며, 후에 필요에 따라 데이터베이스의 규모를 확장하기 어렵다.

2. 자동화된 성능 최적화:
RDS는 트래픽과 데이터 양에 따라 자동으로 스케일링되며 성능을 최적화한다. 이는 수동으로 관리하는 경우에 비해 효율적인 리소스 활용을 가능케 하며, 사용자 경험을 향상시킨다.

3. 고가용성과 백업 기능:
RDS는 여러 가용 영역에 데이터를 자동으로 복제하여 고가용성을 보장하고, 자동 백업을 제공하여 데이터 손실을 방지한다. 이는 비즈니스의 지속성과 안전성을 강화한다.

4. 선순환적 비용 모델:
RDS는 사용한 리소스에 대한 과금을 효과적으로 관리할 수 있다. EC2에서 직접 데이터베이스를 설치하고 운영하는 경우에는 인프라 및 리소스 사용에 대한 더 많은 관리가 필요하며, RDS는 비용을 최적화하는 데 도움이 된다.

5. 보안 강화와 규정 준수:
RDS는 데이터베이스 엔진에 따라 데이터 암호화, 보안 그룹, 네트워크 설정 등 다양한 보안 기능을 제공한다. AWS는 물리적 보안부터 네트워크 및 데이터베이스 액세스까지 다양한 보안 조치를 적용하여 데이터를 안전하게 보호한다.

RDS를 통해 데이터베이스를 분리함으로써, 이러한 다양한 혜택을 누리고 효율적인 개발 및 운영을 가능케 할 수 있다.

profile
기억을 위한 기록 :>

0개의 댓글