AWS認定ソリューションアーキテクト(アソシエイト)サンプル問題の解説

#はじめに
先日,AWS認定ソリューションアーキテクト(アソシエイト)を取得致しました。
学習の中で、サンプル問題の解説を作成しながら知識定着と試験範囲を探っていました。
これから学習される方のご参考までに以下に記載します。
※解釈の誤っているものがあるかもしれません。その際はコメント頂けると嬉しいです。

↓以下試験概要からサンプル問題がダウンロードできます。
https://aws.amazon.com/jp/certification/certified-solutions-architect-associate/


<details><summary>■Q1</summary>
【A】S3はバージョニングがサポートされています。`〇`
【B】EBSではバージョニングはサポートされていません。`×`
【C】EFSはスケーラブルでフルマネージドのファイルストレージサービスです。`×`
     ※複数インスタンス間での共有が可能でオブジェクトを複数AZへ自動的に冗長保存なサービスを提供します。
【D】Storage GatewayはS3へNFS,SMB,iSCSIなどのプロトコルでアクセスできるサービスです。`×`
     ※VTLは長期間にわたってデータをアーカイブする際にコストと耐久性に優れてテープゲートウェイの事を指します。
(参照)https://dev.classmethod.jp/cloud/aws/2018-aws-re-entering-storage/
</details>

<details><summary>■Q2</summary>
【A】EFSは高スループットとIOPSを提供するファイルストレージサービスです。`×`
【B】Redshiftはスケーラブルなデータウェアハウスサービスです。`×`
     ※データウェアハウスとはデータを収集・統合・蓄積し、分析のため保管しておくシステムです。継続的な書き込みや更新には向いていない。
【C】DyanmoDBはマネージド型のNoSQLデータベースでスループットに応じてスケーリングするサービスです。`〇`
【D】CloudFormationはAWSのリソース管理・構築を自動化するサービスです。データストアではありません。`×`
</details>

<details><summary>■Q3</summary>
【A】Elastic Beanstalk はコードをアップロードするだけでキャパシティのプロビジョニング、ロードバランシング、
     Auto Scaling からアプリケーションのヘルスモニタリングまで、デプロイを自動的に処理するサービスです。`×`
【B】CloudFormation=AWSのリソース管理・構築を自動化するサービスでdesingerを使用する事で構成図を用いたリソースの自動構築が可能です。`〇`
【C】CodeBuildはソースコードをコンパイルし、テストを実行するマネージドサービスです。`×`
【D】CodeDeployはアプリケーションを構成するファイルをグルーピングされたサーバー群に定めた手順で配置するサービス`×`
(参照)https://dev.classmethod.jp/cloud/aws/cm-advent-calendar-2015-aws-re-entering-codedeploy/
</details>

<details><summary>■Q4</summary>
【A】Kinesisは大規模なストリーミングデータをリアルタイムで処理する完全マネージド型サービスです。
     KinesisにPutされたデータはその後24時間後に削除されてしまう為ベストなソリューションとはいえません。`×`
(参照)https://dev.classmethod.jp/cloud/aws/what-is-kinesis/
【B】Amazon SQSは通常,最小メッセージサイズは 1 バイトから最大は256 KBを送信可能です。`×`
     ※ただJAVAの拡張ライブラリを使用すれば2GBまで可能。
【C】ファイルをEBSに配置しEC2から処理する事は可能ですが問題文に更新頻度が予測できない(更新されない時もある)と記載がある為
     費用効率の良いソリューションとは言えません。`×`
【D】lambdaはリクエスト事による課金の為,またS3は安価なストレージサービスの為、費用効率の良いソリューションと言えます。`〇`
</details>

<details><summary>■Q5</summary>
【A】Mysql(RDS)はレプリカを作成する事は可能です。レプリカラグが100ミリ秒未満を保証するサービスではなく
     データベース更新は、ソースDBで行われた後にリードレプリカで行われるため、レプリケーションは遅延する可能性があります。`×`
(参照)https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_ReadRepl.html
【B】microsoft sql server(RDS)はレプリカ作成をサポートしていません。`×`
【C】Oracle(RDS)はレプリカ作成をサポートしていません。`×`
【D】AuroraはMySQLおよびPostgreSQLと互換性のあるリレーショナルDBです。レプリカラグが100ミリ秒未満のサービスです。`〇`
(参照)https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/Aurora.Replication.html
(参照)https://aws.amazon.com/jp/rds/details/read-replicas/
※リードレプリカは Amazon RDS for MySQL、MariaDB、PostgreSQL、Amazon Auroraで作成可能です。
</details>

<details><summary>■Q6</summary>
【A】ランダムなキー名にすると、I/O の負荷は複数のインデックスパーティションに分散される為。`〇`
【B】STANDARD_IA＝S3標準?IA(低頻度アクセス)はS3 標準と同じ高い耐久性、高スループット、低レイテンシーを提供するサービスである。パフォーマンスはS3と変わらない為。`×`
※可用性99.9%(Standardは99.99%),SLAは99%(Standardは99.9%))
(参照)https://aws.amazon.com/jp/s3/storage-classes/
(参照)https://dev.classmethod.jp/cloud/aws/introduction-to-new-s3-storage-class-standard-ia/
【C】日付のようなシーケンシャルなデータを書き込むととI/Oが分散しない為、性能が落ちます。`×`
【D】バージョニングを有効にしただけではパフォーマンスは向上しません。`×`
(参照)https://aws.amazon.com/jp/s3/faqs/
※現在はシーケンシャルなキー名を使って問題ない。
</details>

<details><summary>■Q7</summary>
【A】Cookieは、WEBページを訪問した ユーザーの情報を一時的の保存する仕組み、またはそのデータを指す。言語に関する情報はキャッシュに含まれる為`×`
【B】クエリ文字パラメター値に元に言語決定する事は可能です。`〇`
(参照)https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/QueryStringParameters.html
【C】配信元でオブジェクトをキャッシュする場合は誤った言語のまま配信されてしまう可能性があります。`×`
【D】動的コンテンツを配信するだけでは言語決定を可能にしているとは言い切れません。`×`
(参照)https://docs.aws.amazon.com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/Cookies.html
※Cookieを配信元に転送する事はAWSユーザガイドに構成しないよう記載がある。
※Amazon S3 や一部の HTTP サーバーは Cookie を処理しません。
</details>

<details><summary>■Q8</summary>
【A】EBSプロビジョニングIOPS SSDは1Gあたり0.125USD,ボリュームサイズは4 GiB～16 TiB`×`
【B】EBSスループット最適化HDDは1Gあたり0.045USD,ボリュームサイズは500 GiB～16 TiB`×`
【C】EBS汎用SSDは1Gあたり0.10USD,ボリュームサイズは1GiB - 16TiB`〇`
【D】EFSはファイルストレージサービスです。`×`
(参照)https://aws.amazon.com/jp/ebs/pricing/
(参照)https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/EBSVolumeTypes.html
</details>

<details><summary>■Q9</summary>
【A】Elasitic BeanstalkはWebアプリケーションやサービスをデプロイするのに適したサービスの為`〇`
【B】データウェアハウスはRedshiftにより提供できるサービスです。`×`
【C】実行時間の長いワーカープロセスはSQSにより分散処理が可能になります。`×`
【D】Elasitic BeanstalkはWebアプリケーションやサービスをデプロイするのに適したサービスの為`〇`
【E】実行した分だけ料金が発生する。Lambdaが最適な為`×`
</details>

<details><summary>■Q10</summary>
【A】最も古いインスタンスを最初に終了するように修正してもスケールアップ,ダウンを再最適化できません。`×`
【B】最も新しいインスタンスを最初に終了するように修正してもスケールアップ,ダウンを再最適化できません。`×`
【C】AutoScalingグループでクールダウンタイマーの間隔を広げる事で最適化可能です。`〇`
【D】スケーリングアクションをスケジューリングした場合伸縮性を維持していえるとは言えません。`×`
【E】スケールダウンをトリガーするCloudwatchアラーム間隔を広げる事で最適化可能です。`〇`
</details>

<details><summary>■Q11</summary>
【A】どこかのAZがDOWNした場合稼働インスタンス数が4になる為`×`
【B】AZ(a,b)がDOWNした場合稼働インスタンス数が3になる為`×`
【C】AZ(a)がDOWNした場合稼働インスタンス数が4になる為`×`
【D】どのAZがDOWNしてもインスタンス数が6になる為`〇`
【E】どのAZがDOWNしてもインスタンス数が6になる為`〇`
※フォールトトレランス:システムに障害が発生した場合にも正常に機能し続けることである。耐障害性などと和訳されることが多い。 
</details>

<details><summary>■Q12</summary>
【A】STSは一時的なトークンを配布するサービスです。`×`
【B】SQSは非同期で並列分散処理を可能にするサービスです。`×`
【C】Lambdaはサーバーを起動することなくコードが実行できるコンピューティングサービスです。`×`
【D】SNSはマネージドサービス型のメッセージ通知サービスです。`〇`
</details>

<details><summary>■Q13</summary>
【A】EBSは単一のインスタンスにのみマウント可能です。`×`
【B】EFSはスケーラブルな共有ストレージサービスです。`〇`
【C】S3はプラットフォームの拡張はできない為`×`
【D】インスタンスストア単一のインスタンスにのみマウント可能です。`×`
</details>

<details><summary>■Q14</summary>
【A】EBSのスナップショットはS3に保存される為,事実上永続的バックアップが可能です。`〇`
【B】暗号化をしても回復性を高める事はできません。`×`
【C】インスタンスストアは停止した場合データが消失してしまう為、向いていません。`×`
【D】ボリューム間でデータをミラーリングしても永続的にバックアップが取れているとはいえません。`×`
</details>

<details><summary>■Q15</summary>
【A】Redshiftは列指向型データベースです。`〇`
【B】RDSは行指向型データベースです。`×`
【C】Elasiccaheはインメモリーデータベースです。`×`
【D】DynamoDBはNoSQLデータベースです。`×`
</details>

<details><summary>■Q16</summary>
【A】Vault Lockはロックポリシー(削除させない)を設定する項目です。`×`
【B】迅速取り出しは1~5分でアーカイブデータの取り出しが可能`〇`
【C】大容量取り出し5~12時間でアーカイブデータの取り出しが可能`×`
【D】標準取り出し3~5時間でアーカイブデータの取り出しが可能`×`
</details>

<details><summary>■Q17</summary>
【A】KMSではファイルの暗号化に使用する鍵を管理できます。`〇`
【B】CertificateManagerはサーバー証明書を発行するサービスです。`×`
【C】APIGatewayはAPIの作成,配布,保守,監視,保護が出来るサービスです。STSはトークン情報を配布するサービスです。`×`
【D】IAMアクセスキーでは暗号化する事はできません。`×`
</details>

<details><summary>■Q18</summary>
【A】NATゲートウェイは始めから冗長化設計がされている為,高可用性と言えます。`〇`
【B】VPCエンドポイントはプライベートな接続でAWSサービスにつなぐ為に使用します。`×`
【C】インターネットゲートウェイをアタッチして接続した場合、アプリケーショントラフィックを逼迫する可能性がある為`×`
【D】NATインスタンスによりインターネット接続が可能になるが単一障害点になる可能性やインターネットゲートウェイを使用しての接続になる為`×`
</details>

<details><summary>■Q19</summary>
【A】実現可能ですが他のソリューションに比べ高コストな為`×`
【B】画像が滅多に取り出す事がないと記載がある為、データの読み取りに対して課金される代わりに低コストで利用可能な標準低頻度アクセスが最適です。`〇`
【C】EFSは複数のインスタンスから接続可能な共有ファイルストレージです。`×`
【D】S3標準でも実現可能ですが、画像が滅多に取り出す事がないと記載がある為、データの読み取りに対して課金される代わりに低コストで利用可能な標準低頻度アクセスが最適です。`×`
</details>

<details><summary>■Q20</summary>
【A】ユーザデータはユーザが自由に確認できる為,セキュアな方法とは言えません。`×`
【B】API認証情報をS3に保管するのはセキュアな方法とは言えません。`×`
【C】API認証情報をJARファイルに埋め込むのはセキュアな方法とは言えません。`×`
【D】IAMロールをEC2に紐づかせる事でAPI認証を意識せずに使用可能な為。`〇`

<details><summary>■Q21</summary>
【A】glacierに移行してもEC2へのアクセス頻度を軽減する事はできません。`×`
【B】Cloudfrontを使用する事でEC2へ静的ファイルのアクセス頻度を軽減する事が可能です。`〇`
【C】画像サイズの縮小ではEC2へのアクセス頻度を軽減する事はできません。`×`
【D】リザーブインスタンスを使用してもEC2へのアクセス頻度を軽減する事はできません。`×`
</details>

<details><summary>■Q22</summary>
【A】拡張VPCルーティングを使用する事でインターネットを経由せずにVPC内で移動可能な為`〇`
【B】セキュリティグループを作成してもRedshiftクラスターがS3にアクセスできるようにはなりません。`×`
【C】パブリックサブネットに配置した場合インターネットを経由しての接続になる為`×`
【D】S3のエンドポイントを使用する事でVPC内での接続が可能になります。`〇`
【E】プライベートサブネットにNATゲートウェイに接続した場合インターネットへ接続できない為`×`
</details>

<details><summary>■Q23</summary>
【A】ECSはタスクにIAMロールを付与する事が出来ます。`〇`
【B】ECSはインスタンス事にではなくタスクごとにIAMロールを付与するので誤りです。`×`
【C】インスタンスプロファイルは インスタンスの起動時に EC2 インスタンスにロール情報を渡す為のサービスです。
     ECSはインスタンス事にではなくタスクごとにIAMロールを付与するので誤りです。`×`
【D】セキュリティグループはAWSのサービスの利用を制限することはできません。`×`
</details>

<details><summary>■Q24</summary>
【A】ネットワークACLはステートレスな為,受信設定だけではなく送信設定も実施する必要があります。`×`
【B】セキュリティグループはステートフルな為、受信設定のみで問題ありません。`〇`
【C】セキュリティグループはステートフルな為、受信設定のみで問題ありません。DBへの接続はmysqlのtcpを使用する為、3306で正しいです。`〇`
【D】ネットワークACLはステートレスな為,送信設定だけではなく受信設定も実施する必要があります。`×`
【E】セキュリティグループはステートフルな為、受信設定のみで問題ありません。ただDBへの接続はhttps(443)ではなくmysqlのtcpを使用する為、3306で正しいです。`〇`
</details>

<details><summary>■Q25</summary>
【A】EBSにはライフサイクルポリシーはありません。`×`
【B】ライフサイクルポリシーはS3の機能です。`〇`
【C】glacierにはライフサイクルポリシーはありません。`×`
【D】EFSにはライフサイクルポリシーはありません。`×`
</details>