Q20 — AWS SAA-C03 第11章
第 20/100 問 | ← 第11章
Q720. ある会社は、重要なデータベースを Amazon RDS for PostgreSQL の DB インスタンス上で実行しています。同社は、ダウンタイムとデータ損失を最小限に抑えながら、Amazon Aurora PostgreSQL への移行を実現したいと考えています。これらの要件を満たす中で、運用負荷が最も小さい解決策はどれですか?
- A. RDS for PostgreSQL DB インスタンスの DB スナップショットを作成し、そのスナップショットから新しい Aurora PostgreSQL DB クラスターを構築します。
- B. RDS for PostgreSQL DB インスタンスに対して Aurora 読み取り専用レプリカを作成し、その後その Aurora 読み取り専用レプリカを新しい Aurora PostgreSQL DB クラスターに昇格させます。 ✓
- C. Amazon S3 からのデータインポート機能を活用して、データベースを Aurora PostgreSQL DB クラスターに移行します。
- D. pg_dump ユーティリティを使用して RDS for PostgreSQL データベースをバックアップし、そのバックアップを新しい Aurora PostgreSQL DB クラスターにリストアします。
正解: B. RDS for PostgreSQL DB インスタンスに対して Aurora 読み取り専用レプリカを作成し、その後その Aurora 読み取り専用レプリカを新しい Aurora PostgreSQL DB クラスターに昇格させます。
解説
Amazon RDS for PostgreSQL DB インスタンスから Amazon Aurora PostgreSQL へ、ダウンタイムとデータ損失を最小限に抑えつつ移行するには、運用負荷が最も小さい解決策は「B」です。つまり、RDS for PostgreSQL DB インスタンスに対して Aurora 読み取り専用レプリカを作成し、その後そのレプリカを新しい Aurora PostgreSQL DB クラスターに昇格させる方法です。この選択肢は、以下の点で運用負荷を最小化しつつ要件を満たします: ・Aurora 読み取り専用レプリカの作成:RDS for PostgreSQL インスタンスに対して Aurora 読み取り専用レプリカを作成することで、リアルタイムでのデータ複製が可能になります。これにより、移行中のダウンタイムおよびデータ損失を大幅に削減できます。 ・Aurora 読み取り専用レプリカの昇格:レプリカが元の RDS インスタンスと完全に同期された時点で、それをプライマリクラスターとして昇格させることができます。この際、DNS エンドポイントの変更やアプリケーション設定の更新(新 Aurora クラスターを指すように変更)が必要ですが、全体として非常に短時間のダウンタイムで移行が完了します。 一方、選択肢 A はスナップショットの作成・復元・設定調整など、手動操作が多く、ダウンタイムが長くなる可能性があります。選択肢 C は、RDS からのデータエクスポート、S3 への保存、Aurora へのインポートという複数ステップを経るため、運用負荷とエラー発生リスクが高まります。選択肢 D は pg_dump/リストアによる手動バックアップ・レストアであり、大規模データでは時間がかかり、人為的ミスのリスクも伴い、追加の設定作業も必要となるため、運用負荷が最も高くなります。したがって、ダウンタイム・データ損失の最小化と運用負荷の低減という両方の観点から、最も適した解決策は B です。