本文へスキップ
BecomeCoder

AWS SAP(ソリューションアーキテクト プロフェッショナル)コース · 第7章 事業継続性とディザスタリカバリ · レッスン40

データ層のDR ― Global Database / Global Tables / CRR

導入

DR設計で最も難しいのがデータ層です。アプリケーションサーバーは作り直せますが、データは複製しておかなければ二度と戻りません。ここでは主要なデータストアごとに、RPOをどこまで縮められるかを見ていきます。

説明

主要なデータサービスには、それぞれ専用のクロスリージョン複製機能があります。

サービス機能複製方式目安RPO
AuroraGlobal Databaseストレージレベルの非同期レプリケーション1秒未満
DynamoDBGlobal Tablesマルチアクティブなレプリケーション1秒未満
S3クロスリージョンレプリケーション(CRR)オブジェクト単位の非同期コピー数分〜(S3 RTC利用で15分保証)
flowchart LR
    subgraph R1["プライマリリージョン"]
        A1["Aurora Primary"]
        D1["DynamoDB Table"]
        S1["S3 Bucket"]
    end
    subgraph R2["セカンダリリージョン"]
        A2["Aurora Secondary<br/>(読み取り可・昇格可)"]
        D2["DynamoDB Table(レプリカ)"]
        S2["S3 Bucket(レプリカ)"]
    end
    A1 -->|"1秒未満の非同期複製"| A2
    D1 <-->|"マルチアクティブ複製"| D2
    S1 -->|"CRR(数分〜)"| S2

それぞれの特徴を押さえます。

  • Aurora Global Database: 1つのプライマリリージョンと、最大複数のセカンダリリージョン(読み取り専用)で構成。障害時はセカンダリを書き込み可能に昇格(通常1分未満)させる。パイロットライト〜ウォームスタンバイ向き。
  • DynamoDB Global Tables: すべてのリージョンが読み書き可能なマルチアクティブ構成。アクティブ-アクティブのマルチサイト戦略に直結する。
  • S3 CRR: バケット単位でオブジェクトを別リージョンへ複製。S3 Replication Time Control(RTC) を有効化すると、99.99%のオブジェクトを15分以内に複製する、というSLAが付く。

読んでみよう

「RPOをほぼゼロにしたいが、書き込みは1リージョンからでよい」ならAurora Global Database、「複数リージョンから同時に書き込みたい」ならDynamoDB Global Tables、「静的コンテンツの複製にSLA付きの保証が欲しい」ならS3 CRR+RTC、というようにサービスごとの複製方式の違いが、そのまま出題の切り分けポイントになります。