大量のデータをほぼリアルタイムで収集し処理するサービスといえば?

Amazon Kinesis Data Streams

・Amazon Kinesis Data Streamsを使ってデータを取り込みます。AWS Lambda関数を使ってデータを処理します

この選択肢が正解の理由は以下の通りです。

まず、Amazon Kinesis Data Streams(KDS)は大量のデータをほぼリアルタイムで受信できるストリーミングデータプラットフォームであり、急増するデータ量に対してもスケーラビリティと高い耐久性を提供します。KDSはデータを24時間保持するため、一時的な処理能力の上限を超えるリクエストに対してもデータロスを防ぎます。

次に、AWS LambdaはKinesis Data Streamsの消費者として働き、スケーラブルにデータを処理することができます。Lambda関数はサーバーレスであり、EC2インスタンスのようにサーバを管理するコストや手間が必要なく、かつ自動的にスケーリングするため、データ量が急増した際でも対応可能です。

したがって、これらの組み合わせて使うことにより、アプリケーションはスケーラブルに対応する能力をもつことができます。

選択肢:アプリケーションをコンテナとしてリパッケージします。Amazon Elastic Container Service(Amazon ECS)を使用して、Auto Scalingグループ付きのEC2起動タイプを使用してアプリケーションをデプロイします

この選択肢が正しくない理由は以下の通りです。

ECSとAuto Scalingを使用することで、ある程度のスケーラビリティは得られますが、大量のデータが急激に増えた場合、それに応じたEC2インスタンスの追加に時間がかかり、一部のリクエストが処理されない可能性が残ります。

一方、KinesisとLambdaを用いるとデータはストリームに保持され、処理能力が追いつかない際もデータのロストを防ぎ、スケーラブルな処理が可能です。

コメント

タイトルとURLをコピーしました