Amazon S3がこれまでの「結果整合性」から「強い一貫性」サポートへ。データを更新直後でも最新データの読込みが保証されるように

2020年12月4日

Amazon Web Services(AWS)は、オブジェクトストレージサービスのAmazon S3で「Strong Consistency(強い一貫性)」をサポートすることを明らかにしました。

すでにAmazon S3で有効になっており、追加料金は発生せず、性能低下もないとのこと。AWS re:Invent 2020の基調講演では発表されておらず、ブログで発表されました

fig

これまでAmazon S3では、データ整合性がつねに保証されるものではない「結果整合性」のみをサポートしていました。そのため、データをAmazon S3へ保存した直後やデータの変更を行った直後に別のプロセスからそのデータにアクセスしようとすると、まだ保存されていない、あるいは変更されていない状態に見える可能性がありました。

「強い一貫性」ではこのようなことは起こらず、あるデータの追加や更新が行われれば、その直後から必ず追加後や更新後の状態が取得できるようになります。

下記は「Amazon S3 Strong Consistency」の説明からの引用です。

After a successful write of a new object or an overwrite of an existing object, any subsequent read request immediately receives the latest version of the object. S3 also provides strong consistency for list operations, so after a write, you can immediately perform a listing of the objects in a bucket with any changes reflected.

新しいオブジェクトの書き込みや既存のオブジェクトの上書きに成功した場合、その後の読み込み要求において、即座にオブジェクトの最新バージョンを取得できます。S3はリスト操作にも強い一貫性をサポートしているため、書き込み後は、変更が反映されたバケット内のオブジェクトのリスト操作をすぐに実行できます。

Amazon S3の標準的な動作では、データに対する操作はつねに同一リージョン内の3つのアベイラビリティゾーンにレプリケーションされます。このレプリケーションが完了する前に別のプロセスからの読み込み要求があるケースなどで、これまで一貫性が崩れることがあったわけです。

これまでストレージのスケーラビリティや耐久性の面でAmazon S3を使いたいけれど、一貫性の面で課題を抱えていたユーザーにとっては待望の機能といえるでしょう。

Amazon S3が一気に強い一貫性を実現できた背後にあるもの

オブジェクトストレージの一貫性については、すでにGoogle Cloud Storageが以前から強い一貫性を提供していました。この面ではAmazon S3が後れを取っており、今回それに追いついた形になります。

Google Cloud Storageは、メタデータの管理をトランザクションレベルで一貫性を持つ大規模分散データベースのCloud Spannerへ移すことでリストレベルにまで及ぶ強い一貫性を実現したことを明らかにしています

今回Amazon S3が強い一貫性を全リージョンで一気に実現できた背景には、おそらく同様の仕組み、すなわち地理的な意味でグローバルな広がりを持ちつつ、オブジェクトやデータの管理につねに整合性を持たせるデータベースの存在があるのではないかと想像しますが、AWSはそれらについては明らかにしていません。

もしかしたら今後、Google Cloud SpannerのようなデータベースがAWSの新サービスとして登場するのでしょうか。

AWS re:Invent 2020:バックナンバー

Andy Jassy Keynote

AWS Partner Keynote

Infrastructure Keynote

Werner Vogels Keynote

このエントリーをはてなブックマークに追加
follow us in feedly




カテゴリ

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed


最新記事10本