Qu'est-ce que le streaming et pourquoi c'est important ?

Données en continu avec AWS Kinesis et Lambda

Maksim Pecherskiy

Data Engineer

Traitement par lots vs en continu

chapter1_take_ms_dahkX.png

Données en continu avec AWS Kinesis et Lambda

Traitement par lots vs en continu

Par lots

  • « Mieux »
  • Ensembles de données plus gros
  • Analyses plus complexes
  • Données plus lentes
  • Ex. Rapport de ventes quotidien
  • Ex. Prévoir les ventes du mois prochain
  • Ex. Prédiction du désabonnement

En continu

  • « Plus cool »
  • Analyses simples : agrégation / filtrage
  • Enregistrements individuels / micro-lots
  • Données TRÈS rapides
  • Ex. Détection de fraude
  • Ex. Suivi d'éoliennes
  • Ex. Alertes en temps réel
Données en continu avec AWS Kinesis et Lambda

Cody et la flotte

Cody

Cody à côté de son vélo

La flotte

un collage de véhicules

Données en continu avec AWS Kinesis et Lambda

Télématique en continu

chapter1_take_ms_IfvAm.png

chapter1_take_ms_tNX4d.png

chapter1_take_ms_frlCB.png

Données en continu avec AWS Kinesis et Lambda

AWS Kinesis

Données en continu avec AWS Kinesis et Lambda

Data Firehose

chapter1_take_ms_UPYak.png

Données en continu avec AWS Kinesis et Lambda

Flux de diffusion

chapter1_take_ms_MDHnC.png

Données en continu avec AWS Kinesis et Lambda

Flux de diffusion

chapter1_take_ms_ytekB.png

Données en continu avec AWS Kinesis et Lambda

Flux de diffusion

chapter1_take_ms_gx6D1.png

Données en continu avec AWS Kinesis et Lambda

Créer un client 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')
Données en continu avec AWS Kinesis et Lambda

Travailler avec les flux de diffusion

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

print(response['DeliveryStreamNames'])
['old-delivery-stream1', 'a-test-stream']
Données en continu avec AWS Kinesis et Lambda

Supprimer des flux

# 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)
Données en continu avec AWS Kinesis et Lambda

Révision

  • Par lots vs en continu
  • Cody et collecte télématique
  • AWS Kinesis
  • Kinesis Firehose Delivery Streams
  • AWS Kinesis Data Firehose
  • Lister et supprimer des flux Firehose
  • Producteur → générateur de données
  • Destination → où vont les données
Données en continu avec AWS Kinesis et Lambda

Passons à la pratique !

Données en continu avec AWS Kinesis et Lambda

Preparing Video For Download...