AWS SAA-C03試験対策|データ分析・機械学習について、まとめています。自分のアウトプットです!
1. データの収集とストリーミング
データ分析の第一歩は、データを集めることです。
- Amazon Kinesis: リアルタイムで大量に発生するデータを収集・処理したいときに使うサービスです。
Kinesis Data Streams
は、カスタムのアプリケーションを構築して、より柔軟にデータを処理する場合に利用します。Kinesis Data Firehose
は、データを特定の宛先(S3、Redshift、OpenSearchなど)に自動で送ってくれるので、簡単にデータを保存したい場合に最適です。
- Amazon MSK (Managed Streaming for Apache Kafka): もし、既にApache Kafkaを使っている場合や、Kafkaのエコシステムを利用したい場合は、フルマネージドなMSKが選択肢になります。
2. データ保存の場所(データレイク)
集めたデータはどこに保存するべきでしょうか?
- Amazon S3: データレイクの主役です。高い耐久性、可用性、スケーラビリティを誇り、ほぼ無制限のデータを低コストで保存できます。
- AWS Lake Formation: S3にデータレイクを構築した際、セキュリティやアクセス権限の管理を簡単にするためのサービスです。データの統制をシンプルにしてくれます。
3. データを料理する(処理と分析)
次に、保存したデータを分析しやすい形に加工・処理します。
- AWS Glue: サーバーレスなETL(抽出・変換・ロード)サービスです。
Glue Data Catalog
は、データレイク内のデータの「設計図」を管理する図書館のような役割です。Glue Crawlers
は、データの中身を自動で調べて、この設計図を自動で作成してくれます。
- Amazon Athena: S3に保存されたデータを、サーバーレスで直接SQLで分析できるサービスです。アドホックなクエリや、手軽な分析に非常に便利です。
- Amazon Redshift: 大規模なデータウェアハウスサービスです。Athenaよりもはるかに高速なクエリが必要な場合や、BIツールと連携して複雑な分析を行う場合に適しています。
- Amazon EMR (Elastic MapReduce): HadoopやSparkといったオープンソースのビッグデータフレームワークを使いたいときに利用するサービスです。
- Amazon Managed Service for Apache Flink: リアルタイムで流れてくるデータに対して、継続的なSQLクエリを実行するのに特化したサービスです。
- Amazon OpenSearch Service: ログデータや全文検索機能が必要な場合に利用するサービスです。
4. 分析結果を可視化する
分析した結果は、グラフやダッシュボードにして見やすくしましょう。
- Amazon QuickSight: クラウドベースのBI(ビジネスインテリジェンス)サービスです。データの可視化を簡単に行うことができます。
5. データ共有のマーケットプレイス
- AWS Data Exchange: 外部の企業が提供するデータを、簡単に購入・利用できるサービスです。
機械学習をマスターする
SAA試験で問われる機械学習は、専門的な知識よりも「どのサービスが何に役立つか」が重要です。
1. 独自のモデルを開発する
- Amazon SageMaker: 機械学習モデルの構築、トレーニング、デプロイのすべてをサポートするフルマネージドなサービスです。カスタムモデルを開発する場合の主要なサービスです。
2. すぐに使えるAIサービス
AWSには、既に学習済みのAIモデルが用意されています。
- Amazon Rekognition: 画像や動画を分析します。
- Amazon Comprehend: テキストの感情分析やキーワード抽出を行います。
- Amazon Transcribe: 音声をテキストに変換します。
- Amazon Polly: テキストをリアルな音声に変換します。
- Amazon Translate: テキストを翻訳します。
- Amazon Textract: 画像やPDFからテキストや表を抽出します。
- Amazon Forecast: 時系列データから将来を予測します。
- Amazon Fraud Detector: 機械学習で詐欺を検知します。
- Amazon Kendra: 複数のデータソースから必要な情報を賢く検索します。
- Amazon Lex: 会話型インターフェース(チャットボット)を簡単に構築できます。
試験で勝つためのアーキテクチャパターン
試験では、これらのサービスを組み合わせたソリューションのシナリオ問題が出題されます。パターンを理解することが合格への鍵です!
- リアルタイム処理:
Kinesis Data Streams
やMSK
でデータを集め、Managed Service for Apache Flink
やLambda
でリアルタイムに処理します。 - データレイク:
S3
にデータを保存し、Lake Formation
で管理。Glue
でカタログ化し、Athena
やRedshift
で分析します。 - ビッグデータバッチ処理:
S3
に保存した大量データを、EMR
を使って一括で処理します。