본문 바로가기

Cloud

7장] 데이터베이스 서비스 Amazon RDS, DynamoDB 등

Amazon RDS(Amazon Relational Database Service)

: 관계형 데이터베이스를 클라우드에 최적화된 상태로 제공하는 서비스

- 매니지드 서비스 : 업데이트 등의 관리가 AWS에 의해 자동으로 이루어진다.

- 실제 사용하는 용량이 아닌 확보하고 있는 용량에 대해 과금된다.

- EC2 인스턴스와 연동할 경우 동일한 서브넷 그룹에 설치하는 것이 일반적이다.

인스턴스 클래스

표준 db.m5 범용
메모리 최적화 db.x1e 메모리 많이 사용하는 애플리케이션
db.x1
db.r5
버스트 기능 db.t3 CPU 최대 사용률까지
버스트 기능 사용 가능
small medium large xlarge 2xlarge 4xlarge 8xlarge 16xlarge

DynamoDB와 Amazon ElastiCache

KVS(Key Value Store) 데이터베이스 : 형식에 관계없이 어떤 데이터에 대해서 특정 키가 되는 값을 결합하여 저장하는 방식으로 NoSQL 데이터베이스의 대표적인 예이다.

DynamoDB

- KVS로, 관계형 데이터베이스에 맞지 않는 범용적 데이터를 저장하는 데 사용한다.

- 중복 데이터가 없어 스토리지를 절약할 수 있지만 데이터를 저장하는 처리 속도는 느리다.

- VPC가 불필요하므로 Lambda 등과 같은 VPC를 사용하지 않는 애플리케이션 환경과 궁합이 좋다.

- 대규모 데이터를 처리하기 위한 ACID 트랜잭션, 데이터 암호화, 접근 제한 서비스를 갖추고 있다.

Amazon ElastiCache

- 인 메모리 데이터베이스로 빈번하게 읽고 쓰는 데이터는 일시적으로 메모리에 보관(캐시)하는 방식으로 메모리를 활용하여 처리 속도를 빠르게 한다.

- 인스턴스를 재시작할 때 기존 데이터가 삭제되는 것을 주의해야 한다.

그외 데이터베이스

- Amazon DocumentDB : MongoDB 호환 데이터베이스

MongoDB는 오픈 소스 문서 기반 데이터베이스로 JSON 형식을 바이너리로 변환해서 BSON 형식으로 데이터를 저장한다.

- Amazon Neptune : 그래프 데이터베이스로 노드의 방향을 포함한 노드 사이의 연결을 기록한 데이터베이스
-- 관리가 자동화되고 네트워크를 통한 데이터 읽기/쓰기는 HTTPS로 암호화된다.
-- 추천 시스템이나 소셜 네트워크, 지식 그래프 등에 사용되며 데이터 간의 복잡한 관계를 처리할 수 있다.

- Amazon Timestream : 시계열 데이터베이스
-- 평활법, 근사, 보간 등의 분석 함수 사용 가능
-- IoT에 사용된다.

- Amazon Quantum Ledger Database : 장부 데이터베이스로 데이터 변경 내용의 추적 및 검증 기능을 지원한다.