ストリーミングとは?重要な理由

AWS Kinesis と Lambda で学ぶストリーミングデータ

Maksim Pecherskiy

Data Engineer

バッチ vs ストリーム

chapter1_take_ms_dahkX.png

AWS Kinesis と Lambda で学ぶストリーミングデータ

バッチ vs ストリーム

バッチ

  • 「より良い」
  • 大規模データセット
  • 複雑な分析
  • データは遅く動く
  • 例: 日次売上レポート
  • 例: 来月の売上予測
  • 例: 解約予測

ストリーム

  • 「よりクール」
  • 単純な分析: 集約/フィルタリング
  • 個別レコード/マイクロバッチ
  • データは高速
  • 例: 不正検知
  • 例: 風力タービン監視
  • 例: リアルタイム警告
AWS Kinesis と Lambda で学ぶストリーミングデータ

Cody とフリート

Cody

自転車の横に立つ Cody

フリート

車両のコラージュ

AWS Kinesis と Lambda で学ぶストリーミングデータ

テレマティクスのストリーミング

chapter1_take_ms_IfvAm.png

chapter1_take_ms_tNX4d.png

chapter1_take_ms_frlCB.png

AWS Kinesis と Lambda で学ぶストリーミングデータ

AWS Kinesis

AWS Kinesis と Lambda で学ぶストリーミングデータ

Data Firehose

chapter1_take_ms_UPYak.png

AWS Kinesis と Lambda で学ぶストリーミングデータ

配信ストリーム

chapter1_take_ms_MDHnC.png

AWS Kinesis と Lambda で学ぶストリーミングデータ

配信ストリーム

chapter1_take_ms_ytekB.png

AWS Kinesis と Lambda で学ぶストリーミングデータ

配信ストリーム

chapter1_take_ms_gx6D1.png

AWS Kinesis と Lambda で学ぶストリーミングデータ

Firehose クライアントの作成

import boto3

firehose = boto3.client('firehose',
aws_access_key_id=AWS_KEY_ID, aws_secret_access_key=AWS_SECRET,
region_name='us-east-1')
AWS Kinesis と Lambda で学ぶストリーミングデータ

配信ストリームの操作

# Show created delivery streams
response = firehose.list_delivery_streams()

print(response['DeliveryStreamNames'])
['old-delivery-stream1', 'a-test-stream']
AWS Kinesis と Lambda で学ぶストリーミングデータ

ストリームを削除

# Show created delivery streams
response = firehose.list_delivery_streams()

# Delete them all! for stream_name in response['DeliveryStreamNames']:
firehose.delete_delivery_stream(DeliveryStreamName=stream_name)
AWS Kinesis と Lambda で学ぶストリーミングデータ

復習

  • バッチ vs ストリーム
  • Cody とテレマティクス収集
  • AWS Kinesis
  • Kinesis Firehose 配信ストリーム
  • AWS Kinesis Data Firehose
  • Firehose 配信ストリームの一覧/削除
  • Producer -> データ生成元
  • Destination -> データの送信先
AWS Kinesis と Lambda で学ぶストリーミングデータ

練習しましょう!

AWS Kinesis と Lambda で学ぶストリーミングデータ

Preparing Video For Download...