世界中のデータセンターにまたがってデータを分散配置する「グローバル分散データベース(DB)」が相次いでいる。マイクロソフトはCosmos(惑星)の名を冠したDBサービス「Azure Cosmos DB」を5月に提供開始。それに先立つ2月にはグーグルが「Google Cloud Spanner」のベータ版を提供済み。Cloud Spannerのオープンソース実装を目指す「CockroachDB」も5月、正式版としてバージョン1.0をリリースした。

 なぜ今、グローバル分散DBが注目されるのか。

 「大規模なモバイル、IoTアプリでは顧客やデータが世界各地に散らばっている。顧客がデータに迅速にアクセスするには、従来型のDBでは難しい」。米マイクロソフト データグループ担当コーポレート・バイスプレジデントのジョセフ・シロシュ氏は、Cosmos DB開発の動機をこう説明する。

 Cosmos DBは、世界中のAzure「リージョン」(データセンター群)に、自動でデータを分散保存できる。38あるリージョンのうち、現在は25リージョンを分散先に指定可能だ。ユーザーは近場のリージョンにアクセスしてレイテンシー(遅延)を抑えられる。複数のデータセンターにデータを保存するので、ディザスタリカバリー対策にもなる。こうしたグローバル分散の考え方は、性能向上だけを目的にした従来の処理分散とは一線を画する。

Azure Cosmos DBの利点を説明する、米マイクロソフト データグループ担当コーポレート・バイスプレジデントのジョセフ・シロシュ氏
Azure Cosmos DBの利点を説明する、米マイクロソフト データグループ担当コーポレート・バイスプレジデントのジョセフ・シロシュ氏
(出所:日本マイクロソフト)
[画像のクリックで拡大表示]

マルチデータモデル、マルチAPIを実現したCosmos

 Cosmos DBはマイクロソフトがクラウド上で運用管理する、いわゆるマネージドサービスだ。秒間に数百から数億リクエストをさばき、ギガからペタバイトクラスまでストレージをスケールアウトできる。利用料金はスループットとストレージ容量がベースになっている。

 「マルチデータモデル、マルチAPIを提供し、開発者が好きなものを選べる」。シロシュ氏はのCosmos DBの利点をこう話す。データモデルは「ドキュメント型」「グラフ型」「キーバリュー型」をサポートし、「カラム型」も加える計画。2015年から提供してきたDBサービス「Azure DocumentDB」は、Cosmos DBに統合され、データモデルの一つという位置づけになった。