위키득계정 ↗
기술

Spanner 데이터베이스

Spanner 데이터베이스기술
개발 조직
Google
초기 연구 발표
OSDI 2012
복제 방식
Paxos 기반 동기 복제
시간 인터페이스
TrueTime
Spanner는 Google이 개발한 전 세계 분산 데이터베이스다. 자료를 여러 버전으로 보관하고 동기 복제를 수행하며, 시계의 불확실성을 드러내는 시간 인터페이스를 트랜잭션 순서 보장에 활용한다.

분산 배치와 복제

자료를 나누어 여러 서버와 데이터센터에 배치하고 복제본을 유지한다. 초기 설계는 부하와 장애에 대응하는 자료 이동 및 복제 배치 조정을 포함했다.

불확실성을 나타내는 시간

TrueTime은 정확한 시각 하나를 가정하는 대신 실제 시각을 포함하는 범위를 반환한다. GPS와 원자시계 같은 시간 기준을 활용하며, 시계 오차를 명시적으로 다루는 점이 특징이다.

외부 일관성과 버전 읽기

외부 일관성은 먼저 끝난 트랜잭션 뒤에 시작한 트랜잭션이 그보다 뒤의 순서에 놓이도록 하는 보장이다. Spanner는 이를 분산 트랜잭션에 제공하면서 과거 시점의 일관된 읽기도 지원하도록 설계됐다.

관련 문서

Paxos / 데이터베이스 트랜잭션 / Megastore / SQL / 데이터베이스 / 관계형 데이터베이스