구글 스패너
1. 개요
1. 개요
구글 스패너는 구글이 개발하고 구글 클라우드를 통해 제공하는 분산형 관계형 데이터베이스 관리 시스템이다. 이 서비스는 2017년 5월 3일에 일반 공개되었다. 스패너는 전 세계적으로 분산된 대규모 온라인 트랜잭션 처리 애플리케이션을 위해 설계되었으며, 특히 고가용성과 강력한 일관성이 동시에 요구되는 글로벌 서비스에 적합하다.
이 시스템은 클라우드 컴퓨팅 환경에서 전통적인 관계형 데이터베이스의 기능과 분산 시스템의 확장성 및 복원력을 결합한 것이 특징이다. 사용자는 복잡한 샤딩이나 수동 장애 조치 없이도 글로벌 규모의 데이터베이스를 운영할 수 있다. 스패너는 SQL을 지원하며, 관계형 데이터 모델을 사용한다.
2. 주요 특징
2. 주요 특징
2.1. 글로벌 분산 및 강한 일관성
2.1. 글로벌 분산 및 강한 일관성
구글 스패너의 핵심 설계 철학은 전 세계에 분산된 데이터베이스를 제공하면서도 단일 데이터베이스처럼 강력한 일관성을 보장하는 것이다. 이는 전통적인 분산 시스템에서 흔히 발생하는 일관성, 가용성, 분할 내성의 트레이드오프를 극복하기 위한 접근 방식이다. 스패너는 데이터를 여러 데이터 센터와 대륙에 걸쳐 자동으로 복제하여 지리적 분산을 실현한다.
이러한 글로벌 분산 환경에서도 스패너는 외부 일관성을 포함한 강한 일관성 읽기와 쓰기를 제공한다. 이는 CAP 정리의 관점에서 일관성을 최우선으로 선택한 설계라 할 수 있다. 사용자는 어느 리전에서 데이터를 조회하더라도 가장 최근에 커밋된 결과를 항상 확인할 수 있으며, 이는 글로벌 트랜잭션의 원자성을 보장하는 메커니즘 덕분에 가능하다.
강한 일관성을 구현하는 기술적 기반은 TrueTime API와 Paxos 합의 알고리즘에 있다. TrueTime은 전 세계 서버 간의 시간 동기화 오차를 명시적으로 노출하여, 타임스탬프를 이용한 트랜잭션 순서 보장을 정확하게 수행할 수 있게 한다. Paxos는 데이터의 복제본 그룹 내에서 쓰기 연산에 대한 합의를 이루어, 일관성을 유지하면서도 고가용성을 제공한다.
결과적으로, 개발자는 복잡한 분산 시스템 로직을 직접 구현하지 않고도, 마치 단일 지역의 데이터베이스를 사용하듯이 SQL 쿼리와 트랜잭션을 작성하여 글로벌 서비스를 구축할 수 있다. 이는 금융 거래나 재고 관리 시스템처럼 데이터 정확성이 극히 중요한 온라인 트랜잭션 처리 애플리케이션에 매우 적합한 특성이다.
2.2. 자동 샤딩 및 관리
2.2. 자동 샤딩 및 관리
구글 스패너는 데이터베이스의 확장성과 운영 효율성을 위해 자동 샤딩 기능을 핵심으로 제공한다. 샤딩은 데이터를 여러 서버에 분할하여 저장하는 기법으로, 단일 서버의 한계를 넘어 수평적 확장을 가능하게 한다. 스패너는 이러한 샤딩 작업을 완전히 자동화하여, 개발자가 데이터베이스 스키마를 설계할 때 샤딩 키를 지정하기만 하면 시스템이 데이터의 분산 배치, 로드 밸런싱, 샤드 간 데이터 재분배를 자동으로 관리한다. 이는 애플리케이션의 부하 증가에 유연하게 대응할 수 있게 해준다.
관리 측면에서 스패너는 완전 관리형 서비스로서, 사용자가 하드웨어 프로비저닝, 소프트웨어 패치, 백업, 복제 구성과 같은 복잡한 데이터베이스 운영 작업을 직접 수행할 필요가 없다. 시스템은 지속적으로 상태를 모니터링하며, 성능 저하나 장애가 발생할 경우 자동으로 복구 절차를 수행한다. 예를 들어, 특정 샤드에 과부하가 걸리면 시스템이 이를 감지하고 데이터를 다른 샤드로 자동 이전하여 부하를 분산시킨다. 이러한 자동화는 운영 부담을 크게 줄이고 개발자가 비즈니스 로직에 집중할 수 있도록 한다.
자동 샤딩과 관리는 스패너의 글로벌 분산 아키텍처와 밀접하게 연동되어 작동한다. 데이터가 전 세계 여러 리전에 걸쳐 자동으로 분산 저장되더라도, 시스템은 이를 하나의 논리적 데이터베이스처럼 관리한다. 사용자는 복잡한 분산 시스템의 세부 사항을 알 필요 없이 표준 SQL 쿼리를 사용하여 전 세계 어디서나 강한 일관성을 유지하며 데이터에 접근할 수 있다. 이는 대규모 글로벌 서비스를 구축하는 기업에게 매우 중요한 장점이다.
2.3. SQL 지원 및 관계형 데이터 모델
2.3. SQL 지원 및 관계형 데이터 모델
구글 스패너는 전통적인 관계형 데이터베이스의 핵심 기능을 유지하면서도 글로벌 분산 환경에 적합하도록 설계되었다. 이는 완전한 SQL 쿼리 언어를 지원하여 개발자들이 익숙한 구문을 사용해 데이터를 조회하고 조작할 수 있게 한다. 또한 트랜잭션 처리, 외래 키 제약 조건, ACID 속성과 같은 표준 관계형 데이터 모델의 특성을 제공한다.
구글 스패너의 데이터 모델은 테이블, 행, 열로 구성되며, 스키마를 미리 정의해야 한다. 이는 구글 클라우드의 다른 NoSQL 데이터베이스인 구글 클라우드 빅테이블과 대비되는 점이다. 빅테이블이 스키마가 없는 와이드 컬럼 스토어라면, 스패너는 구조화된 데이터와 복잡한 쿼리에 최적화된 관계형 모델을 채택했다.
이러한 관계형 기능은 온라인 트랜잭션 처리 애플리케이션을 구축하는 데 필수적이다. 예를 들어, 금융 거래나 재고 관리 시스템에서는 여러 테이블 간의 정확한 조인 연산과 데이터 무결성이 보장되어야 한다. 구글 스패너는 이러한 요구사항을 충족시키면서도, 데이터를 전 세계 여러 데이터 센터에 자동으로 분산시키고 강한 일관성을 유지할 수 있는 독특한 장점을 지닌다.
2.4. 고가용성 및 자동 장애 조치
2.4. 고가용성 및 자동 장애 조치
구글 스패너는 고가용성을 핵심 설계 목표로 삼아, 시스템의 지속적인 가동과 데이터 접근성을 보장한다. 이를 위해 데이터는 여러 데이터 센터에 걸쳐 동기적으로 복제되며, Paxos 합의 알고리즘을 기반으로 한 복제 메커니즘을 사용한다. 이 구조는 단일 데이터 센터나 서버에 장애가 발생하더라도 다른 복제본이 즉시 서비스를 이어갈 수 있게 하여, 애플리케이션 수준에서의 장애 조치 로직을 복잡하게 구현할 필요가 없게 한다.
장애 발생 시의 복구는 자동으로 이루어진다. 스패너는 구성 요소의 상태를 지속적으로 모니터링하며, 리더 복제본이나 전체 존(Zone)에 문제가 감지되면 시스템이 자동으로 새로운 리더를 선출하거나 트래픽을 정상적인 복제본으로 전환한다. 이 자동 장애 조치 과정은 일반적으로 수초 이내에 완료되어, 애플리케이션에 거의 지연 없이 서비스를 재개할 수 있도록 한다. 이러한 특성은 금융 서비스나 글로벌 전자상거래 플랫폼과 같이 중단이 허용되지 않는 비즈니스에 매우 중요하다.
고가용성은 단순한 장애 조치를 넘어서 데이터의 내구성과도 깊이 연관되어 있다. 모든 쓰기 작업은 다수의 복제본에 커밋된 후에만 완료된 것으로 간주되므로, 지역적 재해가 발생하더라도 데이터 손실 없이 서비스를 복구할 수 있다. 구글 클라우드 내에서 스패너 인스턴스를 다중 리전 구성으로 배포하면, 한 지리적 지역 전체에 장애가 발생해도 다른 지역의 인스턴스가 서비스를 유지할 수 있는 재해 복구 수준의 가용성을 제공한다.
3. 아키텍처
3. 아키텍처
3.1. TrueTime API
3.1. TrueTime API
구글 스패너의 핵심 아키텍처 요소 중 하나는 TrueTime API이다. 이는 분산 시스템에서 시간 동기화 문제를 해결하기 위해 구글이 개발한 독특한 기술이다. 전통적인 분산 데이터베이스는 각 서버의 로컬 시계에 의존하는데, 이 시계들은 물리적 한계로 인해 완벽하게 동기화되지 않아 시간 차이가 발생할 수 있다. 이러한 시간 차이는 트랜잭션의 순서 보장과 같은 강한 일관성 유지에 치명적인 문제를 일으킬 수 있다.
TrueTime API는 이러한 문제를 극복하기 위해 설계되었다. 이 API는 단일 시계 소스에 의존하지 않고, GPS 수신기와 원자 시계와 같은 정밀한 하드웨어 시계를 다수 사용하여 시간을 결정한다. 이를 통해 API는 현재 시간을 단일 값이 아니라 불확실성 범위를 포함한 시간 구간([earliest, latest])으로 반환한다. 시스템은 이 불확실성 구간을 고려하여 트랜잭션의 전역적 순서를 결정함으로써, 모든 서버가 일관된 시간 관점을 가질 수 있도록 보장한다.
TrueTime의 도입은 스패너가 강한 일관성을 유지하면서도 전 세계에 데이터를 분산 저장할 수 있는 기반이 되었다. 특히 분산 트랜잭션의 커밋 타임스탬프를 할당하고, 데이터의 버전을 관리하는 데 있어 결정적인 역할을 한다. 이는 스패너가 다른 많은 분산 데이터베이스와 차별화되는 점으로, CAP 정리의 관점에서 일관성(Consistency)과 가용성(Availability)을 동시에 높은 수준으로 제공할 수 있게 하는 근간이 된다.
3.2. Paxos 기반 복제
3.2. Paxos 기반 복제
구글 스패너는 데이터의 안정적인 복제와 일관성을 보장하기 위해 Paxos 합의 알고리즘을 기반으로 한 복제 방식을 채택한다. 이는 전통적인 마스터-슬레이브 복제 방식에서 발생할 수 있는 단일 장애점 문제를 해결하며, 모든 복제본이 동등한 권한을 가지는 다중 리더 구조를 가능하게 한다.
구글 스패너의 기본 저장 단위인 샤드는 Paxos 그룹으로 구성된다. 각 샤드는 여러 데이터 센터에 걸쳐 분산된 3개 이상의 복제본을 가지며, 이 복제본들이 하나의 Paxos 그룹을 이룬다. 이 그룹 내에서 모든 데이터 읽기와 쓰기 작업은 Paxos 프로토콜을 통해 합의 과정을 거쳐 처리된다. 이를 통해 네트워크 지연이나 서버 장애가 발생하더라도 데이터의 정확성과 가용성을 유지할 수 있다.
이러한 Paxos 기반 복제는 구글 스패너가 제공하는 강한 일관성의 핵심 기반이 된다. 클라이언트가 데이터를 읽을 때, 최신으로 합의된 데이터를 반환받을 수 있도록 보장한다. 또한 자동 장애 조치 기능을 지원하여, 그룹 내의 어떤 복제본에 장애가 발생하더라도 나머지 복제본들이 새로운 합의를 통해 서비스를 지속할 수 있게 한다. 이는 시스템의 고가용성을 실현하는 데 결정적인 역할을 한다.
3.3. 분산 트랜잭션 처리
3.3. 분산 트랜잭션 처리
구글 스패너는 대규모 글로벌 분산 환경에서도 강력한 일관성을 유지하는 분산 트랜잭션을 지원하는 것이 핵심 특징이다. 이를 위해 2단계 커밋 프로토콜을 활용하며, 트랜잭션 관리자 역할을 하는 '참여자 리더'가 트랜잭션의 커밋 또는 중단을 조정한다. 이 과정은 Paxos 알고리즘을 기반으로 한 복제 그룹 내에서 수행되어 고가용성을 보장한다.
스패너의 트랜잭션은 외부적 일관성을 제공한다. 즉, 한 트랜잭션이 커밋된 후에 시작된 다른 트랜잭션은 그 결과를 반드시 확인하게 된다. 이러한 일관성 수준은 타임스탬프 순서화와 TrueTime API라는 독자적인 글로벌 시간 동기화 기술을 통해 달성된다. 모든 트랜잭션과 데이터 버전에는 TrueTime으로부터 부여된 정확한 시간 범위가 태그되어, 시스템이 전 세계에 분산된 데이터의 읽기 일관성을 정확하게 관리할 수 있게 한다.
이 아키텍처는 읽기-쓰기 트랜잭션뿐만 아니라 읽기 전용 트랜잭션에도 적용된다. 사용자는 스냅샷 격리 수준의 읽기 작업을 지정할 수 있으며, 시스템은 지정된 시간점이나 과거의 일관된 데이터 스냅샷을 제공한다. 이는 분석 쿼리를 실행하면서도 동시에 발생하는 쓰기 트랜잭션을 방해하지 않는 효율적인 운영을 가능하게 한다.
4. 사용 사례
4. 사용 사례
4.1. 금융 서비스
4.1. 금융 서비스
구글 스패너는 글로벌 분산 아키텍처와 강한 일관성 보장을 통해 금융 서비스 분야의 핵심 시스템에 적합한 데이터베이스 솔루션을 제공한다. 이 분야에서는 실시간으로 대량의 거래 데이터를 처리하면서도 데이터의 정확성과 일관성이 절대적으로 요구된다. 특히 은행의 계좌 이체, 증권사의 주문 체결, 결제 게이트웨이의 승인 처리와 같은 온라인 트랜잭션 처리(OLTP) 작업에서 스패너의 분산 트랜잭션과 동기식 복제 기능은 데이터 불일치 없이 글로벌 규모의 서비스를 가능하게 한다.
고가용성과 자동 장애 조치 기능은 금융 시스템의 연중무휴 가동 요구사항을 충족시킨다. 한 데이터 센터나 지역에 장애가 발생하더라도 다른 지역의 복제본으로 트래픽이 자동으로 전환되어 서비스 중단을 방지한다. 이는 핀테크 애플리케이션이나 글로벌 전자상거래 플랫폼의 결제 백엔드와 같이 가용성이 중요한 시스템에 필수적이다. 또한 규정 준수와 감사를 위해 거래 내역의 정확한 타임스탬프와 변경 이력 추적이 필요한데, 스패너의 TrueTime API가 제공하는 글로벌적으로 일관된 시간 개념이 이를 지원한다.
4.2. 글로벌 게임 플랫폼
4.2. 글로벌 게임 플랫폼
글로벌 게임 플랫폼은 구글 스패너의 주요 사용 사례 중 하나이다. 전 세계에 수백만 명의 동시 사용자를 보유한 대규모 온라인 게임은 낮은 지연 시간과 강한 데이터 일관성을 동시에 요구하는 까다로운 환경을 제공한다. 플레이어의 인벤토리, 아이템 거래, 리더보드 순위, 길드 정보와 같은 핵심 데이터는 전 세계 어디서나 실시간으로 접근되고 업데이트되어야 한다. 구글 스패너의 글로벌 분산 아키텍처는 이러한 데이터를 여러 리전에 걸쳐 자동으로 복제하여 플레이어에게 지리적 위치에 관계없이 일관된 경험을 보장한다.
특히 게임 내 경매장이나 실시간 PvP 매칭 시스템과 같이 순간적으로 발생하는 대량의 트랜잭션과 금전적 가치가 있는 가상 자산 거래를 처리할 때 강한 일관성은 필수적이다. 구글 스패너는 분산 트랜잭션을 통해 이러한 거래가 중복되거나 손실되지 않고 정확히 한 번만 처리되도록 보장한다. 이는 플레이어 간의 신뢰를 유지하고 게임 경제 시스템의 안정성을 지키는 데 결정적인 역할을 한다. 또한 자동 샤딩과 장애 조치 기능은 서버 점검이나 예기치 않은 장애 발생 시에도 게임 서비스의 중단을 최소화한다.
4.3. 대규모 소매 및 전자상거래
4.3. 대규모 소매 및 전자상거래
구글 스패너는 글로벌 규모의 소매 및 전자상거래 플랫폼이 직면하는 핵심 과제를 해결하는 데 적합한 데이터베이스 서비스이다. 이러한 플랫폼은 전 세계 사용자에게 실시간으로 재고 정보를 제공하고, 주문 처리, 결제, 배송 추적과 같은 중요한 트랜잭션을 안정적으로 수행해야 한다. 특히 블랙 프라이데이나 광군제 같은 대규모 판촉 기간에는 예측 불가능한 트래픽 급증과 데이터 접근 패턴을 처리할 수 있는 확장성과 신뢰성이 필수적이다.
구글 스패너의 글로벌 분산 아키텍처와 강한 일관성 보장은 전 세계에 흩어져 있는 데이터 센터에 위치한 사용자에게도 실시간으로 정확한 재고 수량을 표시하는 데 기여한다. 예를 들어, 한 지역에서 제품을 구매하면 다른 모든 지역의 재고 데이터가 즉시 일관되게 업데이트되어 중복 주문이나 판매 오류를 방지할 수 있다. 또한 자동 샤딩 기능은 거래량이 폭발적으로 증가할 때도 데이터베이스 성능을 자동으로 유지하며, 자동 장애 조치는 시스템의 고가용성을 보장하여 서비스 중단 없이 연중무휴 운영을 가능하게 한다.
이 서비스는 온라인 트랜잭션 처리에 최적화된 관계형 데이터 모델과 완전한 SQL 지원을 제공한다. 이는 기존 전자상거래 애플리케이션이 사용하는 복잡한 조인 쿼리나 트랜잭션 로직을 큰 변경 없이 마이그레이션하거나 개발할 수 있음을 의미한다. 결제 처리와 같은 금융 거래에서 요구되는 ACID 트랜잭션을 글로벌 분산 환경에서도 지원하므로, 데이터 정합성을 최우선으로 하는 소매 비즈니스의 핵심 시스템을 구축하는 데 안정적인 기반을 마련해 준다.
5. 다른 데이터베이스 서비스와의 비교
5. 다른 데이터베이스 서비스와의 비교
5.1. Google Cloud SQL
5.1. Google Cloud SQL
구글 클라우드 SQL은 구글이 제공하는 완전 관리형 관계형 데이터베이스 서비스이다. 이 서비스는 사용자가 클라우드에서 MySQL, PostgreSQL, SQL Server와 같은 인기 있는 오픈소스 및 상용 데이터베이스 엔진을 손쉽게 설정, 유지, 관리할 수 있도록 설계되었다. 2017년 5월 3일 일반 공개(GA) 버전으로 출시된 이 서비스는 클라우드 컴퓨팅 환경에서 전통적인 관계형 데이터베이스 관리 시스템의 운영 부담을 크게 줄여준다.
주요 특징으로는 자동화된 백업, 패치 관리, 복제, 확장성이 포함되어 있어, 개발자와 데이터베이스 관리자가 인프라 관리보다 애플리케이션 개발에 더 집중할 수 있게 한다. 또한 고가용성 구성을 위한 자동 장애 조치, 데이터 암호화, VPC 네트워킹과의 통합 등 엔터프라이즈급 보안 및 안정성 기능을 제공한다. 이는 웹 애플리케이션, 모바일 백엔드, 전자상거래 플랫폼 등 다양한 온라인 트랜잭션 처리 워크로드에 적합한 서비스이다.
구글 스패너가 글로벌 규모의 강한 일관성과 수평 확장성을 핵심으로 하는 반면, 구글 클라우드 SQL은 보다 친숙한 SQL 문법과 기존의 관계형 데이터 모델을 그대로 사용하면서 클라우드의 운영 효율성을 누리고자 하는 사용자들을 위한 서비스라고 볼 수 있다. 따라서 마이그레이션 부담이 적고, 지역별 복제를 통한 읽기 성능 향상이나 단일 리전 내의 고가용성이 주요 요구사항인 경우에 주로 선택된다.
5.2. Google Cloud Bigtable
5.2. Google Cloud Bigtable
구글 스패너는 구글 클라우드 플랫폼에서 제공하는 완전 관리형 관계형 데이터베이스 관리 시스템 서비스이다. 이 서비스는 2017년 5월 3일에 일반 공개되었다. 스패너는 구글 내부의 글로벌 서비스 운영을 위해 개발된 기술을 기반으로 하여, 대규모 글로벌 온라인 트랜잭션 처리 애플리케이션에 적합한 특성을 갖추고 있다.
스패너의 핵심 설계 목표는 전통적인 관계형 데이터베이스의 기능과 분산 시스템의 확장성 및 내결함성을 결합하는 것이다. 이를 위해 자동 샤딩, Paxos 기반의 강력한 일관성 있는 복제, 그리고 고가용성을 위한 자동 장애 조치 등의 기술을 활용한다. 이로 인해 데이터는 여러 데이터 센터에 걸쳐 안전하게 분산 저장되면서도, 단일 데이터베이스처럼 강한 일관성을 유지하며 접근할 수 있다.
이 서비스는 표준 SQL 쿼리 언어를 지원하며, ACID 트랜잭션을 제공한다. 이러한 특징은 금융 거래 기록, 사용자 프로필, 인벤토리 관리 등 정확성과 일관성이 매우 중요한 글로벌 서비스를 구축하는 데 적합하게 만든다. 스패너는 클라우드 컴퓨팅 환경에서 기존의 단일 지역 데이터베이스나 최종적 일관성 모델을 사용하는 NoSQL 데이터베이스로는 해결하기 어려웠던 문제를 해결하는 것을 목표로 한다.
5.3. Amazon Aurora
5.3. Amazon Aurora
구글 스패너와 비교되는 주요 경쟁 서비스 중 하나는 아마존 웹 서비스가 제공하는 아마존 오로라이다. 오로라 역시 클라우드 네이티브 관계형 데이터베이스 서비스로, MySQL 및 PostgreSQL과 호환되면서도 클라우드 환경에 최적화된 고성능과 고가용성을 제공한다. 스패너가 글로벌 규모의 강한 일관성에 초점을 맞춘다면, 오로라는 주로 단일 리전 내에서의 성능과 내구성, 그리고 비용 효율성을 강조한다.
오로라의 아키텍처는 스토리지와 컴퓨트를 분리하고, 로그 구조 기반의 스토리지 계층을 사용하여 데이터를 복제한다. 이를 통해 읽기 성능을 높이고, 자동으로 데이터를 백업하며, 장애 발생 시 빠르게 복구할 수 있다. 스패너가 Paxos 합의 알고리즘을 기반으로 글로벌 복제를 구현하는 것과는 차별화된 접근 방식이다.
주요 사용 사례 측면에서도 차이가 있다. 오로라는 전자상거래 플랫폼, 엔터프라이즈 애플리케이션, 웹 애플리케이션 등 단일 또는 멀티 리전에서 고가용성이 필요한 중대형 규모의 온라인 트랜잭션 처리 워크로드에 적합하다. 반면, 스패너는 금융 거래나 글로벌 사용자 기반을 가진 서비스처럼 지리적으로 분산된 데이터에 대한 강한 일관성과 낮은 지연 시간이 필수적인 시나리오에서 더 두각을 나타낸다.
6. 가격 모델
6. 가격 모델
구글 스패너의 가격 모델은 구글 클라우드 플랫폼의 다른 관리형 서비스와 마찬가지로 사용한 만큼 지불하는 종량제 방식을 따른다. 비용은 주로 프로비저닝한 컴퓨팅 노드의 수와 구성, 데이터 저장량, 그리고 네트워크 송신량에 따라 결정된다. 컴퓨팅 비용은 노드 시간당 요금으로 청구되며, 노드의 사양(예: 처리 능력과 메모리)과 배포 지역에 따라 가격이 달라진다.
데이터 저장 비용은 데이터베이스에 저장된 데이터의 양과 백업 스토리지 사용량을 기준으로 한다. 또한, 구글 클라우드 네트워크를 벗어나는 데이터 송신(예: 인터넷으로의 트래픽)에 대해서도 별도의 요금이 부과될 수 있다. 구글 스패너는 고가용성을 위해 여러 지역에 데이터를 복제하는 다중 지역 구성을 지원하는데, 이 경우 컴퓨팅 노드와 스토리지가 각 복제본이 위치한 지역마다 배포되므로 비용이 증가한다.
사용자는 구글 클라우드 콘솔을 통해 구글 스패너 인스턴스를 생성할 때 노드 수, 지역 구성, 머신 타입 등을 선택하여 비용을 예측하고 제어할 수 있다. 구글 클라우드는 종량제 요금 외에도 장기적인 사용을 위한 커밋 사용 할인과 같은 할인 모델도 제공한다. 정확한 가격 정보와 최신 요금표는 공식 구글 클라우드 웹사이트에서 확인할 수 있다.
7. 여담
7. 여담
구글 스패너는 구글의 내부 기술 발전과 클라우드 전략의 산물이다. 이 시스템은 구글 내부에서 빅테이블과 메가스토어 같은 분산 데이터베이스 기술을 오랫동안 운영하며 축적한 경험을 바탕으로 개발되었다. 특히, 전 세계적으로 분산된 데이터 센터를 운영하는 구글의 인프라를 최대한 활용하여, 기존의 관계형 데이터베이스 관리 시스템이 제공하기 어려웠던 글로벌 규모의 강한 일관성을 실현했다는 점에서 주목받았다.
구글 스패너의 핵심 혁신 중 하나는 트루타임 API이다. 이는 구글의 전 세계에 분산된 원자 시계와 GPS 수신기를 활용한 독자적인 기술로, 물리적 시계의 오차를 정확히 측정하여 시스템 전체에 일관된 타임스탬프를 제공한다. 이를 통해 분산 환경에서도 정확한 시간 순서를 보장하고, 강력한 일관성과 고가용성을 동시에 달성하는 기반이 되었다.
2017년에 구글 클라우드 플랫폼의 공개 서비스로 출시된 이후, 스패너는 클라우드 네이티브 관계형 데이터베이스의 새로운 기준을 제시했다. 이는 아마존 오로라나 마이크로소프트 애저 SQL 데이터베이스와 같은 다른 클라우드 공급자의 관리형 관계형 데이터베이스 서비스와 차별화되는, 진정한 글로벌 분산 아키텍처를 특징으로 한다. 스패너의 등장은 클라우드 시대에 대규모 글로벌 애플리케이션을 구축하는 방식을 재정의하는 데 기여했다.
