biztalk summit - iot

Post on 19-Jul-2015

217 Views

Category:

Engineering

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Internet of ThingsBizTalk Summit France

10/03/2015

Exemple d’objets connectés

• Portable sur soi, à la maison

• Infrastructure intelligente, domotique

• Sécurité et surveillance

• Santé

• Transport

• Agriculture

• …

Des objets qui n’étaient pas

connectés jusqu’à présent

Qui ne disposent souvent pas

d’un accès réseau spécifique

Qui envoient des données de

façon continue (stream)

The Internet of Things (IoT)

Les services Microsoft Azure pour l’IoT

Acheter

Construire

Acheter une partie,

Construire le spécifique

• Si le développement logiciel n’est pas une

compétence primaire

• Focus sur la rapidité d’implémentation

• Le développement logiciel est une force

• Focus sur la flexibilité et le control, minimization

du coût

• La plateforme est vue comme un investissement

stratégique

• Expérimentation

• Analytics et traitement des données spécifiques

• Composer des services à haute valeur ajoutée

“Intelligent Systems

Service” (ISS)

Outils “Platform as a

Service” (PaaS)

Plateforme ISS +

Services

Caractéristiques de l’organisation Services AzureComment approcher l’IoT

Quel type d’infrastructure est nécessaire?

Supporte la varieté (> million d’apparails concurrents)

Supporte la rapidité (> million événements/s)

Supporte le volume (> 100s de TB)

Buffering (pour gérer la variabilité)

Durabilité

Latence basse

Sécurité

Et pas trop cher!

Grid

Renewables

Oil/Gas/Coal

Recovery and

Distribution

Points

of Sale

Restaurants

Hotels

Fuel

Stations

Patients

Clinics

Hospitals

Nursing

Homes

Mobile

Care

SafetySecurity

ComfortLighting

Automation

Manufacturing

Integration and

AutomationRemote

Servicing

Predictive and

Reactive

Maintenance

Water

Waste

Pollution

Control

Fire

Emergency

Public

Safety

Law

Enforcement

Letters

Packages

Containers

Tanks Bulkware

Games

Events

Sports

TelevisionStreaming

Traffic Buses

Cars

Trucks

Trains

Vessels

Aircraft

Bikes

Smart

Energy

Smart

Retail

Smart

Mobility

Smart

Logistics

Smart

Factory

Smart

Cities

Smart

Entertain-

ment

Smart

Health-

care

Smart

Building

Home

Architecture de référence pour le traitement d’événements

Présentation et action

-

Search and query

Data analytics

Web/thickclient dashboards

Stockage long terme

Externaldata sources

Azure Storage

Transformation

Real-time analytics(Storm/Orleans,

NRT/ASA)

Batching/storageadapters

Ingestion(broker)

ScalableEvent Broker

Field Gateways

Collection

Cloud Gateways(WebAPIs)

Applications

Producteurs

Devices

Event Hub c’est un service d’ingestion en mode publisher-subscriber (éditeur/abonné)Variété: > million appareils with HTTP/AMQP/(MQTT)

Vitesse: > million lignes ingress/second

Volume: > GB/s ingress

Egress: Pub-sub: Consommateurs concurrents

Securité: SAS based, token unique par publisher

Buffer: Chaque consommateur possède son propre cursor/offset

Durable: Entre 1 and 30 jours de rétention

Latence: 50ms end-to-end en mode durable, pointes <10ms

Prix: Compétitif en mode PaaS, payer ce que vous consommer

Event Hub pour l’IoT: Ingestion Big Data

Sources Services Cloud

Stockage & Analytics

Code spécifique & Outils tiers

Web/Mobile User Interfaces

ServicesD’integration

Event Hub

- Hyper Scale -

- Mode Managé -

- Interopérable -

- Sécurisé -

L’avantage avec Azure

Storm sur Linux dans une VM

HDInsight sur Azure

Web Sites & Power BI

Scénarios Event Hub

Présentation et action

TransformationBroker Stockage long terme

CollectionProducteurs

Devices

Appareils entrée de gamme

(RTOS)

Appareils compatibles IP (Windows/Linux)

Field Gateway (Raspberry PI/

Galileo)(Embedded .Net/

ThreadX)

Event Hub

Legacy IoT(Protocoles spécifiques)

Cloud Gateway spécifique

AMQP/HTTPC, .NET, Java…

MQTT/COAP/Custom

Rétention des données dans le temps,

Groupes de consommateurs,

Réception partitionnée,

Check-point,

Plus basse latence end-to-end

Intégration facile avec les frameworks (SDK)

Custom code (Storm/Orleans)

Storage adapters

App insights

Data Analytics

Statistiques

Dashboard

Service

Recherche

Distributedtracing

-

Applications

AMQP/HTTP, C, .NET, Java… Scalabilité sur la bande passante (GB/s)

et le nombre de producteurs concurrents

Azure Dbs

Azure Storage

HDInsight

Event Hub : Envoyer des données

Partition 1

Partition 2

Partition “n”

Event 1

PartitionKey=A

Event 1

PartitionKey=B

Event Hub : Consommation

Partition 1

Partition 2

Partition “n”

Event 1

Pkey = A

Event 2

Pkey = BReceiver 6

Receiver 2

Worker “n”

Receiver 1

Receiver “n”

Worker 1

Event Hub : 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

17

Données au repos

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

18

Données en Mouvement

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…

19

Développent et Management dans le portail Azure

Toutes les opérations de management exposées via des endpoints REST (API)

Aussi connu sous le nom « Complex Event Processing », « Traitement d’événements complexes »

S’alimente des flux continus d’événements provenant d’IoT (Event Hub)…

Préparation des données (jointures, filtrage, agrégation, détection de patterns)

Permet le dashboarding en temps réel, les alertes, la maintenance préventive…

Azure Stream Analytics!

20

Pourquoi le faire dans le cloud?

Event data is already

in the Cloud

Event data is

globally distributed

Coût d’opération

moindre

Scale Services managés, pas

d’infrastructure

Déplacer les traitements vers la

données, et pas l’inverse!

21

Architecture complète

Data Source Collect Process Consume

Entrées- Event Hubs

- Azure Storage

Blobs

Transformer- Temporal joins

- Filter

- Aggregates

- Projections

- Windows

- etc.

Enrichir- Join with reference

data

Préparer- Output to storage

for further

processing

Sorties- Azure SQL DB

- Azure Storage

Blobs

- Event Hubs

Azure

Storage

• Temporal Semantics

• Guaranteed delivery

• Guaranteed up time

Azure Stream Analytics

Données de

référence- Azure Storage

Blobs

- …

22

L’avantage définitif

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?”

23

Agrégation temporelle, en SQL

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

SlidingWindow(minute, 3)

Internet of Things avec Microsoft Azure

Présentation et action

TransformationBroker Stockage long terme

CollectionProducteur

Appareilcompatible IP (Windows/Linux)

Event Hub

AMQP/HTTPC, .NET, Java…

Azure Stream Analytics

Azure SQL DB

Power BI

Langage Arduino (C/C++)

+

Azure : Python SDK

Pseudo SQL

Arduino.cc : hardware open source

Pour aller plus loin

• Arduino.cc : Starter Kit / Arduino Yun (Linux+Wifi)

• Arduino + Event HubOla Loogman (Kloud) : The IoT with Arduino, Event Hubs and the Azure Python SDK (blog)

• Event Hub et Stream AnalyticsDipanjan Banik – Stream Analytics Hands on Lab : TollApp (télécharger)Visual Studio 2013 Community Edition (télécharger) Azure 1 mois gratuit : 150€ (activer)

• Power BI : PowerBI.com (preview uniquement aux US, mais l’Europe bientôt)

top related