可用性という観点で以下のようなイメージを持っていた。
LRS<ZRS<GRS
実際は「可用性」という言葉だけで考えるとGRSよりZRSの方が優れている場合がある。
LRS
1つのデータセンターで3回レプリケートされる。データセンターが災害にあった場合は全てなくなる可能性がある。
ZRS
1つのリージョン内で3つのゾーンにレプリケートされる。
データセンターレベルの障害でも可用性を確保できるが、リージョンレベルの大災害には対応できない。
GRS
2つのリージョンでレプリケートされる。
この時、それぞれのリージョン内ではLRSで構成される。

プライマリリージョンで障害が発生した際、フェールオーバーが発生するまでセカンダリリージョンへのアクセスはできない
プライマリ リージョンで障害が発生した場合、フェールオーバーが発生しない限り、セカンダリ リージョンのデータにはユーザーやアプリケーションから直接アクセスできなくなります。

つまり、GRSで構成している場合において、プライマリリージョンのデータセンターで障害が発生した際は可用性を保てない期間が発生する。
RA-GRSとGZRS
高可用性オプションとしてRA-GRS(読み取り専用ジオ冗長ストレージ)がある。
これを使うと、構成自体は各リージョンLRSのジオ冗長構成のままだが、プライマリリージョンの障害に対してセカンダリリージョンの読み取りができるようになる。
セカンダリ リージョンへの読み取りアクセスを有効にすると、プライマリ リージョンが使用できなくなる状況を含め、読み取りにおいてセカンダリからのデータを使用することができます。
それと他に、プライマリリージョンのみZRSでセカンダリリージョンをLRSで構成するGZRSがある。
こちらもZRSと同等の可用性を確保できる。

まとめ
データが失われる「持続性」という指標においては
LRS<ZRS<GRS=RA-GRS=GZRS=RA-GZRS
という認識で問題ないが、
高可用性という観点では
LRS<GRS<ZRS=GZRS<RA-GRS=RA-GZRS
になる。
※雰囲気だけで覚えてた・・・
コメント