728x90
PITR
- 특정 시점 복구
- 실수로 인한 쓰기 또는 삭제 작업으로 부터의 테이블 보호
- 디폴트 값은 false로 유지
- 최근 35일에 대한 백업본 저장
- 동일한 리전 또는 백업본을 위한 다른 리전으로 복원도 가능
On - Demand Backup
- DynamoDB 백업 삭제 지시까지 영원히 유지
- 특정 시점에 대한 직접적인 백업본 생성 가능
Schedule Backup
- AWS Bakcup 에서 Backup vault 생성 필요
- 생성한 Backup vault에 따라 dbBackupPlan 세우기
- DynamoDB에는 현재 Cold Storage 지원 ❌
- 예약된 작업에 대한 확인
- Amazon DynamoDB Workshop & Labs
- 백업 제한에 대한 IAM 권한 설정 가능
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"backup:DeleteBackupSelection",
"backup:CreateBackupSelection",
"backup:StartBackupJob",
"backup:CreateBackupPlan",
"backup:ListBackupSelections",
"backup:ListRecoveryPointsByBackupVault",
"backup:GetBackupVaultAccessPolicy",
"backup:GetBackupSelection"
],
"Resource": [
"arn:aws:backup:us-east-1:123456789:backup-plan:*",
"arn:aws:backup:us-east-1:123456789:backup-vault:*"
]
},
{
"Sid": "VisualEditor1",
"Effect": "Deny",
"Action": "backup:DeleteBackupSelection",
"Resource": "arn:aws:backup:us-east-1:123456789:backup-plan:*"
}
]
}
- DynamoDB 설계
- RDB → DynamoDB로 마이그레이션
- 온프레미스 VPC source → DMS를 이용한 마이그레이션 수행
- Mysql 환경 구성
- CloudFormation yaml 파일 구성으로 데이터 삽입
- 인스턴스 기반으로 돌아감
- DMS 환경 구성
- 마이그레이션 할 수 있게 도와주는 서비스
- CloudFormation yaml 파일 구성으로 데이터 삽입
Explore Source Model
>> mysql -u dbuser -pPassword@123
- 소스 모델 view 생성
CREATE VIEW imdb.movies AS\
SELECT tp.tconst,\
tp.ordering,\
tp.nconst,\
tp.category,\
tp.job,\
tp.characters,\
tb.titleType,\
tb.primaryTitle,\
tb.originalTitle,\
tb.isAdult,\
tb.startYear,\
tb.endYear,\
tb.runtimeMinutes,\
tb.genres,\
nm.primaryName,\
nm.birthYear,\
nm.deathYear,\
nm.primaryProfession,\
tc.directors,\
tc.writers\
FROM imdb.title_principals tp\
LEFT JOIN imdb.title_basics tb ON tp.tconst = tb.tconst\
LEFT JOIN imdb.name_basics nm ON tp.nconst = nm.nconst\
LEFT JOIN imdb.title_crew tc ON tc.tconst = tp.tconst;
Explore Target Model
- RDBMS 플랫폼은 데이터를 정규화된 관계형 구조로 저장
- 이 구조는 계층적인 데이터 구조를 줄이고 다중 테이블 간의 데이터를 저장
- 여러 테이블의 데이터를 쿼리 & 프레젠테이션 계층에서 조합
- 대기시간이 매우 짧은 워크로드에는 효율적이지 않음
- 짧은 대기 시간으로 트래픽이 많은 쿼리 지원 → NoSQL 시스템을 활용하는 스키마가 합리적
- 인접 목록 디자인 패턴
- DynamoDB 테이블에 관계형 데이터를 저장하기 위한 기본 키 오버로드 사용
- 데이터 삽입에 있어서
|
를 이용해서 데이터를 구분한다. - 고유 영화 ID에 대해서는
tt
접두사를 붙여서 구현
- 데이터 삽입에 있어서
- DynamoDB 테이블에 관계형 데이터를 저장하기 위한 기본 키 오버로드 사용
- 엔드 포인트 생성
- Source DB 정보 구성
- Target DB 정보 구성
728x90
'⚙️ DevOps > AWS' 카테고리의 다른 글
[AWS/EFS, API Gateway, Lambda] 비디오 서버 서버리스로 마이그레이션 하기 (45) | 2024.01.28 |
---|---|
[AWS/DynamoDB] Explore DynamoDB with the CLI (35) | 2024.01.21 |
[AWS/DynamoDB] Overview (2) | 2024.01.17 |
[AWS/Secrets Manager] 키 관리 Secrets Manager 로 간단히 하기 (32) | 2023.12.09 |
[AWS/Elastic IP] EC2에 탄력적 IP 주소 할당하기 (0) | 2022.08.09 |