개요
Amazon Aurora는 MySQL 및 PostgreSQL과 호환되는 관계형 데이터베이스 엔진으로서, 클라우드용으로 구축되었습니다. 하드웨어 프로비저닝, 데이터베이스 설정, 패치 및 백업과 같은 시간 소모적인 관리 태스크를 자동화하는 Amazon Relational Database Service(RDS)에서 Aurora의 모든 것을 관리합니다. Aurora는 특수 목적 분산형 최신 스토리지 시스템에 구축됩니다. 모든 데이터는 수백 개의 스토리지 노드에 걸쳐 3개의 서로 다른 AWS 가용 영역에 분산되며, 영역당 2개의 사본이 있습니다. Aurora MySQL 및 PostgreSQL과 호환되는 데이터베이스 엔진은 빠른 분산형 스토리지를 활용하도록 사용자 지정됩니다.
기본적으로 쿼리는 모든 스캔된 데이터를 Aurora 클러스터 내의 단일 헤드 노드에 배치하고 그곳에서 모든 쿼리 처리를 수행합니다. 추가 성능 개선을 위해 병렬 쿼리를 사용할 수 있습니다. 병렬 쿼리는 Aurora가 데이터 집약적 스테이트먼트의 일부 I/O 및 컴퓨팅을 스토리지 노드로 위임하거나 푸시하는 최적화 기법입니다. Aurora 병렬 쿼리는 새로운 데이터가 포함된 대용량 테이블에서 빠른 스테이트먼트 성능이 필요한 분석 워크로드에 적합합니다. 이러한 유형의 워크로드는 운영적인 성격을 띠는 경우가 많습니다.
이 실습에서는 병렬 쿼리가 스테이트먼트에 어떻게 그리고 언제 적용되는지 살펴봅니다. 또한 병렬 쿼리가 가장 많은 혜택을 제공하는 경우에 적용되게 하는 방법도 확인할 수 있습니다.
목표
이 실습을 완료하면 다음을 수행할 수 있습니다.
- 병렬 쿼리가 워크로드에 어떻게 도움이 되는지 이해
- 대규모 데이터 집합에 대한 병렬 쿼리의 이점 이해
- 병렬 쿼리가 트리거되는 일부 상황 확인
수강 전 권장 사항
이 실습에는 다음이 필요합니다.
- Microsoft Windows, macOS X 또는 Linux(Ubuntu, SuSE, Red Hat)가 실행되는 Wi-Fi 지원 노트북
- 참고: 이 지침은 iPad 또는 태블릿 디바이스를 사용해 실습 콘솔에서 확인할 수 있습니다.
- 인터넷 브라우저(예: Chrome, Firefox 또는 IE9 이상)
- 참고: 이전 버전의 Internet Explorer는 지원되지 않습니다.
- PuTTY와 같은 SSH 클라이언트
필수 기술 지식
이 실습을 성공적으로 완료하려면 다음 내용에 익숙해야 합니다.
- MySQL 데이터베이스 구문 및 작업에 대한 지식
소요 시간
이 실습을 완료하는 데 60분 정도가 소요됩니다.
이 실습에서 사용되지 않는 AWS 서비스
이 실습에서 사용하지 않는 AWS 서비스는 실습 환경에서 사용 중지됩니다. 또한 이 실습에 사용되는 서비스의 기능은 실습에 필요한 작업으로 제한됩니다. 다른 서비스에 액세스하거나 이 실습 가이드에서 제공하는 것 이외의 작업을 수행하는 경우 오류가 발생할 수 있습니다.
실습 환경
이 실습 환경은 단일 클러스터에 2개의 Aurora 데이터베이스 인스턴스로 구성됩니다. 인스턴스는 크기가 다르며 동일한 예시 데이터 집합이 미리 로드됩니다. 또한 환경에는 데이터베이스 인스턴스에 액세스하기 위한 Amazon Elastic Compute Cloud (Amazon EC2) 인스턴스와 미리 구성된 위젯이 있는 Amazon CloudWatch 대시보드가 포함되어 있습니다.
다음 이미지는 환경의 네트워크 다이어그램입니다.
교통 통계국 항공 정보과에서 수집한 약 3,000만 개의 레코드로 이루어진 5년 간 미국 비행 데이터가 미리 로드되어 있습니다. 이 실습에서는 병렬 쿼리의 이점을 활용할 수 있는 여러 스테이트먼트를 살펴봅니다. 병렬 쿼리가 서버 로드에 어떤 영향을 미치는지 보다 정확하게 이해할 수 있도록 CloudWatch 대시보드에 표시된 버퍼 사용률, 결과 시간 및 지표 그래프를 검사합니다.
본 실습에 사용된 데이터 세트는 미국 교통 통계국 항공 정보과에서 수집한 예정 및 실제 입출국 시간(1987~2019)으로 https://www.transtats.bts.gov/DatabaseInfo.asp?DB_ID=120&DB_URL=Mode_ID=1&Mode_Desc=Aviation&Subject_ID2=0에서 제공됩니다.