✏️
【AWS】AWS認定DVAチートシート
概要
本記事はAWS認定DVA試験のインプットの整理になります。合格体験記の本編はこちらに書いてあります。
AWS公式のDVA試験ガイドに記載されている項目をベースに自分用の学習メモを記載しておきます。問題を解いている中で何度も間違ってしまったところや覚えにくかったところを中心に記述してあります。そのため頻出事項のまとめにはなっていない可能性があります。
なお★についてですが、下記の問題集で学習した中で出題頻度が高い順に★★★、★★、★を付与しておきました。ちなみに★のものはほとんど学習していませんので、急ぎの方はカットしてもいいかもしれません。
- 使用教材
まとめ
分析
- Amazon Athena ★
- Amazon Kinesis ★★★
- Kinesis Data Firehoseは、データレイクサービス(Amazon S3、Amazon Redshift、Amazon Elasticsearch Service (Amazon ES)、Splunkなど)の宛先にリアルタイムのストリーミングデータを配信するためのフルマネージドサービス
- ProvisionedThroughputExceededExceptionの対策は、エラー再試行と指数バックオフ メカニズムを使用する、リクエストの頻度またはサイズを減らす、シャードの数を増やす
- Amazon OpenSearch Service ★
アプリケーション統合
- AWS AppSync ★
- Amazon EventBridge ★★
- Amazon Simple Notification Service (Amazon SNS) ★★★
- ファンアウト:1つのSNSトピックから複数のSQSを並列実行する仕組み
- Amazon Simple Queue Service (Amazon SQS) ★★★
- ApproximateNumberOfMessagesVisibleメトリクスはキューから取得可能なメッセージの数を表示
- ターゲット追跡スケーリングポリシーを使用すると、動的スケーリングはアプリケーションの需要曲線に合わせてより効果的に調整可能
- AWS Step Functions ★★
- タスクとステートマシン(JSONベースのAmazonStatesLanguageを使用して定義)でワークフローを実現
- イベントレートが高く期間が短いワークロードには Express ワークフローを使用する必要あり
コンピューティング
- Amazon EC2 ★★★
- リザーブドインスタンスはゾーン(容量予約可)とリージョン(容量予約付加)
- セキュリティグループはステートフル、ACLはステートレス(受信トラフィックと送信トラフィックの両方を指定する必要あり)
- AWS Elastic Beanstalk ★★★
- AWS Lambda ★★★
- S3 Object LambdaはS3から取得されるデータを要求者に返す前に修正することができ、S3 に保存されている元のデータに変更を加えることなく、リアルタイムでデータを変換または変更することが可能
- AWS Serverless Application Model (AWS SAM) ★★★
- テンプレートに必須のセクションはTransformとResources
- CloudFormationのサーバレス版。CloudFormationよりもシンプルなテンプレート記述が可能。
コンテナ
- AWS Copilot ★
- Amazon Elastic Container Registry (Amazon ECR) ★★★
- Amazon Elastic Container Service (Amazon ECS) ★★★
- Amazon Elastic Kubernetes Service (Amazon EKS) ★
データベース
- Amazon Aurora ★
- Amazon DynamoDB ★★★
- 1読み取りキャパシティーユニット:サイズが最大4KBのアイテムに対する1秒あたり1回の強力な一貫性のある読み取りが可能。4KBを超える場合は2容量を消費。
- ConsistentReadパラメーターをtrueに設定するとDynamoDBの操作中に強力な一貫性のある読み取りが可能
- dynamodb:PutItemとdynamodb:UpdateItemの違い
- ローカルセカンダリインデックスとは、デフォルトで設定したパーティションキーはそのままの状態にして、ソートキーだけデフォルトで設定したものとは別のキーを設定することができる仕組みのこと
- Amazon DynamoDB Accelerator (DAX) は、フルマネージドで可用性の高い DynamoDB 用のインメモリキャッシュであり、ミリ秒からマイクロ秒まで、1 秒あたり数百万のリクエストでも最大 10 倍のパフォーマンス向上を実現
- Amazon ElastiCache ★★★
- for Memcachedとfor Redisがあるが、for Memcachedは、頻繁にアクセスするデータをキャッシュできるインメモリデータストアで、アプリケーションのパフォーマンスを大幅に向上させ
ることが可能で、Redis はキャッシュされたデータに対してソートやランキング操作を実行することが可能。Memcachedよりも高機能。
- for Memcachedとfor Redisがあるが、for Memcachedは、頻繁にアクセスするデータをキャッシュできるインメモリデータストアで、アプリケーションのパフォーマンスを大幅に向上させ
- Amazon MemoryDB for Redis ★
- Amazon RDS ★★★
- 読み込みを早くする場合はリードレプリカを使用、クラスターモードで Amazon ElastiCache Redis を実装
デベロッパーツール
- AWS Amplify ★
- AWS Cloud9 ★
- AWS CloudShell ★
- AWS CodeArtifact ★
- AWS CodeBuild ★★
- 自動的にスケーリングする
- AWS CodeCommit ★★
- AWS CodeDeploy ★★★
- appspec.ymlで指定するライフサイクルイベント:ValidateServiceはデプロイ成功確認、AllowTrafficはデプロイ後にインターネットトラフィックがインスタンスにアクセス可能である状態
- Amazon CodeGuru ★★
- AWS CodePipeline ★★
- AWS CodeStar ★
- Amazon CodeWhisperer ★
- AWS X-Ray ★★★
- サービス概要:開発者がマイクロサービスアーキテクチャを使用して構築された本番環境の分散アプリケーションを分析およびデバッグサービス。
- CloudWatchはリソース単体の監視に対し、X-Rayはシステム全体の監視
マネジメントとガバナンス
- AWS AppConfig ★
- AWS CLI ★★★
- -dry-runオプションは、実際にリクエストを行わずにアクションに必要なアクセス許可があるかどうかを確認。必要な権限を持っている場合の応答はDryRunOperation、それ以外の場合は UnauthorizedOperation。
- aws ec2 monitor-instances --instance-ids i-1234567890abcdef0- コマンドを実行すると実行中のインスタンスの詳細な監視が可能
- create-stack-set 目的のリージョンにcloud formationのスタックセットを作成可能
- AWS Cloud Development Kit (AWS CDK) ★★
- AWSの環境設定をpythonなどのプログラミング言語で記述できるフレームワーク。cloud formationと連携が可能
- AWS CloudFormation ★★★
- ドリフト検出を使用することでスタックの実際の構成が予想される構成と異なるかどうかやドリフトしているかどうかを検出(参考)
- AWS CloudTrail ★★
- Amazon CloudWatch ★★★
- 標準メトリクスとカスタムメトリクス(標準解像度と高解像度が選択可)
- Amazon CloudWatch Logs ★★★
- CloudWatch Logsエージェント経由でログを取得
- AWS Systems Manager ★★★
ネットワークとコンテンツ配信
- Amazon API Gateway ★★★
- 認証・認可はIAMアクセス権限、Lambdaオーソライザ、Cognitoオーソライザ、JWTオーソライザ
- WebSocket APIでは、クライアントとサーバーはいつでも相互にメッセージの送信が可能。バックエンドサーバーは、接続されているユーザーやデバイスにデータを簡単にプッシュでき複雑なポーリングメカニズムの実装が不要。
- WebSocket APIの実装例としてはチャットルームなどのリアルタイムの通信が発生するアプリに有効
- Amazon CloudFront ★★★
- Elastic Load Balancing (ELB) ★★★
- スティッキーセッションは、リクエストをターゲットグループ内の同じターゲットにルーティングする機能
- ALBではX-Forwarded-Forオプションを利用することで、HTTPヘッダのフィールドの一つで、クライアントのIPアドレスをWebサーバへ知らせることが可能
- Amazon Route 53 ★★
- CNAMEはAWS外のリソース(S3など)を指定し、エイリアスはAWS内のリソースを指定
- Amazon VPC ★★
- VPC内のネットワーク インターフェイスとの間で送受信される IP トラフィックに関する情報を取得できる機能
セキュリティ、アイデンティティ、コンプライアンス
- AWS Certificate Manager (ACM) ★★★
- Amazon Cognito ★★★
- IDプールは認証、ユーザープールは認可
- Cognito Syncはアプリケーション関連のユーザーデータのクロスデバイス同期を可能にするサービスおよびクライアントライブラリ
- AWS Identity and Access Management (IAM) ★★★
- AWS Key Management Service (AWS KMS) ★★★
- AWS Private Certificate Authority ★
- AWS Secrets Manager ★★★
- AWS Security Token Service (AWS STS) ★★
- AWS WAF ★
ストレージ
- Amazon Elastic Block Store (Amazon EBS) ★★★
- Amazon Elastic File System (Amazon EFS) ★★
- Amazon S3 ★★★
- S3ライフサイクルアクションはS3レプリケーションではレプリケートされない
- Amazon S3 Glacier ★
Discussion