1. 개요
구글 클라우드는 5월 12일 연례 구글 개발자 컨퍼런스 Google I/O 2022에서 프리뷰 단계(하반기 GA 예정)의 AlloyDB를 발표했습니다. AlloyDB는 구글의 스케일 아웃 컴퓨팅과 스토리지 기능, AI/ML 기반 관리 기능 등을 PostgreSQL과 통합한 완전 관리형의 오픈소스 DB 서비스입니다.
구글은 AlloyDB가 업계 최고의 성능과 가용성을 제공하며, 사용자가 쏟아붓는 모든 상용 수준의 워크로드를 처리할 수 있다고 소개했습니다. AlloyDB의 간략한 아키텍처와 이로인해 AlloyDB가 가지는 몇 가지 특징들에 대해 알아보도록 하겠습니다.
2. AlloyDB 아키텍처
AlloyDB의 핵심은 컴퓨팅과 스토리지의 완전한 분리입니다. 구글은 AlloyDB를 위해 데이터베이스 인스턴스와는 별도로 확장되며, 프라이머리 인스턴스로부터 작업을 오프로드하는 새로운 지능형 데이터베이스 최적화 스토리지 계층을 구축했습니다.
이러한 아키텍처를 통해 필요에 따라 컴퓨팅을 추가할 수 있는 유연성과 확장성을 갖게 되며, 스토리지 계층 자체 내에서 자동 리밸런싱하여 로드를 원활히 할 수 있습니다.
AlloyDB는 DRAM, 초고속 캐시 및 스토리지 간의 자동 데이터 티어링이 가능합니다. 또한 캐시 간의 데이터를 지능적으로 구성하는데, 쿼리의 성능을 극대화하기 위해 행 기반의 형식과 열 기반의 형식을 모두 사용합니다. AlloyDB는 워크로드에 대한 지속적인 모니터링을 통해 열 저장소에 속하는 열과 테이블을 결정한 이후 자동적으로 열 형식으로 변환합니다. 따라서 쿼리가 들어오면 쿼리플래너는 모든 쿼리의 성능을 최적화하기 위해 행 기반, 열 기반 또는 하이브리드 실행 중 하나를 선택합니다. 그리고 AlloyDB는 열 저장소 내에서 최신 프로세서의 단일 명령, 다중 데이터, SIMD(Single Instruction Multiple Data, 병렬 컴퓨팅의 한 종류로 하나의 명령어로 여러 개의 값을 동시에 계산하는 방식) 기능을 기반으로 쿼리의 실행 속도를 높입니다.
이러한 아키텍처 및 기능은 기존 RDBMS에서는 제공하지 않는 기능으로, AlloyDB가 다음과 같은 특징들을 가질 수 있도록 합니다.
3. AlloyDB 특징
(1) 혁신적인 성능
AlloyDB는 표준 PostgreSQL 대비 4배 이상 빠른 트랜잭션 워크로드 처리 속도를 기록했습니다. 이는 AWS가 제공하는 관계형 클라우드 DB인 Aurora보다 트랜잭션 데이터 처리에서 2배 빠른 수준입니다. 또한 분석 쿼리 처리의 경우 표준 PostgreSQL 대비 100배 더 빠른 속도를 기록하기도 했습니다.
(2) 높은 신뢰성과 가용성
AlloyDB는 높은 신뢰성과 가용성을 가집니다. 계획되지 않은 장애뿐만 아니라 데이터베이스의 유지 보수도 포함하는 99.99%의 SLA를 제공하여 최종 사용자에게 보다 나은 서비스를 제공할 수 있도록 지원합니다. AlloyDB는 데이터베이스의 크기 및 로드에 관계없이 60초 이내에 대부분의 장애를 자동으로 감지하고 복구합니다.
(3) 높은 확장성
AlloyDB의 읽기는 수평으로 확장되며 1,000개 이상의 vCPU에서 로드 밸런싱이 이루어집니다. 쓰기의 경우 GCE에서 지원되는 최대 인스턴스까지 코어 수에 따라 선형적으로 확장됩니다. 스토리지 또한 지능형 데이터베이스 스토리지 엔진에 의해 자동 확장됩니다. 이러한 AlloyDB의 높은 확장성은 수요의 변화에 적절히 대응할 수 있어 데이터베이스 성능 저하로 인한 데이터 병목 문제 등을 해결할 수 있습니다. 즉, 사업의 성장 및 확장 속도에 맞춰 데이터베이스의 확장이 가능하며, 필요에 따른 리소스의 사용으로 예측 가능하고 비용 효율적인 성능의 서비스 이용이 가능하게 되는 것입니다.
(4) 머신러닝을 통한 관리의 용이성
AlloyDB는 머신러닝과 기타 적응형 알고리즘을 사용하여 포괄적인 데이터베이스의 모니터링이 가능하며, 문제해결 및 최적화가 가능하여 관리가 용이합니다. 이러한 기능을 위하여 설계된 Autopilot 시스템은 고객 워크로드의 요구에 맞는 자동 관리와 동적 조정이 가능하도록 지원합니다. 메모리 관리, 데이터 계층화 등 복잡한 관리 작업을 걱정할 필요가 없습니다.
(5) 지능형 트랜잭션
AlloyDB는 지능형 트랜잭션을 통해 애플리케이션에 직접 머신 러닝을 쉽게 구축할 수 있습니다. AlloyDB는 구글 클라우드의 인공지능 플랫폼인 Vertex AI와 사전 통합됐습니다. 따라서 개발자는 Vertex AI에서 모델을 만든 다음 추가적인 애플리케이션 코드를 작성할 필요 없이 쿼리나 트랜잭션 내에서 호출을 할 수 있게 됩니다.
(6) PostgreSQL과의 완전한 호환성
AlloyDB는 PostgreSQL에서 지원하는 광범위한 확장 및 플래그를 제공하여 완전한 호환성을 가집니다. PostgreSQL 14와 완벽히 호환되는 AlloyDB로 출시될 예정이지만, 가장 최신 버전과의 PostgreSQL과도 연계가 되어 PostgreSQL의 발전과 더불어 AlloyDB 역시 함께 발전될 것입니다. 데이터베이스 마이그레이션 서비스를 통해 PostgreSQL 애플리케이션을 추가적인 코드의 변화 없이 as-is 상태로 이동시킬 수 있습니다.
(7) 예측가능한 투명한 가격 책정
마지막으로, AlloyDB는 라이선스 비용 또는 불투명한 I/O비용 없이 투명하게 가격이 책정됩니다. 컴퓨팅 및 스토리지 사용량에 기반하여 업계 최고의 가격 대비 성능으로 사용하실 수 있습니다.
4. 결론
최근 점점 더 많은 기업이 분석에 데이터베이스를 사용하려는 움직임과 함께 클라우드 시장에서 데이터베이스는 최대 격전지 중 하나로 부상했습니다. Gartner에 따르면 현재 50% 이상의 레거시 데이터베이스가 오픈 소스로 전환되고 있으며, 70% 이상의 새로운 애플리케이션 개발은 오픈 소스 데이터베이스에서 이루어지고 있다고 합니다. 이와 같은 상황에서 구글 클라우드는 AlloyDB를 앞세워 타 클라우드 업체와의 경쟁에서 지분을 확보할 수 있을 것으로 기대됩니다.
성능적인 측면에서 AlloyDB는 타 CSP에서 제공되는 유사 서비스 대비 빠른 트랜잭션 워크로드 및 분석 쿼리 처리 속도를 가집니다. 특히 적응형 알고리즘과 머신러닝을 통해 PostgreSQL 베큠 관리, 스토리지 및 메모리 관리, 데이터 계층화, 분석 가속화 등을 지원하며 구글 클라우드의 AI 플랫폼인 Vertex AI와 기본 통합되어 쿼리나 트랜잭션 내에서 직접 모델 호출이 가능합니다.
PostgreSQL 워크로드에 대한 애플리케이션 변경 없이 처리량을 증가하고자 하거나, 관리형 서비스를 통해 데이터베이스 운영에 더 적은 시간을 할애하여 부가가치 작업에 더 많은 시간을 할애하고자하는 고객이라면 AlloyDB를 고려해볼 수 있습니다. 또한 구글이 AlloyDB가 레거시 제품 사용 시 발생하는 벤더 종속 및 값비싼 라이선스 문제를 해결할 수 있다고 자신하는만큼, 기업이 보다 유연한 환경에서 비용 효율적으로 애플리케이션을 개발하고 현대화할 수 있도록 지원할 것입니다.
출처