[App Engine 1.4.1 の SDK がリリースされたため、developer advocate の松尾に英語ブログでのアナウンスを日本語訳してもらいました。元記事は Google App Engine Blog に投稿された App Engine チーム Kevin Gibbs による「Announcing the High Replication Datastore for App Engine」です。-山崎]

明けましておめでとうございます。今年も App Engine をよろしくお願いいたします。

2 年以上前に App Engine をリリースした時には、素早く強い整合性を持って読み込みができる Datastore を提供しました。これはスピーディーな書き込みと、書込み後にすぐそのデータが読めるようにデザインされた Master/Slave 設定に基づいた Datastore でした。みなさんもお気づきと思いますが、我々は過去 6 か月間、Datastore の信頼性に関する問題に取り組んで来ました。その間に我々は、この件について確かな成果を上げました。しかし、これまでいろいろな問題に直面した経験から、我々は設計における前提を一部考え直しました。昨年前半の障害報告の中でお約束したとおり、我々はこの問題に抜本的な解決策を提供したいと思っています。

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

これから作成されるアプリケーションはすべて、作成時にどちらの datastore を使用するか選べるようになります。将来変更する可能性がありますが、現在のところ、デフォルトは Master/Slave Datastore になっています。

アプリケーション作成時の Datastore オプション選択

Datastore の設定は一度選択すると変更することができませんので、本日より前に作成したすべてのアプリケーションは Master/Slave Datastore を使用しています。既存のアプリケーションを High Replication Datastore へ移行するために、我々はいくつかのツールを用意しています。ひとつ目は、アプリケーション間でデータを安全にコピーするために、管理コンソールでの設定によりアプリケーションを読み込み専用モードにすることができる機能です。次に、データを 1 つのアプリケーションから別のアプリケーションへとコピーするために、Python SDK と一緒に使用することができるデータ移行ツールを提供します。Python と Java 版のアプリケーションに対して、このツールを使用する方法はこちらに記載があります。

課金について言及しておきますと、データのコピーの量が大きく増えますので、High Replication Datastore では料金体系が変わります。我々はまだ価格設定を最終決定しておりませんが、このオプションは一部のアプリケーションに対しては良い意味で大きな変化をもたらすと考えていますので、一刻もはやくみなさまのもとにお届けしたいと思いました。ですので、2011 年 7 月 の終わりまでの間は、Master/Slave Datastore に比べて 3 倍という導入時価格設定でこのオプションを提供します。7 月以降は、この機能の価格設定は変更予定です。正式な価格設定が決まり次第みなさんにお知らせしますが、もし価格を変更する際でも、みなさんは我々の Terms of Service で保護されますのでご安心ください。コストが高くなりますので、我々がまず High Replication Datastore をおすすめするのは、App Engine でミッションクリティカルなアプリケーションを作り、そのアプリケーションのために考えうる限り最高の可用性を求める開発者の方々です。

これまで 2 年以上 App Engine 上でアプリケーションを開発していただき、ありがとうございます。新年のリリースで High Replication Datastore を紹介できてとても嬉しく思います。2011 年もたくさん新機能をリリースする予定ですので、楽しみにしていてくださいね。