WirelessWire News Technology to implement the future

by Category

グーグル、データセンターの障害にも耐えるApp Engineの新データストアを発表。Paxosを採用

2011.01.17

Updated by WirelessWire News編集部 on January 17, 2011, 16:30 pm JST

Google App Engine
201101171630-1.jpg

グーグルは1月6日、Google App EngineのデータストアとしてPaxos algorithmによるデータセンター間のデータ同期を採用し、可用性を大幅に向上させた新データストア「High Replication Datastore」を追加したと、ブログのエントリ「App Engine 1.4.1 をリリースしました - High Replication Datastore の紹介」で明らかにしました。

複数のデータセンターにまたがったレプリケーションを行うことで、特定のデータセンターに障害が発生した場合でもほとんどの場合で問題なく動作するとのことです。

可用性は高まるが書き込みは遅く、課金は3倍

グーグルは昨年、「Google App Engineの利用拡大に追いつけていないと告白」しており、深刻な性能低下の問題を抱え、また事故によるダウンにも悩まされてきました。

- グーグル、Google App Engineの利用拡大に追いつけていないと告白
- Google App Engineダウンの原因はデータセンターの電源故障。さらに復旧手順のミスが重なった

今回の新データストアは、これらに対するグーグルからの1つの回答といえるでしょう。

グーグルは複数のデータセンターにまたがってデータストアを運用する方策を模索してきており、現在のマスター/スレーブ型のレプリケーションのほかに、マルチマスター方式、ツーフェーズコミットと並びPaxosを選択肢に入れていました。

- データセンターが「落ちる」ことを想定したグーグルのアーキテクチャ

それらの選択肢の中からPaxosが選ばれ、実装されたことになります。ただし可用性が高まる分のトレードオフとして、書き込みにかかる時間は長くなるようです。High Replication Datastoreについて、ブログでは次のように説明されています。

High Replication Datastore はデータの読み込み、書き込みにおいて、高い可用性を持っており、ただし引き換えに書き込みに要する時間は長くなり、また API におけるデータ整合性のレベルが変わります。High Replication Datastore ではデータのコピーを保持するデータセンターの数を増やし、リアルタイムに Paxos algorithm を使用してデータセンター間におけるデータの同期を行います。1 番大きなメリットは、計画されたメンテナンス期間だけでなく、インフラ側で突発的な問題が起きている間にも、殆どの場合には、アプリケーションの機能すべてが完全な形で利用可能になることです。

データストアをHigh Replication Datastoreにするかどうかは、アプリケーション作成時に決定しなければならず、また途中で変更することもできません。既存のアプリケーションのデータストアはHight Replication Datastoreに切り替えることはできないため、グーグルでは移行ツールを用意するとしています。

また、グーグルはこの新データストアを、ミッションクリティカルなアプリケーションで利用することを勧めています。

新データストアへの課金は、データのコピー量が増えるため、2011年7月までは通常のデータストアの3倍の値段が設定され、正式な価格は未定だそうです。ということは、正式な価格はそれ以上になるということなのでしょう。

文・新野淳一(ブログ「Publickey」 Blogger in Chief)

WirelessWire Weekly

おすすめ記事と編集部のお知らせをお送りします。(毎週月曜日配信)

登録はこちら