[AWS SAA] Database 종류

인바다·2023년 9월 18일
0
post-thumbnail

데이터베이스를 선정하는 기준은 여러가지일 수 있다.

DB 선정기준

  • 읽기, 쓰기, 처리의 양은?
  • 얼마나 많이, 오래?
  • 대기 시간은? 동시 접근해?
  • 어떤 데이터 모델? query data? join? structured?
  • 관계형, 비관계형?
  • 라이선스 비용? cloud native?
  • ...

TypesDB
RDBMS (OLTP)RDS, Aurora
NoSQL DBDynanoDB, ElastiCache, Neptune, DocumentDB, Keyspaces
Object StoreS3 (Glacier)
Data Warehouse (BI)Redshift(OLAP), Athena, EMR
SearchOpenSearch
GraphsAmazon Neptune
LedgerAmazon Quantum Ledger Database(QLDB)
Time seriesAmazon Timestream

RDBMS

Aurora

  • 관리형 데이터베이스 서비스인 Amazon RDS의 일부.
  • MySQL 및 PostgreSQL과 호환. Aurora 아키텍처는 스토리지와 컴퓨팅이 분리됨
  • RDS와 가장 큰 차이점은 스토리지. 고성능 스토리지 하위시스템이 포함
  • 데이터베이스 클러스터링 볼륨 및 복제를 자동화하고 표준화.

자동 스토리지 조정은 고성능의 고도로 분산된 스토리지 하위 시스템을 통해 이루어집니다. 따라서 주요 목표가 안정성과 고가용성인 경우 중요한 엔터프라이즈 데이터에 Aurora를 선택하는 것이 좋습니다.

Aurora MySQL/PostgreSQL Migrations

1) RDS MySQL/PostgreSQL to Aurora MySQL/PostgreSQL

option 1) RDS MySQL/PostgreSQL의 DB snapshot을 MySQL/PostgreSQL Aurora DB로 복원 (Down time 발생)
option 2) RDS MySQL/PostgreSQL로부터 Aurora Read Replica생성 후 DB Cluster로 설정 (시간 및 비용 발생)

2) External MySQL/PostgreSQL to Aurora MySQL

option 1) Percona XtraBackup으로 S3에 백업파일 생성 후 이를 용하여 Aurora MySQL DB 생성 (only MySQL)
option 2) Aurora MySQL/PostgreSQL DB를 생성하여 dump파일 실행 (S3사용하지 않고 시간이 많이 소요)

3) AWS Database Migration Service(DMS) 사용 (두 DB running 상태 유지)



NoSQL DB

ElasticCache

  • Redis 및 MemCached와 호환되는 완전관리형 서비스
    - Memcached: 단순한 키-값 저장소로, 복잡한 기능을 제공하지 않음. 주로 데이터 캐싱에 사용. 데이터 지속성 제공하지 않음
    - Redis: 키-값 저장소이지만 더 많은 데이터 구조 및 타입을 지원.
    영구 데이터 저장 기능 제공
  • 데이터베이스 쿼리와 웹 애플리케이션을 가속화하기 위해 메모리에 데이터를 캐싱하여 인메모리 데이터베이스를 지원


[참조]

Amazon Aurora이란 무엇인가요?
Amazon ElastiCache

0개의 댓글