無限ノック › SAP 練習問題一覧 › 問題
SAPワークロードの移行とモダン化の加速

物流会社がオンプレミスで稼働するMySQL 5.7ベースの基幹システム(荷物追跡DB、1日1億件のINSERT/UPDATE、トランザクションログのサイズが1日200GB)をAmazon Aurora MySQL Compatible Editionへ移行しようとしています。現在のシステムは24時間365日停止不可(SLA: 99.95%)であり、移行中もリアルタイム荷物追跡サービスを停止できません。 追加の技術的制約: ・バイナリログ(binlog)は現在有効になっていない(有効化には数時間のメンテナンスウィンドウが必要) ・データベースサーバーはオンプレミスファイアウォール背後にあり外部への直接接続が制限されている ・セキュリティポリシーによりサードパーティツールのインストールが禁止されている(AWSエージェント以外) ・ソースデータベースへのスーパーユーザー権限はある このシナリオでダウンタイムを最小化してAurora MySQLへ移行するための最適なアーキテクチャはどれですか?

A
AWS DMS Full Load + CDCアプローチを採用する。CDCにはbinlogが必要なため、まず低トラフィック時間帯のメンテナンスウィンドウ中にbinlogを有効化する。その後DMSレプリケーションインスタンスをVPN/Direct Connect経由でオンプレミスに接続しFull Loadを完了させた後CDCを開始する。外部接続制限はDMSレプリケーションインスタンスへのアウトバウンド接続(ソースからDMSへの方向ではなくDMSからソースへ)を許可することで解決する。
✓ 正解
DMS Full Load + CDCアプローチでbinlogが必要ですが、低トラフィック時間帯のメンテナンスウィンドウでbinlog有効化することは現実的な解決策であり、DMSレプリケーションインスタンスのアウトバウンド接続許可で外部接続制限をクリアできます。
B
mysqldumpで論理バックアップを取得しSnowball EdgeでデータをAurora MySQLへインポートする。その後差分データはbinlogベースの手動レプリケーションで適用し、カットオーバー時に数時間のダウンタイムを設ける。
mysqldumpによる論理バックアップ取得は可能ですが、1日200GBのトランザクションログを手動レプリケーションで適用することは現実的ではなく、複数時間のダウンタイムも発生します。
C
まずAmazon RDS for MySQL 5.7を起動し、ネイティブMySQLレプリケーション(非同期)をオンプレミスからRDS for MySQLへ設定してデータを同期させる。同期完了後、RDS Blue/Greenデプロイメントを使用してRDS for MySQLからAurora MySQLへのダウンタイムなし移行を実施する。
RDS→Auroraの二段階移行はBlue/Green機能を活用できる利点はありますが、中間インスタンス費用と運用複雑性が増大します。DMS経由で直接Auroraへ移行できる場合は冗長です。
D
DMS Serverlessを使用したFull Loadのみで移行する。移行中の差分データはAmazon Kinesis Data Streamsでキャプチャし、Lambda関数がAurora MySQLへリアルタイムに書き込むCDC代替アーキテクチャを構築する。
Kinesis Data Streams + Lambdaによる独自CDC実装は可能ですが、1日1億件レコードの高スループット環境では開発・運用コストが過剰となり、DMS専用ソリューションが優れています。

解説

選択肢AはAWS DMS Full Load + CDCを採用する最適なアプローチです。CDCにはbinlogが必要ですが、低トラフィック時間帯のメンテナンスウィンドウでbinlogを有効化することで最小限のダウンタイムに抑えられます。DMSはソースDBへアウトバウンドで接続するためファイアウォールルールの調整は最小限で済み、AWSエージェント以外禁止のセキュリティポリシーにも適合します。 選択肢Bはmysqldumpで論理バックアップを取得しSnowball EdgeでAurora MySQLへインポートするアプローチですが、1日200GBのトランザクションログを手動でCDCとして差分適用することは非現実的であり、カットオーバー時に数時間のダウンタイムが発生しSLA要件を満たせません。 選択肢CはネイティブMySQLレプリケーション経由でRDS for MySQLを中間ステップとして使用しますが、binlogが必要な点は選択肢Aと同じです。さらにオンプレミス→RDS for MySQL→Auroraという二段階移行となり、中間インスタンスのコストと運用複雑性が増大します。DMS経由でAuroraへ直接移行できる選択肢Aと比較して冗長であり最適ではありません。 選択肢DはKinesis Data Streams + LambdaによるCDC代替アーキテクチャですが、1日1億件の高スループット環境での独自開発・テスト・運用コストが過大であり、DMSという標準ツールが利用可能な状況でこの構成を採用する合理的な理由がありません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSAPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SAP の問題一覧に戻る