Amazon Web Services 한국 블로그

Amazon Aurora 업데이트 – 공간 인덱스와 제로 다운 타임 패치 기능 출시

AWS의 다양한 서비스 중 Amazon Aurora는  가장 빠르게 성장하고 있는 서비스입니다! 많은 고객은 빠른 속도, 성능 및 가용성에서 MySQL 호환 Aurora을 많이 이용 하시고 있으며, 향후 PostgreSQL 호환 Aurora역시 기대하시고 있습니다.

오늘 AWS re:Invent에서 새로 발표한 두 가지 기능인 공간 인덱스와 제로 다운 타임 패치 기능을 출시했습니다.

공간 인덱스
Amazon Aurora는 지금까지 공간 지점이나 면을 대표하는 GEOMETRY 형식을 사용할 수 있었습니다. 이러한 형식을 사용하여 열을 만들고, ST_Contains, ST_Crosses, ST_Distance (기타 다른 객체) 등의 기능을 공간 질의(spatial query)를 실행하는 데 사용하였습니다. 이들 질의 방식은 매우 강력하지만, 대용량 데이터 세트에 대해 조정하려면 미흡한 점이나 제한 사항이 있었습니다.

Aurora을 이용하여 대용량 위치 정보를 사용하는 응용 프로그램을 작성하기 위해 공간 데이터에 대해 매우 효율적인 인덱스를 사용하실 수 있게 되었습니다. Aurora는 dimensionally ordered space-filling curve (차원 정렬 공간 보충 곡선)을 이용하여, 빠른 확장성과 정확한 정보 검색을 수행할 수 있습니다. 인덱스는 b-tree를 사용하여, MySQL5.7에 비해 최대 2 배의 성능을 보입니다 (자세한 내용은 Amazon Aurora Deep Dive  및 발표 자료를 참고하세요.)

본 기능을 현재 이용하기 위해서는, Aurora Lab Mode를 사용하실 필요가 있습니다. 이 기능을 활성화 한 후 기존 테이블과 새로 생성하는 테이블에 spatial index를 설정하실 수 있습니다 (자세한 내용은 Amazon Aurora and Spatial Data를 참조하십시오).

제로 다운 타임 패치
24시간 돌아가는 서비스에서 데이터베이스에 대한 패치와 업데이트를 위해 DB를 오프라인으로 돌릴 수 없고,  읽기 복제본(read replica)를  마스터로 임시로 변경하여 고가용성을 확보 한 후, 업데이트를 하는 방법을 이용해 왔습니다.

오늘 새로운 제로 다운 타임 패치 기능을 통해 Aurora 인스턴스 패치를 다운 타임이 없고, 고 가용성에 영향을 주지 않고 온라인으로 수행 할 수 있게 되었습니다. 이 기능은 현재 최신 버전 (1.10)가 적용된 Aurora 인스턴스에서 잘 작동합니다. 단일 노드 클러스터 및 다중 노드 클러스터 쓰기(Writer) 인스턴스 모두에서 작동하지만, 바이너리 로그가 활성화되어 있는 경우 비활성화됩니다.

이 패치 방식은 이미 열려있는 오픈 SSL(open SSL) 연결,  활성화 및 잠금 등의 트랜잭션 완료 및 임시 테이블 삭제 등을 기다립니다. 패치 적용 가능한 윈도우가 생긴 경우, 제로 다운 타임 패치를 적용합니다. 응용 프로그램 세션은 유지한 채, 패치가 적용되는 동안 데이터베이스 엔진이 재시작합니다. 순간 (5 초 정도) 처리량 저하가 발생합니다. 만약 제로 다운 타임 패치에서 적용 할 수 있는 윈도우가 없으면, 일반 패치 프로세스가 실행됩니다.

어떻게 동작하는지와 구현 방법에 대한 상세 정보는 Amazon Aurora Deep Dive video을 참조하십시오.

정식 출시
이 기능은 Amazon Aurora를 제공하는 모든 리전에서 오늘 부터 사용 가능합니다.

Jeff;

이 글은 Amazon Aurora Update – Spatial Indexing and Zero-Downtime Patching의 한국어 번역입니다.