モバイル端末向けリアルタイムデータ同期とオフライン操作対応

AppSyncのサブスクリプションとバージョン管理・競合検出を、クライアントのローカルデータ管理と同期に組み合わせる。AppSyncサービス単独で端末のオフライン保存を行うわけではない。 双方向接続は提供できるが、オフライン変更の同期や競合解決はアプリ側で実装する。本問のマネージドな同期とクライアント機能にはAppSyncとDataStoreが適する。 オンラインの変更通知には使えるが、それだけでオフラインのローカル保存・再同期・競合解決を構成しない。DataStoreと対応する同期設定を組み合わせる。 Cognitoは認証を管理し、S3はオブジェクトを保存する。ドキュメントのリアルタイム変更通知とオフライン時の競合解決を提供する同期基盤とは異なる。

共同編集アプリで、オンラインの変更通知と、オフライン保存した変更の再同期・競合解決が必要である。同期APIとクライアントの同期処理を一から実装せず、マネージドサービスと対応するクライアント機能を組み合わせたい。適切な構成を1つ選択してください。

出典AWS非公式・オリジナル問題
ア
API Gateway WebSocket APIとDynamoDBで独自の同期APIを実装する
イ
AppSyncのGraphQLサブスクリプションだけをクライアントへ組み込む
ウ
CognitoユーザープールとS3の同期アップロードを使う
エ
AppSyncのGraphQL APIと、AmplifyのDataStoreを組み合わせる