□静的な単一ページと永続的なDBレイヤーで構成されるアプリ。特定の時間に数百万人のユーザーが利用するが、それ以外は数千人のユーザーしか利用しない。最も拡張性の高いDBソリューションとキャパシティプランは?

DynamoDB + オンデマンドのキャパシティ

(選択肢)

・Amazon DynamoDBをデータベースソリューションとしてデプロイします。オンデマンドのキャパシティをプロビジョニングします

・静的コンテンツをAmazon S3バケットにデプロイします。S3バケットをオリジンとしてAmazon CloudFrontディストリビューションをプロビジョニングします

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

まず、「Amazon DynamoDBをデータベースソリューションとしてデプロイします。オンデマンドのキャパシティをプロビジョニングします」が正解の理由は、ソリューションの要件とDynamoDBの特性が一致しています。DynamoDBはNoSQLデータベースで、スキーマの進化を容易にすることができます。

また、オンデマンドキャパシティを使用すれば、数千人のユーザーの利用から数百万人のユーザーへの切り替えを自動的にハンドリングするというアプリケーションの特性にも対応できます。

次に、「静的コンテンツをAmazon S3バケットにデプロイします。S3バケットをオリジンとしてAmazon CloudFrontディストリビューションをプロビジョニングします」が正解の理由は、こちらもソリューションの要件とCloudFrontの特性が一致しています。Amazon S3は高い耐久性を持つストレージソリューションです。

また、CloudFrontはAWSのコンテンツ配信ネットワーク(CDN)で、数千や数百万のユーザーへの高速なコンテンツ配信が可能です。そのため、ウェブアプリケーションの静的ページの配信を高速に行うことができます。

  • Amazon DynamoDB:高性能でスケーラブルなNoSQLデータベースサービスで、ミリ秒単位のレイテンシーで任意の規模のデータを読み書きできます。
  • オンデマンドキャパシティ:DynamoDBのキャパシティモードの一つで、需要に応じて自動的にスケーリングします。大量のトラフィックが一時的にある場合に適しています。

選択肢:Amazon DynamoDBをデータベースソリューションとしてデプロイします。DynamoDBのAuto Scalingが有効になっていることを確認します

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

DynamoDBのAuto Scalingはキャパシティを自動的に調整しますが、利用者数が数百万人から数千人へと急激に変動する場合は反応が追いつかず、データベースへのアクセスに問題が生じる可能性があります。これに対してDynamoDBのオンデマンドプロビジョニングは必要な容量を即座に提供できるため、より適した選択肢となります。

コメント

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