ある企業がAWS上でオンラインマーケットプレイスのWebアプリケーションを運用している。このアプリケーションは、ピーク時には数十万人のユーザーにサービスを提供している。同社は、何百万もの金融取引の詳細を他のいくつかの社内アプリケーションと共有するために、スケーラブルでほぼリアルタイムのソリューションが必要です。 トランザクションは、低レイテンシーで検索するためにドキュメントデータベースに保存される前に、機密データを削除する処理も必要です。これらの要件を満たすために、ソリューションアーキテクトは何を推奨すべきだろうか。
A. トランザクションデータをAmazon DynamoDBに保存する。 DynamoDBにルールを設定し、書き込み時にすべてのトランザクションから機密データを削除する。 DynamoDB Streamsを使用して、トランザクションデータを他のアプリケーションと共有する。
B. トランザクションデータをAmazon Kinesis Data Firehoseにストリーミングし、Amazon DynamoDBとAmazon S3にデータを保存する Kinesis Data FirehoseとAWS Lambdaを統合して、機密データを削除する
C. 他のアプリケーションは、Amazon S3に保存されたデータを消費することができる。
D. トランザクションデータをAmazon Kinesisデータストリームにストリーミングする AWS Lambda統合を使用して、すべてのトランザクションから機密データを削除し、Amazon DynamoDBにトランザクションデータを格納する 他のアプリケーションは、Kinesisデータストリームからトランザクションデータを消費することができます。
E. バッチ化されたトランザクションデータをAmazon S3にファイルとして保存する。
F. AWSのLambdaを使用して、すべてのファイルを処理し、Amazon S3のファイルを更新する前に機密データを削除するLambda関数は、Amazon DynamoDBOtherアプリケーションは、Amazon S3に格納されているトランザクションファイルを消費することができます。