AQ Tech Blog

AWS SAA-C03受験前に読みたい記事

作成者: shoma.ebe|2024年10月29日

はじめに

本記事は「AWS SAA-C03試験の受験前に読みたい記事」を目指して、作成されています。
自分自身で理解できている項目は読み飛ばしていただいても結構です。
※本記事は2024年9月16日に執筆されています。該当日以降の更新には対応しておりませんので、ご了承ください。

試験全体を通して

AWS SAA-C03では問題文中に意識するポイントがあります。
それはどういう観点でソリューションを提供するかということです。
クラウドの利点をどう活用するのかとも言い換えられるかと思います。

観点 考慮点 アンチパターン(一例)
コスト効率の重視 スケーリングの有効化
不要リソースの削減
キャッシュの有効活用
需要と供給のかみ合わない設定
サービスを活用しない物量作戦
不適切なサービスの利用
運用上のオーバーヘッド削減 スケーリングの有効化
不要リソースの削減
タグの有効活用
需要と供給のかみ合わない設定
サービスを活用しない物量作戦
タグの不使用、誤ったタグの付与
少ない労力 手作業の廃止
作業・運用の自動化
オンデマンドでの手作業
サービスを活用しない自動化
最小権限の原則を順守 ユーザ権限の最小化
通信制限の厳格化
ポリシー、ロール、グループの間違い
大きな範囲での通信有効化
ユーザ影響の最小化 ダウンタイムの削減 拡張性を考慮しないリソースの指定

勉強してきた経験上、「この観点での質問なら、この選択肢は排除できる」といった
勘所は掴めていると思うので、「それを再度意識して」試験に臨むようにしましょう。

各サービスについて

出題される各サービスについて、筆者自身が覚えづらいと感じた項目や
紛らわしいと感じた項目を以下に記載していきます。

VPCエンドポイント

ゲートウェイエンドポイントはS3、DynamoDBに対するVPC内からのアクセス、
インタフェースエンドポイントはENIを設定し、VPC外からの(オンプレミスを含む)アクセスに対応します。
またインタフェースエンドポイントは活用できるサービスの幅が非常に広いことも特徴です。

項目 特徴 サービス
ゲートウェイエンドポイント VPC外からの接続不可
ルートテーブルにエンドポイントのルート追加
パブリックIPでの接続可
セキュリティグループのアタッチ不可
S3、DynamoDBのみ
インタフェースエンドポイント VPC外からの接続可
プライベートIPで接続可
ENIを保持
様々なサービスで利用可能

AWS PrivateLinkはAWSのサービスやVPCエンドポイントへのプライベート接続を提供するサービスですが、
内部的にはVPCエンドポイントが利用されていることも併せて覚えておくと良いでしょう。

AWS FSx

試験出題は少ないかもしれませんが、次項のAWS Storage Gatewayに関わるため、確認していきましょう。

項目 特徴 用途・メリット
FSx for Windows File Server Windowsベースファイルサーバの移行
ファイルシステムはNTFS
プロトコルはSMB
FSx File Gatewayを併用可能
Active Directoryでのユーザ認証を使用
FSx for Lustre Lustreベースファイルサーバの移行
ファイルシステムはLustre
機械学習、HPC、分散ファイルシステム、
動画処理など高速処理が求められるケースに最適
FSx for NetApp ONTAP NetApp ONTAPベースファイルサーバの移行
ファイルシステムはWAFL
プロトコルはiSCSI、SMB、NFS、CIFS
NetAppのツールを使用可能
FSx for OpenZFS ZFS、Linuxベースファイルサーバの移行
ファイルシステムはOpenZFS
プロトコルはNFS
シンプルで高速
EC2やコンテナから使用


AWS Storage Gateway

AWS Storage Gatewayは大きく以下にカテゴライズされます。

  • ファイルゲートウェイ
  • ボリュームゲートウェイ
  • テープゲートウェイ

ファイルゲートウェイ

前項のAWS FSxですが、ファイルゲートウェイと併用するパターンが存在します。

項目 特徴 用途・メリット
Amazon FSx File Gateway ファイル共有用としてFSxに存在するデータをキャッシュ
スナップショット、統合バックアップなどのデータ管理機能と連携
ネットワークの最適化
キャッシュ利用可能
Active Directory連携で認証
S3 File Gateway オンプレミスからAmazon S3へシームレスなアクセスを提供
バックアップやDR目的でS3へデータ保存
オンプレミスから普段通りの操作性
NFS、SMBでのアクセス
スケーラブルでコスト効率の良いサービス

ボリュームゲートウェイ

ボリュームゲートウェイはオンプレミスのデータをAmazon S3に保存して管理し、キャッシュド(キャッシュ型)、ストアド(保管型)で動作します。
AWS Backupを利用して、ポイントインタイムコピーを作成でき、Amazon EBSスナップショットとしてAWSに保存されます。

項目 特徴 用途・メリット
キャッシュド(キャッシュ型) プライマリデータ(全てのデータ)をS3に保持
頻繁にアクセスするデータをローカルに保持
低レイテンシーでのファイルアクセス
ストアド(保管型) プライマリデータ(全てのデータ)をローカルに保持
非同期でS3にバックアップ
ローカルアクセスを維持したバックアップ

テープゲートウェイ

既存のバックアップワークフローを変更せず、オンプレミスの物理テープからAWSの仮想テープに切り替えることができます。
アプリケーションからテープゲートウェイ間はiSCSI、ファイルゲートウェイからS3はHTTPS通信を使用します。


Amazon CloudFront と AWS Global Accelerator

CloudFrontとGlobal Acceleratorは共に世界中のユーザーに対して
コンテンツのパフォーマンスを向上させるサービスですが、ユースケースが大きく異なる点に注意しましょう。

項目 特徴 用途・メリット
CloudFront Webコンテンツのキャッシュが可能
対応プロトコルはHTTP、HTTPS(レイヤー7)
対応ポートは80、443
世界中のエッジロケーションを使用することで
静的コンテンツ、動画、ストリーミングメディアなどの配信のパフォーマンス向上
Global Accelerator WEBコンテンツのキャッシュは不可
対応プロトコルはTCP/UDP(レイヤー4)
対応ポート制限なし
アプリケーションに静的IPを付与
AWSのグローバルネットワークを使用し、
ユーザーから近いAWSリージョンに接続
グローバルな負荷分散が可能
AWSリージョンで実行されているアプリケーションにエッジでプロキシすることで、
TCP/UDPを介した幅広いアプリケーションのパフォーマンス向上

AWS CloudFrontがWebコンテンツのキャッシュに特化している一方で、
AWS Global Acceleratorはオリジンにアクセスする際の通信経路の最適化に特化しているものとなっており、
AWSグローバルネットワーク(非インターネット)を経由し、各リージョンを効率的にルーティングするものとなります。
加えてTCP/UDPが対応プロトコルとなっているため、オンラインゲーム・ストリーミングメディア、VoIPなどに利用されます。

CloudFrontの機能に関して、SAA試験で出題されることがあるので、以下に記載します。

項目 特徴 用途・メリット
フィールドレベル暗号化 セキュリティレイヤーの追加
(特定のフィールドレベルデータの暗号化)
機密情報をエッジで暗号化し、
アプリケーションスタック全体が暗号化された状態となる
複合化するための認証情報を持つアプリケーションだけが複合化可能
署名付きURL 有効期限を設けたプライベートコンテンツを提供可能
(署名付きCookieと同じ基本機能)
個別ファイル(アプリケーションのインストールダウンロード)へのアクセス制限
Cookieをサポートしていないクライアントを使用している場合のアクセス制限
署名付きCookie 有効期限を設けたプライベートコンテンツを提供可能
(署名付きURLと同じ基本機能)
複数の制限されたファイルへのアクセス制限
URLを変更したくない場合のアクセス制限


Amazon EC2

EC2はSavings Plansの項目を少しだけ記載します。

項目 特徴 用途・メリット
Compute Savings Plans コンピューティング使用量で契約 CPU使用量に準ずるため、EC2からECSへの移行などの構成変更が可能
EC2インスタンス Savings Plans 特定のインスタンス構成で契約
(インスタンスファミリー、リージョン、OSの変更不可)
特定のEC2インスタンスファミリーに対してコスト削減可能


AWS DB比較

AWSで使用されるDBについて、以下に比較を記載します。

サービス RDS Redshift DynamoDB ElastiCache
(Redis)
ElastiCache
(Memcached)
DBタイプ RDBMS
リレーショナル型
RDBMS
データウェアハウス型
NoSQL
データウェアハウス型
NoSQL
キーバリュー型
NoSQL
キーバリュー型
作成場所 AZ内 AZ内 リージョン内 AZ内 AZ内
データ 永続化 永続化 永続化 永続化 キャッシュ
自動フェイルオーバー 不要 別AZに再配置可
自動切換機能無
クラスターモードのみ可 不可
スケーリング リードレプリカ追加
メモリ・CPU増強
ストレージサイズ自動増加
オンラインシャーディング不可
自動スケーリング
  or
PCUで拡大範囲指定
ノードスペック変更
ノード追加
同時実行スケーリングで一時的なクラスタ追加自動化
シャード:水平
(クラスターモード有効時)
プライマリノード:垂直
レプリカノード:水平・垂直
ノード:水平・垂直

出題傾向は少ないですが、この他にもいくつかDBが存在しますので、簡単に記載します。

項目 データタイプ 用途
Amazon DocumentDB
(MongoDB互換)
ドキュメント コンテンツ管理、カタログ、ユーザープロファイル、生成AI
Amazon Neptune グラフ 不正検出、ソーシャルネットワーキング、レコメンデーションエンジン、生成AI
Amazon Keyspaces ワイドカラム 高スケールの業界アプリケーション、設備のメンテナンス、多数の装置の管理、ルート最適化
Amazon Timestream 時系列 IoTアプリケーション、DevOps、産業用テレメトリ


Amazon RDSとAmazon AuroraのMulti-AZオプション

Amazon RDSとAmazon AuroraのMulti-AZ配置の種類について、以下に記載します。
なおMulti-AZ DB clusterは以下のインスタンス要件が存在しますのでご注意ください。
(db.m5d, db.m6gd, db.m6id, db.m6idn, db.r5d, db.r6gd, db.x2iedn, db.r6id, db.r6idn, db.c6gd)

項目 Multi-AZ DB instance Multi-AZ DB cluster Multi-AZ cluster
対応エンジン Amazon RDSの全DBエンジン Amazon RDS for MySQL
Amazon RDS for PosgreSQL
Amazon Aurora
スタンバイインスタンスの数 1台 2台 最大15台
AZの数 2つ 3つ 任意のAZ
スタンバイインスタンスへの読み取り 不可


Amazon RDS

Amazon RDSは暗号化とプロキシ、AWS RDS Custom系のオプションを記載します。

項目 特徴 用途・操作
暗号化 DBインスタンス作成時に暗号化可能
作成後に暗号化を有効化は出来ない
DB作成後の暗号化はスナップショットを作成後、暗号化済コピーを行い、
暗号化済スナップショットを別インスタンスにDBをデプロイすることで暗号化
もしくはDMSとKMSを利用し、上述動作を行い、別インスタンスで暗号化
RDS Proxy DBとの接続を管理し、スケーリング、フェイルオーバー、
セキュリティ対策を自動化するフルマネージドサービス
増大したDB接続に対し既存のDB接続を再利用し、
新規接続のオーバーヘッドを軽減
DB接続をプーリングし、DB接続数を緩和する
アプリケーションとDB間の接続管理の運用上の煩雑さを軽減
Amazon RDS Custom for XX
(Oracle、Microsoft SQL Server)
DBのセットアップ、運用、スケーリングを自動化
クラウドDBおよびOSへのアクセスを許可
設定構成、パッチインストール、ネイティブ機能有効化
特定のユースケースに適した独自の設定・機能を実装する場合
特権アクセスを必要とするサードパーティ機能を扱う場合


Amazon Aurora

完全マネージド型のリレーショナルデータベースエンジンで、MySQLおよびPostgreSQLと互換性があります。
ストレージは、必要に応じて自動的に拡張され、DBのクラスター化とレプリケーションを自動化します。
プライマリDBインスタンスを作成後、最大15個の読み取り専用Auroraレプリカ(リーダーインスタンス)を作成することができます。
本項ではオプション部分にフォーカスして、整理していきたいと思います。

項目 特徴 用途・メリット
Aurora Serverless v2 Amazon Aurora用のオンデマンドのオートスケーリング設定
データベースの容量を自動的に調整
使用しないコンピュータリソースの削減
マルチテナントDB、分散型DB、開発、テストシステムなどの
ワークロードが大きく変動し、予測不可能な環境
Aurora DB クラスターの
ボリュームのクローン
既存のDBクラスターに影響を与えず、
クローンを新しいDBクラスターに作成可能
1つのコピーから最大で15のクローン作成
別アカウント、リージョンへのクローン作成は不可
スキーマの変更やパラメータグループの変更などを試す場合
エクスポート、分析クエリの実行など、大量ワークロードを扱う場合
開発、テスト目的で、本番DBクラスターのコピーを作成したい場合
グローバルデータベース 複数リージョンにまたがる単一のAuroraデータベースを使用して、
グローバルに分散したアプリケーションを実行を使用
データが書き込まれるプライマリリージョンと、
最大5つの読み取り専用セカンダリリージョンで構成
書き込みはプライマリリージョン内のプライマリDBクラスターに発行し、
1秒未満のレイテンシーで、セカンダリリージョンにレプリケート
セカンダリクラスターは、Auroraレプリカを16件追加可能
世界中にオフィスを持つ企業がプライマリとセカンダリにアクセス
リージョン全体にわたる停止からの回復


Amazon DynamoDB

DynamoDBはkey-valueとドキュメントデータモデルをサポートするサーバーレスのNoSQLデータベースサービスです。
自動的にスケールアップ、スケールダウンを行うため、システム規模に関わらず利用できます。
本項ではオプション部分にフォーカスして、整理していきたいと思います。

項目 特徴 用途・メリット
DynamoDB Accelerator(DAX) DynamoDBフロントエンドの高速インメモリキャッシュ
マイクロ秒レイテンシーでテーブルから結果整合性データへアクセス
迅速な読込み応答が必要なアプリケーション
(書き込みのバッファリングには使用不可)
大規模データに対し繰り返し読込むアプリケーション
DynamoDB Time to Live(TTL) コスト効率良く、不要になった項目を削除可能 書き込みスループットを消費することなく、
有効期限が切れた数日以内に自動的に削除
グローバルテーブル DynamoDBテーブルを複数のリージョンに自動的にレプリケート
どのレプリカテーブルに対しても読み取りと書き込みが可能
大規模にスケールされたグローバルなアプリケーション
アプリケーションの耐障害性の向上
ビジネス継続性の向上


Amazon S3

S3はオプションを少しだけ記載します。

項目 特徴 用途・メリット
Intelligent-Tierling データのアクセス頻度に応じたストレージ割振り アクセスが予測できないデータを低コストで運用したい場合
Transfer Acceleration 送信元から遠いS3データ転送を高速化
エッジロケーションとネットワークプロトコルの最適化
大量のデータを扱う場合
遠隔地からアクセスする場合
Expedited retrievals
迅速取り出し
S3 Glacier Flexible Retrievalまたは
S3 Intelligent-Tiering Archiveのデータに素早くアクセス
通常1〜5分以内で使用可能になる
最大規模のアーカイブ(250MB以上)は対象外
アーカイブのサブセットが迅速に必要になった場合
S3 Object Lambda GET、LIST、HEADリクエストに独自のコードを追加
データがアプリケーションに返されるときにそのデータを変更・処理
行のフィルタリング
画像の動的なサイズ変更と透かし
機密データの編集
画像の自動サイズ変更
古い形式 (JPEGからWebPなど) のトランスコーディング
メタデータの削除


AWS Snowファミリー

Snowファミリーは、~数TBはSnowcone、数十~数百TBはSnowball、それ以上はSnowmobileとなります。
インターネット帯域幅や専用線で移行するか、Snowファミリーで移行するか、といった試験問題が出題されます。
DataSyncを使用する選択肢などもあるので、併せて抑えておくと良いかもしれません。

項目 特徴 用途・メリット
Snowcone 8TB
ティッシュ箱程の大きさ
複数の大型車両から毎日テラバイト単位のデータを収集
限られたスペース、帯域幅な環境
工場、鉱山、油田などの過酷な環境条件
移動中または現場の患者に優れたケアを提供
コンテンツ(高解像度の画像を含む)を収集して処理
Snowball Edge Storage Optimized 100TB(80TB使用可能)
データ転送パフォーマンスを25%高速化
テラバイトからペタバイト級のデータ転送処理
ローカルストレージや大規模データ転送
Snowball Edge Compute Optimized 42TB(39.5TB使用可能) オフラインの機械学習
フルモーションビデオ分析など
Snowmobile
(※1)
100PB
14mの輸送コンテナ
マルチペタバイト、EB(エクサバイト)規模のデジタルメディアの移行
データセンターの停止

※1:Snowmobileに関しては、SAA-C03の試験範囲ではありますが、サービス終了となっていますので、ご注意ください。
  「AWS Snowmobile」がサービス終了に 大型トラックでデータセンターのデータを吸い上げる移送手段


Amazon SQS

SQSはマイクロサービス、分散システム、およびサーバーレスアプリケーション用の完全マネージド型メッセージキューです。
データの疎結合化による可用性の上昇やパフォーマンスの向上が見込めます。
プロデューサーがメッセージをSQSに送信し、コンシューマーがSQSからメッセージをポーリングする形となります。

項目 特徴 用途・メリット
標準キュー スループットは無制限
配信順序は保証されない(ベストエフォート)
メッセージは最低1回配信(重複有)
配信順序を気にしないサービス
メッセージが重複しても問題ないサービス
FIFOキュー スループットは1秒あたり300件のメッセージ処理
配信順序は保証される
メッセージはExactly-once(※2)
配信順序を気にするサービス
メッセージが重複してほしくないサービス
可視性タイムアウト メッセージが処理中の場合、一時的に他のプロセスからは
メッセージが存在していることを見えないようにする
メッセージが処理開始直後に重複して処理されたくない場合

※2:FIFOキューにおけるExactly-onceは処理重複が完全になくなる訳ではないという点にご注意ください。
  「可視性タイムアウトが切れない限り、1つのメッセージはキューから重複して配信されない」という意味となります。
  解釈が難しいので、以下の記事の「メッセージの重複」項を参考にすると良いかと思います。
  非同期メッセージングでSQSを使う際に検討したこと


AWS Secrets Manager

Secrets Managerはシステムの認証情報を集中管理することができるサービスです。
パスワードのローテーションやバージョン管理が可能で、クレデンシャル管理とローテーションを自動で行います。
シークレットのローテーションは定期的に行うことが推奨されており、自動でスケジューリングとローテーションを行います。

項目 特徴 用途・メリット
シークレットレプリケーション シークレットを複数のAWSリージョンにコピーする機能 異なるリージョンのクレデンシャルを一元的に管理する場合


Amazon Database Migration Service

データベースを安全にAWSに移行するためのサービスです。
ダウンタイムを最小限に抑えるために進行中の変更もレプリケーションします。
ソースとターゲットデータベース間でデータをレプリケーションします。

項目 特徴 用途・メリット
Schema Conversion Tool スキーマ分析、推奨、変換を自動化
一般的なデータベース・分析サービスをソースとして利用
異なるデータベースの移行を行う場合
レプリケーションインスタンス DMSが移行のトラフィックを処理するためのインスタンス 複数のインスタンスから選択可能
(メモリ最適化は大量データを扱う際に使用するなど)
レプリケーションタスク ソース、ターゲット、インスタンスを指定し、
レプリケーションを実行可能
DMSでデータ移行作業を定義するためのユニット
テーブルマッピング フィルタを使用し、テーブルの列からレプリケートするデータを指定
選択したスキーマ、テーブル、ビューを
ターゲットデータベースに書き込む前に変更
移行するデータを指定
全負荷+変更データキャプチャ(CDC)
レプリケーションタスク
データベースの全体の移行(静止断面、全負荷)
継続的な変更をキャプチャ(CDC)
データベースの全移行を変更部分まで反映したい場合


その他サービス

その他に名前と用途が覚えにくいと個人的に思ったサービスを羅列します。

項目 説明
Textract スキャンしたドキュメントからテキスト、手書き文字、レイアウト要素、データを自動的に抽出する機械学習 (ML) サービス
Translate 高速で高品質かつカスタマイズ可能なテキスト言語翻訳
Transcribe フルマネージド型の自動音声認識 (ASR) サービス
音声の文字起こし機能をアプリケーションに簡単に追加可能
Comprehend 機械学習を使用して、テキストからインサイトや関係性を発見するための自然言語処理 (NLP) サービス
Rekognition 機械学習を使用して画像認識と動画分析を自動化
不適切なコンテンツを検出可能
SageMaker 機械学習 (ML)モデルを構築、トレーニング、デプロイ

最後に

筆者が覚えづらいと感じたり、頭から抜けたりする項目が多く、
試験前に「こんなまとめが欲しいな」と思い、執筆した記事となります。
本記事が皆様の試験合格の一助になれば幸いです。
最後に一言、「試験、一緒に頑張りましょう!」、ここまで読んでくださりありがとうございました。

参考文献