AWS Kinesis導入の思考フロー🤔 AWS エキスパートがリアルタイムなストリーミング実現を解説します!

AWS Kinesis導入の思考フロー🤔 AWS エキスパートがリアルタイムなストリーミング実現を解説します!

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは!

今回は Kinesis ファミリーを導入する際の思考フローについて解説していきます!様々なサービスが Kinesis にありますのでひとつずつユースケースをご紹介していきたいと思います。

想定する読者

  • Kinesis を使ってみたいヒト
  • Kinesis ファミリーのユースケースが気になるヒト

はじめに

Kinesis には以下のサービスがあります。

Kinesis Video Streamsストリーミング動画のキャプチャ、処理、保存
Kinesis Data Streamsデータストリームのキャプチャ、処理、保存
Kinesis Data FirehoseAWS データストアにデータストリームをロード
Kinesis Data AnalyticsSQL や Apache Flink でデータストリームを分析
これらを「Kinesis ファミリー」と呼びます。

それぞれの解説をしていきます。

Kinesis Video Streams

引用元: Amazon Kinesis Video Streams

Kinesis Video Streams には2種類の機能があります。ひとつは分析などを目的に動画をストリーミングデータに取り込む機能、もうひとつはWebRTCを利用したリアルタイムのビデオチャットを実現する機能です。

主な用途としては、IoTデバイス用のメディアストリーミングアプリケーションの構築だったり、MLアプリケーションだったり、ビデオチャット機能をもったサービスなどになります。そのため選定の基準としては自身のプロダクトが動画を扱うのかがひとつの分岐点になります。

ストリーミングデータの通信は暗号化され、各種AWSサービスと連携することによって価値を最大限に活かすことができます。

Kinesis Data Streams

引用元: Amazon Kinesis Data Streams

Kinesis Data Streams はリアルタイムにデータをキャプチャし収集することのできるサービスです。これによりウェブサイトのクリックやソーシャルメディアのデータなどを大量に集めることができます。マネージドサービスのため、スケーリングに考慮することはなく簡単に利用することができます。

選定の基準としては、リアルタイムなデータが収集できるかという点と、収集したあとに何をするか決まっているかどうかになります。ユースケースとしては、リアルタイムなレポートの作成やデータ分析などが挙げられます。

なおセキュリティはデフォルトで安全に保護されています。

Kinesis Data Firehose

引用元: Amazon Kinesis Data Firehose

Kinesis Data Firehose は、データレイク(S3など)にストリーミングデータを確実に収集するためのサービスです。AWS WAF や CloudWatch Logs などのログをS3バケットに収集する際などに使われたりします。また Kinesis Data Streams と組み合わせることもできます。

AWS内のログを S3 や Redshift に送信したい場合などには、必然的に利用することになるサービスです。こちらもマネージドサービスのため、管理は不要、セキュリティや耐久性は高くなっております。

Kinesis Data Analytics

引用元: Amazon Kinesis Data Analytics

Kinesis Data Analytics は、ストリーミングデータをリアルタイムで変換および分析できるサービスです。Kinesis Data Streams などと統合することで、リアルタイムにデータを分析する環境を構築することができます。

提供しているものは、リアルタイムなデータの整理や変換を可能にするストリーミングETL、データの傾向を監視し理解する継続的メトリック生成、機械学習を用いたリアルタイム応答分析、データストリームのインタラクティブな分析です。

ユースケースとしては、ゲームなどの順位をリアルタイムに表示したり、ユーザーのアクティビティからレコメンドするものを選定したりするといったものがあります。このような機能を実装しなければならないといった要件があれば、ぜひ使いたいサービスとなります。

関連記事

まとめ

Kinesis ファミリーは現在4つしかありませんが、リアルタイムなデータを処理したり収集したり、分析したりするにはとても頼りになるマネージドサービスとなります。ぜひそういった要件がある場合は検討することをお勧めいたします。

このブログでは、AWS の記事をどんどん公開しておりますので、ご興味のある方は他の記事もご覧いただければと思います。

AWS に関する開発は、お気軽にお問い合わせください。