Transcript

AMBIENT INTELLIGENCE

#mstechdays techdays.microsoft.fr

tech days•

2015camps

Architectures Lambda

Michel Hubert / Georges Damien

@michelhubert @georges_damien

tech.days 2015#mstechdaysArchitecture Lambda

Directeur Technique chez Cellenza

MVP Azure

Microsoft P-Seller

tech.days 2015#mstechdaysArchitecture Lambda

Consultant chez Cellenza

tech.days 2015#mstechdaysArchitecture Lambda

Architectures Lambda

tech.days 2015#mstechdaysArchitecture Lambda

« La meilleure façon de prédire le futur est de regarder le passé et le présent ! »

Pourquoi les architectures lambda ?

tech.days 2015#mstechdaysArchitecture Lambda

Historiquement, le BigData est une suite logique de la B.I.

Donc on a appliqué les techniques de la B.I. : Le Batch

Ce n’est pas plus suffisant !

Des flux de données à prendre en compte en temps-réel

Des historiques très volumineux qui recèlent de la valeur

Pourquoi les architectures lambda ?

tech.days 2015#mstechdaysArchitecture Lambda

Architecture lambda ?

tech.days 2015#mstechdaysArchitecture Lambda

La base de données classique :

Architecture basée sur des données immuables

UPDATE

tech.days 2015#mstechdaysArchitecture Lambda

Stockage immuable :

Architecture basée sur des données immuables

tech.days 2015#mstechdaysArchitecture Lambda

Quels cas d’usage ?

tech.days 2015#mstechdaysArchitecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

Prenons un scénario Exemple :

• Analyse temps réel des comportements,

• Calcul du Taux d’abandon de panier,

• Prévision de stock

• Détection de Fraude

• Analyse d’une campagne marketing

• Quels produits ne déclenchent pas d’achat ? Problème de stock ? De prix ?

Architecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

La Master Data

tech.days 2015#mstechdaysArchitecture Lambda

Azure Service Bus

Relay

Queue

Topic

Notification Hub

Event Hub

NAT and Firewall Traversal Service

Request/Response Services

Unbuffered with TCP Throttling

Many publishers and many consumers to

communicate over a FIFO like channel.

(Competing consumers and Queue-based

Load leveling scenarios)

Pub / Sub communication channel. Each

Consumer subscribes to a copy of message

High-scale notification distribution

Most mobile push notification services

Millions of notification targets

tech.days 2015#mstechdaysArchitecture Lambda

Event Hub vs Topics / Queues

Bus de messages

Topics / Queues Event Hub

tech.days 2015#mstechdaysArchitecture Lambda

Principe général

Event Producers

Azure Event Hub

> 1M Producers> 1GB/sec

Aggregate Throughput

Up to 32 partitions via portal, more on

request

Part

itio

ns

Direct

PartitionKey

Hash

Consumer Group(s)

Receivers

AMQP 1.0

Credit-based flow control

Client-side cursors

Offset by Id or Timestamp

tech.days 2015#mstechdaysArchitecture Lambda

Envoi des données

Partition 1

Partition 2

Partition “n”

Event 1

PartitionKey=A

Event 1

PartitionKey=B

tech.days 2015#mstechdays

Publication de message .Net / AMQP

Architecture Lambda

tech.days 2015#mstechdays

Publication de message via HTTP

Architecture Lambda

<protocol>://<namespace>.servicebus.windows.net/<eventhubname>/publisher/<partitionkey>/messages

tech.days 2015#mstechdaysArchitecture Lambda

Consommation des données

Partition 1

Partition 2

Partition “n”

Event 1

Pkey = A

Event 2

Pkey = B Receiver 6

Receiver 2

Worker “n”

Receiver 1

Receiver “n”

Worker 1

tech.days 2015#mstechdaysArchitecture Lambda

Consommation multiple

Partition 1

Partition 2

Partition “n”

Consumer Group C

Callback for prtn. 6

Callback for prtn. 2

Worker “n”

Callback for prtn. 1

Callback “n”

Worker 1Consumer Group B

Callback for prtn. 6

Callback for prtn. 2

Worker “n”

Callback for prtn. 1

Callback “n”

Worker 1Consumer Group A

Worker “n”

Callback for prtn. 6

Callback for prtn. 2

Callback for prtn. 1

Callback “n”

Worker 1

tech.days 2015#mstechdays

IEventProcessor

Architecture Lambda

tech.days 2015#mstechdays

IEventProcessor

Architecture Lambda

Architecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

Données en mouvement« Complex Event Processing »

tech.days 2015#mstechdaysArchitecture Lambda

Stream Analytics

SELECT count(*) FROM ParkingLot

WHERE type = 'Auto'AND color = 'Red'

Question“Combien de voitures rouges dans le parking?”

Répondre avec une base de donnée relationnelleMarcher jusqu’au parking

Compter les véhicules qui sont: Rouge, Voiture

tech.days 2015#mstechdaysArchitecture Lambda

Stream Analytics

La question est différente“Combien de voitures rouges sont passées au marqueur 18A sur l’A-10 dans

la dernière heure?”

Répondre avec une base de donnée relationnelleS’arrêter, faire se garer toutes les voitures qui arrivent pendant l’heure dans un parking, les compter

Pas la meilleure des solutions…

tech.days 2015#mstechdaysArchitecture Lambda

SELECT count(*) FROM A-10WHERE Type = ‘Voiture’ and Color = ‘Rouge’GROUP BY TumblingWindow(hour, 1)

La question est différente“Combien de voitures rouges sont passées au marqueur 18A sur l’A-10 dans

la dernière heure?”

tech.days 2015#mstechdaysArchitecture Lambda

TumblingWindow(minute,5) HoppingWindow(minute, 10 , 5)

SlidingWindow(minute, 3)

Architecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

Une usine à données

Last Name First Name Country Age …

Flasko Mike Canada 32

Anand Subbaraj USA 30

Gaurav Malhotra USA 72

… …. …. ….

Last Name First Name At risk of churning ….

Flasko Mike Yes

Anand Subbaraj No

Gaurav Malhotra Yes

… ….

Call Log Files

Customer Table

Call Log Files

Customer Table

Customer Churn Table

Data Factory Concepts

Data Sources Ingest Transform & Analyze Publish

Customer Call Details

Customers Likely to Churn

tech.days 2015#mstechdays

A managed cloud service for building & operating data pipelines (aka. data flows)

1. Orchestrate, monitor & schedule

• compose data processing, storage & movement services (on premises & cloud)

2. Automatic infrastructure mgmt

• combine pipeline intent w/ resource allocation & mgmt

• data movement as a service (global footprint & on premises)

3. Single pane of glass

• one place to manage your network

of data flows

Architecture Lambda

tech.days 2015#mstechdays

Pipeline (Active Period: July 2015 to July 2016)

Architecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

Architecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

Pour aller plus loin…

tech.days 2015#mstechdaysArchitecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

Machine Learning

tech.days 2015#mstechdaysArchitecture Lambda

Machine Learning

Architecture Lambda

tech.days 2015#mstechdaysArchitecture Lambda

[email protected]

@michelhubert

[email protected]

© 2015 Microsoft Corporation. All rights reserved.

#mstechdays techdays.microsoft.fr/camp

tech days•

2015camps

Architecture Lambda


Top Related