구글, 새 분산DB '스패너' 공개

일반입력 :2012/09/18 10:07    수정: 2012/09/18 11:05

구글이 새로운 분산 데이터베이스(DB) '스패너(Spanner)'를 공개했다. 수백만대 서버, 수조개의 행을 처리할 수 있는 초대형 DB다.

17일(현지시간) 외신에 따르면, 구글은 최근 자사의 분산 DB 기술인 '스패너'의 연구논문을 공개했다. 복수의 데이터센터와 수백만개의 머신, 수조개의 행을 처리하는 DB로서, 평균적인 DB에 비해 막대한 규모다.

스패너는 애플리케이션이 특정 데이터의 저장 위치를 지시할 수 있도록 함으로써, 검색에 따른 지연시간을 줄였다. 구글은 이 콘셉트를 '트루타임API'라 부른다.

트루타임API는 원자력 시계와 GPS 안테나를 이용해, 데이터에 타임스탬프를 붙이는 것이다. 이를 이용하면 복수의 데이터센터와 수백만개의 머신들을 필요에 따라 동기화할 수 있게 된다.

데이터는 도식화된 반(Semi) 관계형 테이블에 저장된다. 데이터는 동일한 것이라 해도 여러 버전으로 나뉜다. 각 버전은 자동으로 작업 시점에 타임스탬프를 얻는다. 데이터의 오래된 버전은 폐영역 회수 정책 구성의 대상이 된다. 스패너는 범용 트랜잭션을 지원하고, SQL 기반의 쿼리 언어를 제공한다.

논문은 “스패너는 빅테이블에서 임시의 다중 데이터베이스에 키값을 버전별로 저장하는 것에서 진화한 것”이라고 설명했다. 데이터는 시간과 장소에 따라 동시에 여러개의 버전이 존재하므로 데이터마다 작업시간을 알 수 있는 정보를 집어넣어 읽기와 쓰기 시간을 줄여보자는 것이다.

구글은 트루타임API 때문에 스패너를 운영하는 데이터센터 서버에 GPS 안테나와 원자력 시계를 사용했다.

관련기사

스패너는 고가용성을 위해 여러 서버를 가로질러 데이터를 자동으로 재할당하고, 데이터를 서버나 데이터센터의 장애 시 로드밸런싱을 위해 자동으로 이전한다.

외신은 “구글의 스패너는 실시간 데이터에 대한 DB 도구로서 매우 훌륭하다”면서 “동시에 구글이 하드웨어, 소프트웨어, 데이터 등이 끝없이 변화하는 다이나믹 환경 실행을 위해 컴퓨팅 인프라에 어떤 생각을 갖고 있는지 보여준다”고 평가했다.