RPO / RTO

災害復旧の目標指標で、許容できるデータ損失量 (RPO) と復旧時間 (RTO) を定義する

可用性耐障害性

RPO / RTO とは

RPO (Recovery Point Objective) は「どこまでのデータ損失を許容するか」、RTO (Recovery Time Objective) は「どれだけの時間で復旧するか」を定義する災害復旧 (DR) の目標指標である。

RPO と RTO

                    RPO                    RTO
  ←─────────────────┤─────────────────────→
  最後のバックアップ   障害発生              復旧完了
  ↑ この間のデータは失われる    ↑ この間はサービス停止
指標 定義
RPO 許容できるデータ損失量 RPO 1 時間 = 最大 1 時間分のデータ損失
RTO 許容できるダウンタイム RTO 4 時間 = 4 時間以内に復旧

AWS サービスの RPO / RTO

サービス RPO RTO
DynamoDB (PITR) 秒単位 数分〜数時間
DynamoDB (グローバルテーブル) 秒単位 秒単位
RDS Multi-AZ 0 (同期レプリケーション) 60〜120 秒
Aurora 0 30 秒以内
S3 0 (11 9's の耐久性) 即座
EBS スナップショット スナップショット間隔 数分

DR 戦略

戦略 RPO RTO コスト
バックアップ & リストア 時間 時間 最低
パイロットライト 分〜時間 低い
ウォームスタンバイ 秒〜分 中程度
マルチサイトアクティブ 0 最高

バックアップ & リストア

通常時: S3 にバックアップを定期保存
障害時: バックアップから新環境を構築
RPO: バックアップ間隔 (例: 24 時間)
RTO: 環境構築時間 (例: 数時間)

マルチサイトアクティブ

Route 53 (レイテンシベースルーティング)
  ├── ap-northeast-1 (東京) ← アクティブ
  └── us-east-1 (バージニア) ← アクティブ

DynamoDB グローバルテーブルで双方向レプリケーション
RPO: 0 (同期)
RTO: 秒 (DNS 切り替え)

ビジネス要件との対応

ブログなら RPO/RTO ともに 24 時間でバックアップ & リストアで十分。EC サイトなら RPO/RTO 1 時間でウォームスタンバイ。金融取引なら RPO 0・RTO 秒でマルチサイトアクティブが必要。RPO/RTO を厳しくするほどコストが増加する。

全体像を把握するには関連書籍も有用。

関連用語