イメージ
DynamoDBの変更記録をS3に保存したい場合のイメージで図解
- お魚 .. データ。お魚は川の中では24時間の命(365日まで延命可能)
- 川 … Kinesis Data Streams
- ホース … Kinesis Firehose Streaming
- 男の子 ... Lambda、Amazon Managed Service for Apache Flink(※)
(※)使ったことないので適当なこと言ってたらスミマセン
StreamsとStreamingの言葉の違い
- stream...「小川」などの水の流れを指す言葉
- streaming...「配信する」「連続的なデータの流れ」という意味
Data Streams
- お魚が泳いでいる川
- 流れてるデータ(お魚)をSQLでリアルタイム分析(コンシューマー)
- 例えば、IoTで流れて来たデータをLambdaがコンシューマとして拾いエラーをチェック
- Lambdaがコンシューマとしてデータ加工 -> Firehoseに流すなども(Direct Put)
Firehose Streaming
- 川にホースを伸ばしてお魚を流し込む
- データの上流(ホースの垂らし先)はData Streams以外にも色々ある
- 逆に保存先もS3以外の選択肢がある(DataDogやSplunk連携も可能)
終わりに
Kinesisがデータ分析に関する何かである事は知ってる。しかし、具体的に何をしてるかは知らない。そんな状態でした。業務で触る機会に恵まれたので、自分なりに整理して見ました。