目次
1. 結論
Amazon Kinesis Data Analyticsは、「流れているデータ(インフライトデータ)にその場でクエリを投げる」サービスです。データを一度どこかに保存してから分析するのではなく、ストリームとして流れている最中にSQLなどで集計・加工を行うことで、超低遅延(秒単位)なインサイト獲得を可能にします。
2. SAAで出やすいポイント
- リアルタイム性: データの「鮮度」が重要な場合に選択される。S3やRedshiftに保存した後の分析では遅すぎるケースに最適。
- 標準SQLの利用: 慣れ親しんだSQLを使って、ストリーミングデータから最大値、平均値、異常値などを抽出できる。
- サーバーレス: 処理能力(KPU: Kinesis Processing Units)は負荷に応じて自動的にスケーリングされるため、管理負担が少ない。
- Apache Flinkのサポート: より複雑なロジックが必要な場合は、強力なオープンソースフレームワークであるApache Flinkを利用できる。
- 入力と出力:
- 入力: Kinesis Data Streams または Kinesis Firehose。
- 出力: Kinesis Data Streams, Firehose (S3, Redshiftなどへ送信), または Lambda。
3. キーワードでの判断
| 問題文のキーワード | 疑うべきサービス/機能 | 判断理由 |
|---|---|---|
| 「流れているデータに対してSQLでリアルタイム分析」 | Kinesis Data Analytics | SQLによるリアルタイム処理の専門 |
| 「インフライトデータ(In-flight)の集計・加工」 | Kinesis Data Analytics | 保存前の処理 |
| 「ストリームデータからの異常検知を数秒以内に行う」 | Kinesis Data Analytics | 低遅延な検知ロジック |
4. ひっかけポイント
- Kinesis Firehoseとの違い:
- Firehose: データを「運ぶ」のがメイン(簡単な変換のみ)。
- Analytics: データを「分析・集計・加工」するのがメイン(複雑なロジック)。
- Athenaとの違い:
- Athena: S3に「保存された」データに対してSQLを投げる。
- Analytics: 「流れている」データに対してSQLを投げる。
5. 覚え方
- 「流しそうめんの検品担当」。
- そうめん(データ)が流れてくる間に、色が悪いもの(異常値)を箸でつまみ出したり、流れてくる数を数えたり(集計)するイメージ。
6. 関連サービス
| サービス名 | 関連する理由 |
|---|---|
| Kinesis Data Streams | 分析対象となるデータの供給元。 |
| Kinesis Firehose | 分析結果をS3やRedshiftへ流し込むための出口として利用。 |
| Lambda | 分析結果に基づいて、特定の通知(SNS)やアクションを実行する。 |
7. Obsidian管理メモ
- 復習ポイント: 「SQL」と「リアルタイムストリーム」という単語の組み合わせが出たら、まずこのサービスを思い浮かべる。
- 関連ノート: AWSストリーミングサービス完全ガイド
8. HTMLファイル名
aws-kinesis-data-analytics-realtime-sql.html