🚀 パフォーマンス:Kinesis Data Analyticsの使いどころ

目次

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

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次