View a markdown version of this page

Amazon DynamoDB ワークロードのディザスタリカバリ戦略の選択 - Amazon DynamoDB

Amazon DynamoDB ワークロードのディザスタリカバリ戦略の選択

DynamoDB DR 戦略を選択する前に、ビジネス復旧要件を定義する必要があります。この初期分析により、重要なビジネス継続性のニーズを確実に満たすと同時に、コストのかかるオーバーエンジニアリングを回避できます。最適なアプローチは、復旧速度、データ損失耐性、実装の複雑さ、運用コストの 4 つの重要な要素のバランスを取ります。

DR 戦略を形成する 2 つの主要なメトリクスについて説明します。

  • 目標復旧時間 (RTO) – これは、サービスの中断から復旧までの最大許容遅延時間です。RTO は「どのくらいの時間、停止を許容できるか?」という質問への回答になります。これは、ビジネス要件に応じて、ゼロ (継続的な可用性が必要) から数時間までの範囲にすることができます。

  • 目標復旧時点 (RPO) – これは、最後に実行されたデータ復旧時点からの最大許容時間を表します。RPO は「どのくらいのデータ損失を許容できるか?」という質問への回答になります。例えば、RPO が 1 時間の場合、DR ソリューションでは、インシデント開始前の 1 時間以内の時点にデータを復旧できる必要があります。

復旧目標

DynamoDB DR 戦略の選択は、次の要因に基づいて行う必要があります。

  • サービス中断によるビジネスへの影響の分析

  • さまざまな災害シナリオのリスク評価

  • 各 DR オプションの実装コスト

  • データ保護と可用性に関する規制要件

DynamoDB DR アプローチを選択するための決定ポイント

適切な DynamoDB DR アプローチを選択するときは、特定のビジネス要件、リスク許容度、規制要件、および予算の制約を評価する必要があります。

サービス停止中の収益損失が追加の運用コストを大幅に上回るために、ダウンタイムがゼロであることが要件となる場合、マルチリージョンの強力な整合性 (MRSC) テーブルを持つグローバルテーブルなどのアーキテクチャが、即時の復旧機能を提供します。これらのソリューションは運用コストが高くなりますが、即時のフェイルオーバーと継続的な可用性を提供するため、ダウンタイムが収益源に直接影響するミッションクリティカルなアプリケーションには不可欠です。

柔軟な復旧要件を持つ予算意識の高い組織では、復旧シナリオ中にアプリケーションがダウンタイムを何時間も許容できるのであれば、よりコスト効率の良いソリューションを使用できます。オンデマンドバックアップAWS Backup、または Amazon Simple Storage Service のエクスポート戦略は、より長い復旧時間を許容する一方で、運用コストを大幅に削減します。これらのアプローチは、ビジネス継続性が重要であるが、即時の復旧をコスト面で正当化できないアプリケーションに適していて、保護とコスト最適化のバランスを取ることができます。

規制コンプライアンスを満たすには、監査への即時の対応と適切なデータ保持ポリシーを確保する自動化されたソリューションが必要です。クロスリージョンレプリケーションを備えた AWS Backup は、より高いコスト構造を維持しながら、包括的なコンプライアンスのオートメーションを提供します。このアプローチは、規制フレームワークに必要なドキュメント、保持ポリシー、地理的分散を提供すると同時に、手動のコンプライアンスオーバーヘッドを削減し、組織全体で一貫したバックアップ手順を確保するために役立ちます。

偶発的な削除やデータ破損などの人的エラーシナリオに対する保護ポイントインタイムリカバリ (PITR) を削除保護と組み合わせることで、単一のリージョン内で継続的な保護が可能になります。このソリューションは運用上のミスに対する優れた保護を提供し、合理的なコストを維持できますが、単一リージョンの制限を受け入れ、リージョンの停止やインフラストラクチャの障害を伴う実際の DR シナリオに対する追加の戦略を計画する必要があります。

ディザスタリカバリオプション

DynamoDB には、テーブルデータをバックアップおよび復元するためのオプションが用意されており、さまざまな障害シナリオに対する耐障害性を提供します。異なるニーズに対応する 4 つの主要な DR ソリューションがあります。

  • 継続的なデータ保護のためのポイントインタイムリカバリ (PITR)

  • 柔軟な保護のためのオンデマンドバックアップと復元

  • 定期的な自動保護のためのスケジュールされたバックアップと復元

  • ミッションクリティカルなワークロードの即時復旧のためのグローバルテーブル

バックアップタイプ バックアップオプション 機能 RPO RTO バックアップの可用性 毎月のバックアップコスト 1 回限りの復元コスト

継続的なデータ保護

PITR

最大 35 日間保持される継続的なバックアップにより、設定されたバックアップ期間で数秒以内に PITR が有効になります。

単一 AWS リージョンのみ

1 GB/月 あたり 0.20 USD

1 GB あたり 0.15 USD

オンデマンド保護

オンデマンドバックアップと復元

オンデマンドプロセス

時間

1 つの AWS リージョン

1 GB/月 あたり 0.10 USD

1 GB あたり 0.15 USD

スケジュールされたバックアップと復元

AWS Backup

柔軟なスケジューリングオプション (時間単位~月単位)

時間

クロスリージョンバックアップをサポート

1 GB/月 あたり 0.10 USD

1 GB あたり 0.15 USD

Amazon S3 のエクスポートとインポート (PITR が有効)

PITR 期間内のフルデータまたは増分データのバケットへのエクスポート

時間

バケットへのクロスリージョンバックアップが可能

1 GB あたり 0.10 USD

1 GB あたり 0.15 USD

ミッションクリティカルなワークロードの即時復旧

グローバルテーブル

フルマネージドソリューション、マルチリージョン、マルチアクティブテーブル

Zero

ミリ秒以内のプライマリリージョンからセカンダリリージョンへのデータ変更の自動伝播

レプリケートされた書き込みリクエストユニット 100 万あたり 0.625 USD

0

MRSC テーブル

強力な整合性を持つフルマネージドソリューション、マルチリージョン、マルチアクティブテーブル

Zero

ゼロ

プライマリリージョンからセカンダリリージョンへのデータ変更のリアルタイムでの自動伝播

レプリケートされた書き込みリクエストユニット 100 万あたり 0.625 USD

0

注記

上記の表に示すコストは、オンデマンドキャパシティーの DynamoDB 料金に基づくバージニア北部リージョンの料金です。

PITR を使用した継続的なデータ保護

インベントリ管理、製品カタログ、注文処理に DynamoDB を使用する e コマース小売業者の例を挙げます。ブラックフライデーイベントの準備中に、開発チームが誤って製品カタログを削除しました。PITR を使用すれば、何千ものレコードをインシデント前の任意の正確な時点に 30 分で復元できるため、何百万 USD もの潜在的な収益損失を防ぐことができます。

PITR を有効にすると、DynamoDB はテーブルデータを 1 秒あたりの詳細度で自動的にバックアップします。テーブルは、1~35 日の範囲で設定された復旧期間内の任意の秒単位の時点に復元できます。注目すべきことに、保持期間を短縮してもコストは減少しないため、保持期間を延長してもコストの増減はありません。PITR 機能は、最小限の RPO (秒) と合理的な RTO (分単位~時間単位) できめ細かな復旧機能を提供するため、さまざまな DR 要件に適しています。実際のシナリオでは、PITR の最小限の RPO と合理的な RTO が、人為的ミスやアプリケーションの障害から保護するか、厳格な規制要件を満たすかにかかわらず、潜在的なビジネス上の障害を管理可能な復旧オペレーションに変える方法を示しています。

詳細については、「DynamoDB でポイントインタイムリカバリを有効にする」を参照してください。CloudFormation、AWS CLI、および DynamoDB API を使用して PITR を設定し、テーブルを復元する方法について詳しく説明しています。

オンデマンドバックアップと復元を使用した柔軟な保護

大規模な電子医療記録 (EHR) のシステム移行を計画している医療サービス提供者を例に挙げます。移行プロセス全体でマイルストーンのバックアップを使用すると、厳格な HIPAA 要件を満たすと同時に、法務チームに変更不可能な監査証拠を提供できます。移行中にコンプライアンスの問題が発生した場合、正確なデータ処理手順を示し、準拠したチェックポイントに復元して、患者のデータ保護と規制遵守を実現できます。

DynamoDB オンデマンドバックアップ機能を使用すると、必要に応じてバックアップを作成し、テーブルを復元できます。オンデマンドバックアップは非同期的に動作し、バックアップリクエストが行われた時点までのすべての変更をキャプチャします。オンデマンドバックアップ機能により、データ保護戦略を正確に管理しながら、さまざまな運用要件とコンプライアンス要件をサポートできます。

オンデマンドバックアップと復元は、同じリージョンシナリオとクロスリージョンシナリオの両方で柔軟なテーブル復元機能を提供し、汎用性の高い復旧オプションを選択できます。ビジネス継続性を強化するために、DynamoDB はテーブルサイズに関係なく瞬時にバックアップを完了します。また、同じリージョンの復元は復旧時間を最小限に抑え、運用上の可用性を最大化するための最適なパフォーマンスを提供します。

日次バックアップ戦略を実装することで、信頼性の高い 24 時間の RPO を達成し、数分~数時間の予測可能な RTO で補完できます。この構造化されたアプローチをデータ保護に使用することで、バックアップと復旧の戦略を効果的に計画、実行しながら、ビジネスの運営を維持できます。

DynamoDB のバックアップおよび復元オペレーションの詳細については、「DynamoDB テーブルのバックアップ」および「バックアップからの DynamoDB テーブルの復元」を参照してください。

スケジュールされたバックアップと復元を使用した定期的な自動保護

DynamoDB は、スケジュールされたワークフローを通じて自動化できる複数の保護メカニズムを提供します。これには、運用を復旧するのためのカスタマイズ可能なバックアッププランを使用する AWS Backup や、長期アーカイブ、クロスリージョンのデータ移行、継続的な運用のための Amazon S3 エクスポート機能が含まれます。これらの自動化された定期的な保護スケジュールを実装することで、復旧目標とストレージコストのバランスを取りながら、手動による介入なしで一貫したデータ保護を実現できます。

AWS Backup およびバックアッププランを使用したバックアップと復元

Amazon DynamoDB ベースの不正検出システムにエンタープライズグレードの保護を追加する必要がある、15 か国で業務を行っている多国籍銀行の例を挙げます。この保護では、継続的な可用性を確保しながら、管轄区域全体の多様な規制要件に適応できる必要があります。

この銀行は、AWS Backup のマルチリージョンレプリケーションとクロスアカウント機能を使用して、保護アーキテクチャを実装しました。このアーキテクチャは、さまざまなビジネスユニットで厳格なアクセスコントロールを維持しながら、リージョン間で重要なトランザクションデータを自動的にレプリケートします。3 か国の規制当局からコンプライアンス監査のために過去のトランザクションデータを同時に要求された際に、この銀行の標準化されたバックアップポリシーと詳細な監査証跡により、数週間ではなく数時間以内に完全なドキュメントを提供することができました。

AWS Backup を使用すると、特定の AWS アカウント内でデータの定期的なバックアップを取ることができます。バックアッププランを使用すると、これらのバックアップを異なるリージョンにオンデマンドでコピーすることも、スケジュールされたバックアッププランの一部として自動的にコピーすることもできます。バックアッププランには柔軟なスケジューリングオプションが用意されているため、ニーズに合わせて、1 時間ごと、12 時間ごと、毎日、毎週、毎月のいずれかの頻度を選択できます。DynamoDB バックアップは、選択した頻度に基づいてリージョン間でコピーされます。

AWS Backup Vault Lock は、Write-Once Read-Many (WORM) バックアップを適用して、バックアップボールトのバックアップ (復旧ポイント) を不注意によるアクションや悪意のあるアクションから保護するとともに、ランサムウェア攻撃に対する保護を提供します。RPO は 1 時間、RTO はテーブルサイズに応じて数分~数時間まで達成できます。

AWS Backup が DynamoDB とどのように統合されるかを理解するとともに、バックアップ機能およびベストプラクティスについて学習するには、「DynamoDB での AWS Backup の使用」を参照してください。

Amazon Simple Storage Service (Amazon S3) のエクスポートとインポート

99.99% の可用性を維持しながら、複数の管轄区域にわたるトランザクションデータの規制要件を満たす必要があるグローバルな金融サービス会社を例に挙げます。この企業は、Amazon S3 のエクスポートおよびインポート機能を中心に据えてエンタープライズデータ戦略を構築し、クロスリージョンデータレプリケーションを実装して 12 か国のデータ主権法に準拠し、リージョン間フェイルオーバーのメカニズムを確立することができました。欧州で障害が発生した場合、これらのシステムはフェイルオーバー手順を自動的に実行し、取引の中断をゼロに抑えた継続的な運用の実現を支援します。

この企業は、Amazon S3 へのエクスポート/インポート機能を使用して、12 リージョンすべての管轄区域固有の Amazon S3 バケットへの毎日のフルバックアップと 1 時間ごとの増分エクスポートを作成し、現地のデータレジデンシー要件に準拠できるようにしました。各リージョンテーブルは、同じ管轄区域内の暗号化されたバケットにトランザクションデータを自動的にエクスポートします。また、クロスリージョンレプリケーションにより重要なデータセットの冗長性が高まりました。エクスポートは読み込みキャパシティーユニット (RCU) を消費せず、テーブルのパフォーマンスや可用性にも影響しません。この企業が運用しているリージョンのいずれかに障害が発生した場合、自動復旧手順によって代替リージョンに最新のエクスポートを復元し、完全な取引業務を再開することができます。このエクスポート/インポート戦略は、変更不可能な監査証跡と堅牢な DR 機能の両方を通じて規制コンプライアンスを提供し、利用可能なあらゆるリージョンの新しいテーブルに復元できる完全なトランザクション履歴を維持しながら継続的な運用を維持できるため、リージョンのインフラストラクチャ障害時のデータ損失とダウンタイムを最小限に抑えるために役立ちます。

DynamoDB の Amazon S3 へのエクスポート機能により、PITR 期間内の特定時点の DynamoDB テーブルからデータをエクスポートできます。テーブルのサイズに応じて、数分の RPO と、数分~数時間の RTO を実現できます。

エクスポートの設定に関する詳細な実装ガイダンスについては、「DynamoDB でのテーブルエクスポートのリクエスト」を参照してください。復元オペレーションとデータのインポートについては、「DynamoDB でのテーブルインポートのリクエスト」を参照してください。

グローバルテーブルを使用したミッションクリティカルなワークロードの即時復旧

DynamoDB グローバルテーブルは、プライマリリージョンの中断時に堅牢なフェイルオーバー機能を提供します。アプリケーションはトラフィックを正常なリージョンに即座にリダイレクトし、運用を続行できます。グローバルテーブルには、マルチリージョンの結果整合性 (MREC) およびマルチリージョンの強力な整合性 (MRSC) の 2 つのオプションがあります。

マルチリージョンの結果整合性

北米、欧州、アジアパシフィックの何百万もの顧客にサービスを提供する多国籍の e コマースサービス企業が、適切なグローバルインフラストラクチャがないと運用上の大きな課題に直面する可能性があるとします。この企業は、海外の顧客に対する長い決済時間、複数の管轄区域にわたる複雑なコンプライアンス要件、リージョン停止中の頻繁な中断に苦慮する可能性があります。このような場合は、DynamoDB グローバルテーブルを実装することで、業務を変革できます。東京の顧客に対し、超低レイテンシーのローカルデータアクセスを通じて、ニューヨークの顧客と同じ非常に高速な決済時間を実現できます。激しい気象現象によってプライマリリージョンが中断された場合、アプリケーションは、顧客に気付かれることなくシームレスに別のリージョンにフェイルオーバーできます。これにより、高可用性が維持され、グローバルな読み取り/書き込みレイテンシーが改善し、運用しているすべてのリージョンで規制コンプライアンスへの準拠がサポートされます。また、現地の要件を満たしながら、インフラストラクチャを世界中で確実に拡大できることを確信したうえで、自信を持って新しい市場に進出できます。

DynamoDB グローバルテーブルでは、フルマネージドで、マルチリージョン、マルチアクティブなデータベースオプションが提供されます。このソリューションは、大規模に拡張されたグローバルアプリケーションからの読み込み/書き込みのパフォーマンスを高速に、かつローカルに実現するよう設計されています。DR の目的で、テーブルを使用可能にするプライマリリージョンと DR リージョンを指定できます。DynamoDB は、進行中のデータ変更をプライマリリージョンから DR レプリカに自動的に伝播します。MREC セットアップでは、数秒の RPO とゼロ RTO を実現できます。

DynamoDB グローバルテーブルの作成と管理に関するガイダンスについては、「グローバルテーブル - DynamoDB の複数リージョンレプリケーション」を参照してください。

マルチリージョンの強力な整合性

3 つの大陸で毎日数百万件の取引を処理する、主要なデジタルバンキングプラットフォームを例に挙げます。このプラットフォームでは、ピーク時の取引時間中にリージョンで大規模な停止が発生する可能性があります。緊急に手動の DR 手順で対応し、数百万 USD 規模の損失危機に直面することなく、アーキテクチャは数秒以内に DR をアクティブ化し、中断について顧客に気付かれずに、トラフィックを正常なリージョンにシームレスにリダイレクトします。銀行のモバイルアプリはローンの申し込みをリアルタイムで処理し続け、取引プラットフォームは高頻度取引に対してミリ秒の応答時間を維持し、顧客の口座残高はすべてのリージョンで完全に同期されたままになります。

マルチリージョンの強力な整合性のグローバルテーブルを使用し、RPO を 0 にしてアプリケーションを構築できます。RPO が 0 の場合、アプリケーションの中断によってトラフィックを別のリージョンに移行する必要がある場合でも、アプリケーションは最新バージョンの DynamoDB データを読み取ることができます。

注記

DR の目的で、2 つのレプリカと 1 つの監視リージョンを使用できます。

MRSC グローバルテーブル作成の詳細については、「グローバルテーブルの仕組み」を参照してください。