AWS-RDS

강채희·2021년 5월 3일
0
post-thumbnail

[4-1] RDS란?

RDS? Relational DB Service - 관계형 DB

  • 데이터베이스 - 하나의 큰 양동이
  • 테이블 - 양동이 안의 물건
  • 데이터 - 테이블 내의 물건(열)
  • 필드 - 행

<종류> Miscrosoft SQL, Oracle, MySQL, Aurora, Maria DB

Data Warehousing?

  • Business Inteligence
  • 리포트 작성, 데이터 분석시 사용 Production DB -> Data Warehousing
  • 매우 방대한 분량의 데이터 로드시 사용

OLTP VS OLAP

OLTP - INSERT와 같이 종종 사용되어지는, 혹은 규모가 작은 데이터를 불러올때 사용되는 SQL쿼리가 필요할때 유용
OLAP - 매우 큰 데이터를 불러올때 사용. 주로 덩치가 큰 SELECT 쿼리가 사용

[4-2] Database Back-ups

Automated Backups(AB)- 자동 백업

  1. Retention Period(1-35일) 안의 어떤 시간으로 돌아가게 할 수 있음 -> Point in time(PIT)
  2. AB는 그날 생성된 스냅샷과 Transaction logs(TL)을 참고함
  3. 디폴트로 AB기능이 설정되어 있으며 백업 정보는 S3에 저장 -> 무료X
  4. AB동안 약간의 I/O suspension이 존재할 수 있음 -> Latency

DB Snapshots (데이터베이스 스냅샷)

  1. 주로 사용자에 의해 실행됨 -> 수동
  2. 원본 RDS Instance를 삭제해도 스냅샷은 존재함 (vs AB)
    -> 스냅샵 만으로 RDS Instance를 복구할 수 있음(AB는 불가)

<데이터베이스 백업>
1.RDS Instance
2.RDS Endpoint

[4-3] Multi AZ and Read Replicas

Multi AZ

  1. 원래 존재하는 RDS DB에 무언가 변화(e.x : Write) 가 생길때 다른 Availability Zone에 똑같은 복제본이 만들어짐 = Synchronize
  2. AWS에 의해서 자동으로 관리가 이루어짐 (No admin intervention)
  3. 원본 RDS DB에 문제가 생길 시 자동으로 다른 AZ의 복제본이 사용됨 -> Disaster Recovery: 재해 발생시 복구 시간의 감소

Read Replica - 성능에 중점

  1. Production DB의 읽기 전용 복제본이 생성됨
  2. 주로 Read-Heavy DB작업시 효율성의 극대화를 위해 사용됨 (Scaling)
  3. Disaster Recovery 용도가 아님!
  4. 최대 5개 Read Replica DB 허용
  5. Read Replica의 Read Replica 생성 가능 (사용 및 생성시 약간의 Latency 발생)
  6. 각각의 Read Replica는 자기만의 고유 Endpoint 존재 (RDBS EP가 정체성)

[4-4] ElasticCache

  • 클라우드 내에서 In-memory 캐시를 만들어줌
  • 데이터베이스에서 데이터를 읽어오는 것이 아니라 캐시에서 빠른 속도로 데이터를 읽어옴
  • Read-Heavy 어플리케이션에서 상당한 Latency 감소 효과 누림(데이터 양이 많을때 사용시 엄청난 효과!!)

Memcached

  1. Object 캐시 시스템으로 잘 알려져 있음
  2. ElastiCache는 Memcached의 프로토콜을 디폴트로 따름
  3. EC2 Auto Scaling처럼 크기가 커졌다 작아졌다 가능함
  4. 오픈소스

-> 가장 단순한 캐싱 모델 필요시, object caching이 주된 목적일때, 캐시 크기를 자유자재로 scaling하고 싶을때 Memcached 사용

Redis

  1. Key-Value, Set, List (정교한)와 같은 형태의 데이터를 In-Memory에 저장 가능함
  2. 오픈 소스
  3. Multi-AZ 지원

->List, Set과 같은 데이터셋을 사용할때, 리더보드처럼 데이터셋의 랭킹을 정렬하는 용도가 필요할때, Multi AZ기능이 사용되어져야 할때 Redis 사용

[4-5] RDS 실습-1

https://ap-northeast-2.console.aws.amazon.com/rds/home?region=ap-northeast-2#
데이터베이스 생성 >
실습은 추후 다시 시도할 예정

[4-6] RDS 실습-2

-read replica : 읽기 복제본 생성을 누르면 됨

-multi AZ : 다중 AZ배포에 대한 설정을 변경하면 됨

-백업에 대한 기간 설정도 가능

4강 느낀점 : 스냅샷이나 RDB등 들었던 개념이 나와 반가웠다. 실습1의 경우 따라가지 못한 부분이 있었는데 차근차근 반복해봐야겠다.

0개의 댓글