개요
Amazon RDS 및 Amazon Aurora 데이터베이스와 같은 서비스를 사용하면 기존 관계형 데이터베이스를 온프레미스 서버에서 AWS로 리프트 앤 시프트할 수 있습니다. 데이터 규모가 증가함에 따라 기존 관계형 데이터베이스 관리 시스템(RDBMS)을 관리하는 복잡성도 증가합니다. 증가하는 데이터 규모 및 다양성에 보조를 맞추고 신속한 데이터 검색에 대한 요구를 충족하려면 비관계형(NoSQL이라고도 함) 데이터베이스 사용을 고려하는 것이 중요합니다.
비관계형 데이터베이스: 비관계형 데이터베이스는 문서, 그래프, 키-값, 인 메모리, 검색과 같은 데이터 액세스 및 관리를 위해 다양한 데이터 모델을 사용합니다. 이러한 유형의 데이터베이스는 특히 방대한 데이터 볼륨, 낮은 지연 시간 및 유연한 데이터 모델이 필요한 애플리케이션에 최적화되어 있으며, 이는 다른 데이터베이스의 데이터 일관성 제한을 일부 완화하여 달성됩니다.
이 실습에서는 관계형 데이터 모델을 비관계형 데이터 모델로 변환하고 변환된 데이터를 Amazon DocumentDB(MongoDB 호환)로 가져오는 접근 방식을 살펴봅니다. 비즈니스 목표를 달성하기 위해 복잡한 쿼리를 실행합니다. 또한 백업 및 성능 모니터링 옵션에 대해서도 조사합니다.
Amazon DocumentDB: Amazon DocumentDB는 처음부터 미션 크리티컬 MongoDB 워크로드를 대규모로 운영하는 데 필요한 성능, 확장성 및 가용성을 제공하도록 설계되었습니다. Amazon DocumentDB는 MongoDB 클라이언트가 MongoDB 서버에서 예상하는 응답을 에뮬레이션하여 Apache 2.0 오픈 소스 MongoDB 3.6 및 4.0 API를 구현하므로 Amazon DocumentDB에서 기존 MongoDB 드라이버 및 도구를 사용할 수 있습니다. Amazon DocumentDB에서는 스토리지와 컴퓨팅이 분리되어 각각 독립적으로 크기를 조정할 수 있으며, 데이터 규모에 관계없이 몇 분 안에 지연 시간이 짧은 읽기 전용 복제본을 최대 15개까지 추가하여 읽기 용량을 초당 수백만 건 요청으로 늘릴 수 있습니다. Amazon DocumentDB는 99.99%의 가용성을 지원하도록 설계되었으며 3개의 AWS 가용 영역에 걸쳐 6개의 데이터 사본을 복제합니다.
목표
이 실습을 완료하면 다음을 수행할 수 있습니다.
- 관계형 및 비관계형 데이터 평가
- Amazon DocumentDB에서 데이터 로드 및 확인
- 복잡한 쿼리를 실행하여 비즈니스 목표 충족
- Amazon DocumentDB의 상태 및 성능 모니터링
- 백업에서 Amazon DocumentDB 데이터베이스 복원
수강 전 권장 사항
이 실습에는 다음이 필요합니다.
- Microsoft Windows, macOS X 또는 Linux(Ubuntu, SUSE, Red Hat)가 실행되는 Wi-Fi 지원 노트북
- 참고: 이 지침은 iPad 또는 태블릿 디바이스를 사용해 실습 콘솔에서 확인할 수 있습니다.
- 인터넷 브라우저(예: Chrome, Firefox 또는 IE9 이상)
- 참고: 이전 버전의 Internet Explorer는 지원되지 않습니다.
- PuTTY와 같은 SSH 클라이언트
필수 기술 지식
이 실습을 성공적으로 완료하려면 다음 내용에 익숙해야 합니다.
- AWS 관리 콘솔에 대한 기본 탐색
- 데이터베이스 개념, MySQL 및 데이터베이스 가용성에 대한 이해
소요 시간
이 실습을 완료하는 데 60분 정도가 소요됩니다.
이 실습에서 사용되지 않는 AWS 서비스
이 실습에서 사용하지 않는 AWS 서비스는 실습 환경에서 사용 중지됩니다. 또한 이 실습에 사용되는 서비스의 기능은 실습에 필요한 작업으로 제한됩니다. 다른 서비스에 액세스하거나 이 실습 가이드에서 제공하는 것 이외의 작업을 수행하는 경우 오류가 발생할 수 있습니다.
실습 환경
실습 환경에는 Amazon EC2 인스턴스, AWS Identity and Access Management(IAM) 역할 및 Amazon DocumentDB 데이터베이스와 같은 필수 구성 요소가 이미 포함되어 있습니다. 이 실습에는 코드를 검토하고, 필요한 변수를 구성하고, 스크립트를 실행하기 위한 지침이 포함되어 있으므로 필요할 때 구성 요소를 설정할 수 있습니다.
데이터베이스 인스턴스는 프라이빗 서브넷 내부의 서로 다른 가용 영역에 배치되며 CommandHost 역할을 하는 Amazon EC2 인스턴스는 인터넷에 액세스할 수 있는 퍼블릭 서브넷에 프로비저닝됩니다. 데이터베이스에 액세스하려면 먼저 CommandHost에 연결한 다음, 포트 27017을 통해 데이터베이스 인스턴스에 연결해야 합니다. 또한 쿼리는 미리 프로비저닝되어 있는 Amazon API Gateway 및 AWS Lambda 함수를 사용하여 실행됩니다. Amazon DocumentDB 자격 증명을 저장하기 위해 AWS Secrets Manager도 설정되어 있습니다.