타키탸키
로그인
타키탸키
로그인
[인프런] AWS 3
타키탸키
·
2022년 7월 5일
팔로우
0
aws
0
AWS
목록 보기
4/5
RDS
Relational DB Service
관계형 데이터베이스
데이터베이스
테이블
데이터
필드
AWS RDS에서 사용 가능한 관계형 DB 종류
Microsoft SQL
Oracle
MySQL
Postgre
Aurora
AWS 자체 운영
Free Tier 제공X
Maria DB
Data Warehousing
Business Intelligence
리포트 작성, 데이터 분석 시에 사용
Production Database -> Data Warehousing
매우 방대한 양의 데이터 "로드" 시, 사용
다양한 소스에서 수집
필요 시에 원하는 정보만 추출
트랜잭션 프로세싱에 적합X
OLTP
Online Transaction Processing
insert와 같이 종종 사용되거나 규모가 작은 데이터를 불러올 때 사용되는 SQL 쿼리가 필요할 때 유용
ex:) 하나의 order에만 해당되는 고객의 이름, 주소, ...
OLAP
Online Analytical Processing
매우 큰 데이터를 불러올 때 사용
주로 덩치가 큰 select 쿼리 사용(혹은 join)
ex:) 특정 회사 부서의 Net Profit, Products
RDS의 백업 기능
Automated Backups(자동 백업)
DB Snapshots(데이터베이스 스냅샷)
Automated Backups
Retention Period 내의 특정 시간으로 복귀 가능
Point In Time(PIT)
1일~35일
그날 생성된 스냅샷과 Transaction Logs(TL) 참고
매일 생성
현재 시점이 기준
디폴트로 설정되어 있는 기능
백업 정보는 S3에 저장
특정 조건을 넘으면 S3가 유료로 전환되므로 주의
AB 동안 약간의 I/O suspension 존재할 수 있음
Latency
DB Snapshots
주로 사용자에 의해 실행됨(수동)
원본 RDS instance를 삭제해도 스냅샷은 존재
AB와의 차이점
RDS 데이터베이스 백업
원본 RDS 데이터베이스를 통해 새로운 데이터베이스 생성
새로운 RDS instance 및 end point 생성
원본과는 다른 새로운 객체 생성
original.
>>
.restored
Multi AZ
Multi Availability Zones
Synchronize
기존 RDS DB에 변화(ex:) write)가 생길 때 다른 AZ에 똑같은 복제본 생성
동시다발적
delay 감소
AWS에 의해서 자동으로 관리가 이루어짐
No admin intervention
Disaster Recovery Only
기존 RDS DB에 문제 발생 시, 자동으로 다른 AZ의 복제본 사용
성능 개선을 위한 기능X
성능 개선을 위해서는 Read Replica 사용
ex:) 세 개의 EC2 서버가 기업 Production DB에 연결
서버에 데이터를 쓰면, 복제된 DB에 올라간다
Read Replica
Production DB의 읽기 전용 복제본이 생성됨
쓰기 불가능
주로 Read-Heavy DB 작업 시, 효율성을 극대화하기 위해 사용
scaling이 주 목적
Disaster Recovery 용도가 아님
최대 5개 Read Replica DB 허용
Read Replica의 Read Replica 생성 가능
단, Latency 발생
각각의 Read Replica는 자기만의 고유 Endpoint 존재
RDS DB는 IP 주소가 아닌 Endpoint로 식별
ex:) 여러 사용자가 웹사이트의 기사를 읽는 경우, 서버 다운 위험 >> Read Replica로 효율 극대화
분산을 통해 Main DB의 Workload 최소화
ElastiCache
클라우드 내에서 In-memory 캐시 생성
DB에서 데이터를 읽어오는 것이 아니라 캐시에서 빠른 속도로 데이터를 읽어옴
Read-Heavy 어플리케이션에서 상당한 Latency 감소 효과
수백수천만 개의 데이터를 동시다발적으로 로드
SNS, 실시간 검색어...
Memcached / Redis
Memcached
Object 캐시 시스템
ElastiCache는 Memcached의 프로토콜을 디폴트로 따름
EC2 Auto Scaling처럼 크기가 가변적
오픈소스
유용한 순간
단순한 캐싱 모델 필요할 때
Object caching(<->set,list)이 주된 목적일 때
캐시 크기를 마음대로 scaling 하기를 원할 때
Redis
Key-Value, Set, List와 같은 형태의 데이터를 In-Memory에 저장 가능
오픈소스
Multi-AZ 지원
재해 복구 기능
유용한 순간
list, set과 같은 데이터셋을 사용할 때
리더보드처럼 데이터셋의 랭킹을 정렬하는 용도로 사용할 때
Muli-AZ 기능이 필요할 때
타키탸키
There's Only One Thing To Do: Learn All We Can
팔로우
이전 포스트
[인프런] AWS 2
다음 포스트
[인프런] AWS RDS 실습
0개의 댓글
댓글 작성