본문 바로가기

AWS

210126_08_AWS_RDS

RDS 란?

Amazon Relational Database Service

아마존 관계형 데이터베이스 서비스

관계형 DB를 제공해 주는 서비스

 

※ EC2 인스턴스 내에 데이터베이스를 만들면 안될까?

    > 가능은 하다. 하지만 EC2를 만들 때, 사양을 그만큼 높여야 해서 비용적인 부담이 증가하고

       또한, 인트턴스 내부에 직접 데이터베이스를 설치, 백업 등을 해야하는 번거로움이 있기 때문에 RDS를 사용하는 편이 좋다.

 

RDS 아키텍쳐 요구사항

    > 고가용성, 확장의 용이 / 애플리케이션 서버와 분리된 DB 필요

 

아마존 DB 옵션

    관계형 DB

        RDS

        RedShift

        Aurora

    비관계형 DB

        DynamoDB

        ElasticCache

        Neptune

 

RDS

> 완전 관리현 DB 서비스

   AWS 측에서 모든 것을 관리해주는 서비스

   MySQL, MariaDB, Oracle 등 사용 가능

 

RedShift

    주로 데이터웨어 하우스용 데이터베이스

    대량의 데이터가 확 들어오고 그 후 야간에 데이터의 분석을 수행한다.

    데이터의 수정이 거의 일어나지 않는다

    데이터의 트랜잭션 등에 특화되어 있다

 

Aurora

> 아마존 독자적인 완전관리형 DB 서비스

   MySQL, PostgreSQL 등과 호환가능

   MySQL의 처리량의 최대 5배

   3개 AZ에 6가지 방법으로 데이터 복제

   기존 어플리케이션과의 변경점이 최소한으로

 

DynamoDB

> 완정관리형 비관계형 DB 서비스

   

※ 관계형DB와 비관계형 DB의 차이

   관계형 DB를 사용하는 경우

   관계형은 엄격한 스키마 규칙과 데이터 품질 적용

   > 데이터를 테이블 형태로 저장

      데이터를 일관성있게 유지

   > 데이터 무결성과 트랜잭션을 유지하기 위하여 백그라운드 작업이 매우 많이 돌아가며 CPU, 메모리 등 리소스를 많이 잡아먹는다.

   > I/O 속도가 느리다

   

   비관계형 DB를 사용하는 경우

   비관계형은 유연한 스키마 규칙을 적용, 뛰어난 수평적 확장성

   키값과 밸류값을 쌍으로 저장하는 방식

   > 데이터의 무결성이 크게 필요하지 않을 경우.

   > 데이터를 수평적으로 확장해야 하는 경우,

   > 데이터가 기존의 스키마에 적합하지 않은 경우,

   > I/O 속도가 관계형 DB에서 지원할 수 있는 범위를 초과하는 경우

   > 최적의 성능을 필요로 하지 않는 경우

 

DynamoDB 일관성 옵션

    최종적 일관된 읽기(Eventually Consistent Read)

    > 데이터 수정 시, 수정된 데이터에 대한 읽기 요청이 들어오면 그 즉시 변경 사항이 반영되는 것이 아니라

       변경된 사항이 반영되는 데에 시간이 조금 걸리는 것

       변경 사항이 즉시 반영되지는 않지만 "최종적으로는 일관된 읽기 결과값"을 갖게 된다.

 

    강력한 일관된 읽기 (Strongly Consistent Read)

    > 읽기 요청 시, 가장 최신에 변경된 사항들이 즉시 반영된 상태를 반환

       빠르게 변경사항이 적용되지만 요금이 비싸다.

 

Amazon RDS 보안 제어

    DB 접근 제어 : DB에 대한 접근 권한 부여

    암호화 : 기밀유지를 위한 기밀성 부여

               키가 있어야지 데이터를 해독하여 읽을 수 있다.

    저장 시 암호화 : 저장 시 암호화된 데이터는 DB 인스턴스에 대한 기본 스토리지, 자동 백업, 읽기 전용 복제본, 스냅샷이 포함

    전송 중 암호화 : 전송 중 SSL을 사용하여 수행

    알림 : RDS 인스턴스에 발생하는 이벤트에 대한 알림

 

DynamoDB 보안 제어

    접근 제어 : DB의 테이블, 항목, 속성 등 모든 것에 대한 접근 권한 부여

    저장 시 암호화 : 완전관리형 저장 암호화

    SSL/TLS : 통신 암호화. 네트워크 트래픽을 보호하는 HTTPS 프로토콜 사용

 

AWS DB로 데이터 마이그레이션

    온프레미스 서버의 DB에 있던 데이터를 AWS DB로 옮기는 대규모 작업

    > AWS Data Migration Service 를 통하여 광범위 DB 마이그레이션 지원

 

AWS Snowball Edge

    데이터 스토리지 디바이스

    온프레미스 서버에서 스노우볼 엣지로 데이터를 옮긴 후 스노우볼 엣지에서 AWS 서버로 물리적으로 전송

  

Snowball Edge를 사용하는 경우

    DB 규모가 너무 큰 경우

    연결이 너무 느린 경우

    개인 정보 보호 및 보안 문제

 

    

 

 

 

 

 

 

 

'AWS' 카테고리의 다른 글

210127_09_AWS_NetworkLayer_01  (0) 2021.01.27
210126_08_AWS_RDS_실습  (0) 2021.01.26
210126_07_AWS_EC2_EBS(2)  (0) 2021.01.26
210125_07_AWS_EC2_EBS_실습  (0) 2021.01.25
210125_07_AWS_EC2_EBS  (0) 2021.01.25