5. • 다양한 엔진: Amazon Aurora, MySQL, MariaDB,
PostgreSQL, Oracle, 및 SQL Server
• 완전 관리형 서비스 - 자동화된 프로비저닝, 패칭,
확장, 백업/복구, 이중화
• Multi-AZ 구성 를 통한 고가용성 (99.95% SLA)
Amazon
RDS
Amazon RDS 관리형 데이터베이스 서비스
6. Amazon RDS for Aurora
• Amazon Aurora는 MySQL 호환 관계형
데이터베이스 엔진
• Aurora는 상용 데이터베이스의 10분의 1 가격
으로 MySQL보다 최고 5배 뛰어난 성능을 제공
• 3 가용영역에 거쳐 6개의 복제를 저장하여
고가용성 제공
• Amazon S3에 지속적으로 데이터를 백업
• 지역 내 15개 Amazon Aurora Replicas
• 10GB에서 64TB까지 스토리지 자동 증가
Amazon Aurora
7. 클라우드로의 전환은?
• 온프레미스 데이터의 클라우드로의 마이그레이션은 어떻게?
• 사용자 영향의 최소화는 어떻게?
• 마이그레이션 이후, 온프레미스와 클라우드의 데이터 연동은
어떻게?
• 기존의 데이터 자산의 AWS 통합은 어떻게?
• 상용 데이터베이스의 전환에 도움을 받을 수 있는가?
8. 마이그레이션은 비용 + 복잡성 + 시간
• 상용 데이터 마이그레이션 및 복제 소프트웨어
• 구성 관리의 복잡성
• 어플리케이션 다운타임
• 특정 데이터베이스 엔진에 따른 어플리케이션 코드
9. 마이그레이션 방법
• 엔진을 전환하지 않고, 다운타임을 허용할 수 있는 경우:
• SQL Server: bak 파일 가져오기 (import)
• MySQL: 읽기 복제 (read replicas)
• Oracle: SQL Developer, Data Pump, Export/Import
• PostgreSQL: pg_dump
• SAP ASE: bcp
10. DMS 및 SCT란?
AWS Database Migration Service (DMS)는
데이터베이스 및 데이터웨어하우스를 AWS로 빠르고
안전하게 마이그레이션 또는 복제하는 서비스
AWS Schema Conversion Tool (SCT)을 사용하면 소스
데이터베이스 스키마와 대부분 데이터베이스 코드 객체를
대상 데이터베이스와 호환되는 형식으로 자동으로 변환하여
이기종 데이터베이스 마이그레이션을 수행
35,000개가 넘는 데이터베이스가 AWS Database Migration Service를
사용하여 마이그레이션
11. DMS 및 SCT는 언제 사용?
현대화 마이그레이션 복제
데이터베이스의 현대화
• 상용에서 오픈소스
• 상용에서 Amazon Aurora
데이터웨어하우스 현대화
• 상용에서 Amazon Redshift
핵심 업무 마이그레이션
클래식의 VPC 마이그레이션
데이터웨어하우스의
Redshift 마이그레이션
Aurora 데이터베이스 통합
리전간 읽기 복제 생성
클라우드에서 분석 운영
개발, 테스트, 운영 환경 데이터
동기화
13. DMS는 언제 사용?
마이그레이션
핵심 업무 마이그레이션
클래식의 VPC 마이그레이션
데이터웨어하우스의 Redshift
마이그레이션
Aurora 데이터베이스 통합
마이너 버전 업그레이드
NoSQL에서 SQL, SQL에서
NoSQL, NoSQL에서 NoSQL
마이그레이션
원본:
대상:
Amazon
Dynamo DB
Amazon Redshift
Amazon S3
Amazon Aurora
*DMS is a HIPAA certified service
14. DMS 및 SCT 사용의 장점
보안
비용 효율성
진입장벽 없음
데이터베이스
자유
클라우드에 진입
사용 편의성거의 제로
다운타임
16. 데이터베이스 마이그레이션을 손쉽게 시작
마이그레이션 중 어플리케이션 서비스 유지
Amazon EC2 또는 RDS를 원본 및 대상으로 복제
동일 또는 이기종 데이터베이스간 복제
AWS
Database Migration
Service
AWS Database Migration Service(DMS) 개요
Amazon Aurora
17. 고객 온-
프레미스
어플리케이션 사용자
AWS
인터넷
VPN
데이터베이스 마이그레이션 다운타임 최소화
• 복제 인스턴스 시작
• 원본 및 대상 접속
• 테이블, 스키마, 데이터베이스
선택
AWS DMS 가 테이블 생성,
데이터 로드 및 변경 사항 적용
적절한 시점에 대상
데이터베이스로 전환
AWS
Database Migration
Service
18. AWS Database Migration Service 고객 사례
“We are in the process of migrating some
databases to Amazon Aurora. The ease by
which we can do this using the AWS
Database Migration Service has
simplified this process for us and
enabled us to accelerate our migration
efforts. The ability to closely monitor the
process, the detailed logging feature, and
the support we received from AWS have
given us a great deal of confidence in a
successful migration.”
- Kuldeep Chowhan, Principal Engineer,
Expedia, Inc.
19. AWS DMS 구성 – step1. 시작하기
https://console.aws.amazon.com/dms 접속하기
20. AWS DMS 구성 – step2. 복제 인스턴스 생성
복제 인스턴스 타입 및 VPC 선택
21. AWS DMS 구성 – step3. DB 접속 구성
원본 DB 접속 구성 대상 DB 접속 구성
22. AWS DMS 구성 – step4. 복제 태스크 생성
복제 방식 선택 : 스냅샷 및 변경사항 복제
복제 대상 선택 : 전체 테이블 또는 선택
25. AWS DMS 가용 리전 및 비용
• 모든 공개 리전에서 사용 가능
• 복제 인스턴스 타입
• T2 : 개발 및 주기적 마이그레이션
• C4 : 대규모 데이터베이스 및 시간 최소화
• 복제 인스턴스 비용 (2017 4월.
서울리전)
• T2 : t2.micro 시간 당 $0.028 시작
• C4 : c4.large 시간 당 $0.168 시작
• 데이터 전송 비용
27. 데이터베이스 원본, 대상 고려사항
원본 데이터베이스
• 지원 엔진 : Oracle, SQL Server, MySQL, MariaDB, Amazon Aurora, PostgreSQL 및
SAP ASE, MongoDB
• RDS SQL Server 원본은 Change data capture (CDC) 모드는 지원되지 않음
대상 데이터베이스
• 지원 엔진 : Oracle, SQL Server, MySQL, MariaDB, Amazon Aurora, PostgreSQL, SAP
ASE, Amazon Redshift, Amazon S3, Amazon DynamoDB
원본, 대상 중 최소 하나의 데이터베이스는 AWS에 존재
• 모든 엔진은 온-프레미스, EC2, RDS 지원 (Aurora는 RDS Only)
28. 원본 데이터베이스 고려 사항 – Oracle
지원 버전
• 온-프레미스 및 EC2 : 10.2 이후, 11g 및 12c 버전의 모든 오라클 데이터베이스 에디션
• Amazon RDS의 11g (11.2.0.3.v1 이후) 및12c 버전의 모든 오라클 데이터베이스 에디션
사전 요구 사항
• Using an Oracle Database as a Source for AWS Database Migration Service
• 오라클 사용자 계정 권한 설정
• ARCHIVELOG Mode 활성화
• Supplemental Logging 구성
• Change Data Capture (CDC)를 위하여 LogMiner(또는 Oracle Binary Reader) 사용 구성
제약 사항 - Limitations on Using Oracle as a Source for AWS Database Migration Service
29. 대상 데이터베이스 고려 사항 – MySQL/Aurora
지원 버전
• MySQL 5.5, 5.6 및 5.7, MariaDB 및 Amazon Aurora
• MySQL Community, Standard, Enterprise, Cluster Carrier Grade 에디션
사전 요구 사항
• Using a MySQL-Compatible Database as a Target for AWS Database Migration Service
• MySQL 사용자 계정 권한 설정 – 읽기, 쓰기 권한
• 적절한 네트워크 구성
• 로드 중 SET FOREIGN_KEY_CHECKS=0
제약 사항 - Limitations on Using MySQL as a Target for AWS Database Migration Service
31. 복제 인스턴스 (Replication Instance)
Replication Instance
Type
vCPU Memory (GB)
General Purpose
dms.t2.micro 1 1
dms.t2.small 1 2
dms.t2.medium 2 4
dms.t2.large 2 8
Compute Optimized
dms.c4.large 2 3.75
dms.c4.xlarge 4 7.5
dms.c4.2xlarge 8 15
dms.c4.4xlarge 16 30
Each replication instance has a specific configuration of
memory and vCPU. The following table shows the
configuration for each replication instance type.• 인스턴스 타입에 따른 사양
• 복제 인스턴스는 VPC에 존재
• Replication Subnet Group
• Availability Zone
• Public 및 Private 복제
인스턴스
• 원본 또는 대상 VPC가 virtual
private network (VPN), AWS Direct
Connect 또는 VPC peering
연결되어 있지 않으면 Public IP
필요
35. AWS Schema Conversion Tool(SCT) 개요
• 주요 기능
• 오라클, SQL 서버를 Aurora, MySQL, MariaDB, PostgreSQL로 스키마
변환
• 대상 엔진 선택을 위한 데이터베이스 마이그레이션 진단 보고서 제공
• 수동 변환이 필요한 부분을 하이라이트 하는 코드 브라우저
“AWS Schema Conversion Tool은 오라클 및
SQL 서버에서 오픈소스 데이터베이스 엔진으로
마이그레이션 시 스키마 및 코드 변환 작업을
자동화하는 도우미”
36. SCT를 통한 테이블, 뷰 및 코드 변환
시퀀스
사용자 정의 타입
패키지
스토어드 프로시저
함수
트리거
스키마
테이블
인덱스
뷰
37. SCT를 통한 마이그레이션 진단 보고서
1. SCT를 원본 및
대상 데이터베이스에
접속
2. 진단 보고서 실행
3. 요약 보고 조회
4. 상세 가이드에 따라
작업
39. $0
소프트웨어 라이선스
비용 및 사용 조건
• 비용
• 무료 소프트웨어 라이선스
• AWS 계정을 가진 고객
• 사용 조건
• Amazon RDS, Amazon Redshift
또는 Amazon EC2 기반
데이터베이스로 마이그레이션에
사용
• 다른 대상 데이터베이스로 사용
시, 별도 비용
41. 데이터베이스 AWS 마이그레이션
• You’re not alone !!
• AWS의 데이터베이스 마이그레이션 서비스 활용
• AWS Database Migration Service를 통한 다운타임 최소화
• AWS Schema Conversion Tool을 통한 스키마 변환
• 글로벌 AWS 고객들이 상용 데이터베이스에서 오픈소스
데이터베이스로 마이그레이션 수행 중
• 원 모어 씽 !!