Streaming คืออะไร และทำไมถึงสำคัญ?

Streaming Data ด้วย AWS Kinesis และ Lambda

Maksim Pecherskiy

Data Engineer

Batch กับ Stream

chapter1_take_ms_dahkX.png

Streaming Data ด้วย AWS Kinesis และ Lambda

Batch กับ Stream

Batch

  • "ดีกว่า"
  • ชุดข้อมูลขนาดใหญ่
  • การวิเคราะห์ที่ซับซ้อนกว่า
  • ข้อมูลเคลื่อนที่ช้า
  • เช่น รายงานยอดขายรายวัน
  • เช่น การพยากรณ์ยอดขายเดือนหน้า
  • เช่น การทำนายการเลิกใช้บริการ

Stream

  • "เท่กว่า"
  • การวิเคราะห์แบบง่าย: การรวมข้อมูล / การกรอง
  • ระเบียนเดี่ยว / micro batch
  • ข้อมูลเคลื่อนที่เร็วมาก
  • เช่น การตรวจจับการทุจริต
  • เช่น การตรวจสอบกังหันลม
  • เช่น การแจ้งเตือนแบบเรียลไทม์
Streaming Data ด้วย AWS Kinesis และ Lambda

Cody และกองยานพาหนะ

Cody

Cody ยืนอยู่ข้างจักรยานของเธอ

กองยานพาหนะ

ภาพรวมของยานพาหนะต่าง ๆ

Streaming Data ด้วย AWS Kinesis และ Lambda

การสตรีมข้อมูล Telematics

chapter1_take_ms_IfvAm.png

chapter1_take_ms_tNX4d.png

chapter1_take_ms_frlCB.png

Streaming Data ด้วย AWS Kinesis และ Lambda

AWS Kinesis

Streaming Data ด้วย AWS Kinesis และ Lambda

Data Firehose

chapter1_take_ms_UPYak.png

Streaming Data ด้วย AWS Kinesis และ Lambda

Delivery streams

chapter1_take_ms_MDHnC.png

Streaming Data ด้วย AWS Kinesis และ Lambda

Delivery streams

chapter1_take_ms_ytekB.png

Streaming Data ด้วย AWS Kinesis และ Lambda

Delivery streams

chapter1_take_ms_gx6D1.png

Streaming Data ด้วย AWS Kinesis และ Lambda

การสร้าง Firehose client

import boto3

firehose = boto3.client('firehose',
aws_access_key_id=AWS_KEY_ID, aws_secret_access_key=AWS_SECRET,
region_name='us-east-1')
Streaming Data ด้วย AWS Kinesis และ Lambda

การทำงานกับ delivery streams

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

print(response['DeliveryStreamNames'])
['old-delivery-stream1', 'a-test-stream']
Streaming Data ด้วย AWS Kinesis และ Lambda

ลบ streams

# 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)
Streaming Data ด้วย AWS Kinesis และ Lambda

ทบทวน

  • Batch กับ Stream
  • Cody และการเก็บข้อมูล Telematics
  • AWS Kinesis
  • Kinesis Firehose Delivery Streams
  • AWS Kinesis Data Firehose
  • การแสดงรายการและลบ Firehose delivery streams
  • Producer -> ตัวสร้างข้อมูล
  • Destination -> ปลายทางของข้อมูล
Streaming Data ด้วย AWS Kinesis และ Lambda

มาฝึกกันเถอะ!

Streaming Data ด้วย AWS Kinesis และ Lambda

Preparing Video For Download...