Sido 2017 : Vincent Thavonekham, MVP azure et Regional Director, VISEO, Retour Expérience Hager Sigfox

FactoVia
FactoViaMicrosoft Regional Director | Azure MVP at FactoVia à FactoVia
Responsable Stratégie Cloud chez VISEO
Vincent Thavonekham,
MVP Azure et Microsoft Regional Director
@vThavo
Deux talks au village Microsoft
RETOUR D'EXPÉRIENCE
"LARGE IOT PROJECTS"
FOCUS PROJET IoT :
HAGER SERVICES et SIGFOX
Responsable Stratégie Cloud chez VISEO
Vincent Thavonekham,
MVP Azure et Microsoft Regional Director
@vThavo
RETOUR D'EXPÉRIENCE "LARGE IOT PROJECTS"
FOCUS SUR LE PROJET IoT : HAGER SERVICES + SIGFOX
05 et 06 avril 2017
SALON DU SIDO 2017, Village Microsoft
Hager souhaitait réaliser une plateforme
générique IoT sur Azure pour tous les
besoins actuels et futurs.
L’existant ne pouvant plus traiter
ni la masse de données, ni les traitements
« near-temps réels ».
Le premier projet s’est basé sur des
capteurs connectés au réseau Sigfox.
Simon ANDRE, IoT Cloud Manager
Besoin et problématique
Simon ANDRE, IoT Cloud Manager
Solution en Production sur Azure IoT
« Timing très court … nous
devions faire des choix
pragmatiques … »
« Nous sommes très satisfaits
des performances »
« 2015: Connecteur
SigfoxAzure IoT :
Quelques ajustements »
« ASP.Net Core 1.0 Web Apps
= Globalement un bon choix »
Focus IoT sur Hager Services + Sigfox
1. Bien respecter les « Best Practices » IoT pour éviter les échecs
– Penser idéation, valeur métier, … (cf « Agile IoT »)
2. Le projet ne s’arrête pas à la fin des développements !
– Ne pas se concentrer uniquement sur le projet « informatique »
– Budget Qualité / Prod : PRA, ITIL v3, « vrai » DevOps à terme
– Principe de précaution de la Loi de Murphy :
« Tout ce qui est susceptible de mal tourner tournera nécessairement mal. ». Prévoir les « Single point of Failure »
(SPOF)
3. Pilotage d’un projet IoT : pas uniquement les Dev et la R&D
– C’est un projet de transformation de l’entreprise : Implication Direction
4. ROI : Succès grâce à une avance et une « extensibilité » technologique
– Lire, s’ouvrir, travailler avec Microsoft Corp, …
IoT and BigData : IoT Azure at scale - Featuring Hager Services and AgileIoT
CE QUE NOUS AVONS APPRIS
Selon Cédric Villani, Pr Maths, Médaille Fields
« Une idée, cela peut changer le monde.
Mais comment la trouver? » Cédric Villani
• La documentation
• La motivation
• L’environnement
• Les échanges
• Les contraintes
• La chance
• La persévérance
Début de l’aventure IoT: « Naissance des idées »
Focus IoT sur Hager Services + Sigfox
7
• Croisement des informations sur trois axes
Des méthodologies
et architectures éprouvées
IoT and BigData : IoT Azure at scale - Featuring Hager Services and Agile IoT
Provenance de ces retours d’expériences IoT
METHODOLOGIE AGILE IOT
Approche robuste
The Agile IoT Funnel
1 Philosophy
4 Principles
5 Practices
2 Methodologies… for now!
Agile IoT Duttile Poster
Prototype Phase (timing: typically, 2
-4 weeks), it’s the first phase of the
process. There’s the Vision definition
, Fast Prototypization and Product
Backlog definition using a specific
planning phase;
Engineering Phase (timing: time needed for reaching
the Value). In this step, the solution is engineerized
and developed. It’s, as one could deduct, the most
important and complex phase of the whole process;
Workout Phase (timing: Typically,
1-2 weeks). It’s the last phase,
focalized onto the Deployment,
Support and the Continuous
Improvement of the product.
Agile IoT Fast Prototyping
Energy: focused on the energetic-based aspects as a function
of the needs of the operational continuity of smart devices;
Hardware : focused on the validation of the hardware through
one or more Evaluation Kits (EVK).
Code: focused on the prototyping of the firmware of the devices and t
he services made for acquiring the main data/events.
Data Flow: focused on the aspects related to the gathering,
cleaning-up and managing of the Raw Data that comes from the devic
es.
Cloud: focused on the Cloud aspects of the solution, as a
data/event management platform.
Security: focused on the verification of the security aspects, which
affect the solution as well as the development.
Delivery Prototyping: focused on the deploy of the elements of the s
olution, speaking about both hardware items and services
ones.
Legal: focused on the analysis of the law and regulations, national
and international, which the solution must consider in order to
become a marketable product.
Retours sur un projet
Azure IoT en particulier
Capteurs connectés
BESOIN HAGER SERVICES: Capteurs incendie
« connectés »
– Directeur du projet : Simon ANDRE
– Equipe de 6 personnes
– Architecture fortement inspirée des architectures
dites « Lambda » pour de l’IoT / Big Data
Témoignage client : Hager Services
Focus IoT sur Hager Services + Sigfox
• Exigence Sigfox
– Taille des trames Sigfox : 12 octets
– 140 messages / 24h / device
– 10 minutes entre deux trames
• Par sécurité: nous attendions 20 min entre 2 trames
Témoignage client : Hager Services
Focus IoT sur Hager Services + Sigfox
• Exigence Hager
– Plate-forme IoT « générique »
• Démarrage avec les détecteurs d’incendie
• Mais plateforme ouverte permettant d’intégrer de
nouveaux produits, nouveaux services
Témoignage client : Hager Services
Retour d'expérience "large IoT projects", Focus sur HagerServices
PLATFORM COMPLEXITY
VISEO HELPS EASE THE PAIN TO CREATE THE COLLECTING INFRASTRUCTURE
Ready to use infrastructure  levering our knowledges
Azure IoT Suite
Platform in less than 10 minutes
Easy set up for PoC & Prototypes
Azure
Pick and choose what we need for
the perfect solution for our client
EXTENSION OF NODE-RED AND OPEN-SOURCED
OPEN SOURCE AND AZURE BASED
Simplifiée :
• Azure WebJob + WebApp basés sur ASP.Net Core 1.0
• Architecture micro-services asynchrone et event-based
• DAL basée sur micro-ORM Dapper
Architecture : forte volumétrie + traitements « near-temps réel »
Témoignage client : Hager Services
Focus IoT sur Hager Services + Sigfox
Event Hub
Utilisateurs
Assemblage Routage Traitement
et stockage
Le problème de découpage côté « Device »
20
Enterprise integration patterns
• Slitter côté Device Hager
Message Hager
volumineux
Message Hager découpé pour
transport via Sigfox (140 packets 12 bytes)
Le problème du réassemblage des trames
21
Le choix final s’est porté sur
Reactive Extensions.
Sur les 18 langages, choix de C#
Donc « Rx.NET »
Le problème du réassemblage des trames
Focus IoT sur Hager Services + Sigfox
“Rx done right”
“ReactiveX is a combination of the best ideas
from the Observer pattern (Gang of Four),
the Iterator pattern, and functional programming”
http://reactivex.io/23
Similaire à Linq mais streams asynchrones + opérateurs pour gérer le temps
Linq
Rx : filter, select, transform, combine, and
compose Observables, soit 453
opérateurs = combinaisons infinies
http://reactivex.io/documentation/operators.html24
I want to evaluate the entire sequence of items emitted by an Observable
and emit a single boolean indicating if all of the items pass some test: All
and emit a single boolean indicating if the Observable emitted any item (that passes some test):
Contains and emit a single boolean indicating if the Observable emitted no items: IsEmpty
and emit a single boolean indicating if the sequence is identical
to one emitted by a second Observable: SequenceEqual
and emit the average of all of their values : Average
and emit the sum of all of their values : Sum
and emit a number indicating how many items were in the sequence: Count
and emit the item with the maximum value : Max
and emit the item with the minimum value : Min
by applying an aggregation function to each item in turn and emitting the result: Scan
Le problème du réassemblage des trames
Rx : Autres possibilités de transformations
http://reactivex.io/documentation/operators/groupby.html25
“Rx done right”
26
Event Hub
Redis Cache ??
« Un pattern
Observateur »
“Rx done right”
27
« Un pattern Observateur
modifié »
Event Hub
Redis Cache ??
Le problème du réassemblage des trames
Opérateur de transformation “GroupBy”: Observable  set of Observables
http://reactivex.io/documentation/operators/groupby.html28
• Comment s’y retrouver avec toutes ces données ?
• Fouille de données, notamment avant de pouvoir réaliser des
algorithmes de Machine Learning
Que faire avec toutes ces données ?
Retour d'expérience "large IoT projects", Focus sur HagerServices
Analyse exploratoire
des données
Fournir & améliorer la performance
opérationnelle grâce à l’exploitation fine
des informations délivrées quotidiennement
BigTime Series : Exemple “eaux de Paris”
Microsoft-referenced architecture: Stream Analytics remplacé par Rx
Architecture candidate
Sources : https://azure.microsoft.com/en-us/documentation/articles/iot-suite-what-are-preconfigured-solutions/
Event Hub
Storage
Web/Mobile App
IoT Hub Web Jobs
Devices DocumentDB
SQL
Database
Redis
Cache
Web Jobs
Back-end
systems
and
processes
• Reactive Extensions (Rx.Net)
Témoignage Simon ANDRE, IoT Cloud Manager :
- « Traitement lourds ‘temps réels’ devenus possibles ;
trier/réassembler Trames »
- « Usage intensif des custom middleware côté API »
- « Pour les Tests Unitaires, on est à 100% de couverture »
Architecture candidate
Retour d'expérience "large IoT projects", Focus sur HagerServices
Event Hub
Retour d'expérience "large IoT projects", Focus sur HagerServices
Architecture candidate
Event Hub
– Approche microservices : une partition par usage
• Alarmes
• Appairage
• Télémétrie
– Partitions consommées par des WebJobs
– Les WebJobs prennent en charge le traitement des
messages et leur stockage en base de données
Event Hub
• Architecture micro-services
– Traitement différencié des trames en fonction
• Du produit
• De leur priorité (alarmes avant les trames de fil de l’eau)
– Faciliter l’intégration de nouveaux
produits, de nouveaux services
Architecture candidate
Sources : https://github.com/Azure-Samples/service-fabric-dotnet-iot
https://azure.microsoft.com/en-us/documentation/articles/service-fabric-overview-microservices
https://azure.microsoft.com/fr-fr/documentation/samples/service-fabric-dotnet-iot/
Retour d'expérience "large IoT projects", Focus sur HagerServices
Event Hub
Retour d'expérience "large IoT projects", Focus sur HagerServices
Architecture candidate
PaaS: Azure SQL Database
– Sharding géré avec Elastic Database client library
– Un « shard » par produit
Azure DocumentDB
– Non retenu car choix fait il y a 1 an et demi
– Solution aujourd’hui en production chez nos clients
Responsable Stratégie Cloud chez VISEO
Vincent Thavonekham,
MVP Azure et Microsoft Regional Director
@vThavo
RETOUR D'EXPÉRIENCE "LARGE IOT PROJECTS"
FOCUS SUR LE PROJET IoT : HAGER SERVICES + SIGFOX
05 et 06 avril 2017
SALON DU SIDO 2017
v1
1 sur 36

Contenu connexe

Tendances(20)

Biztalk summit - IOTBiztalk summit - IOT
Biztalk summit - IOT
Cellenza1.4K vues
VSD Paris 2018: Vertical Use Case - Manufacturing VSD Paris 2018: Vertical Use Case - Manufacturing
VSD Paris 2018: Vertical Use Case - Manufacturing
Veritas Technologies LLC501 vues

Similaire à Sido 2017 : Vincent Thavonekham, MVP azure et Regional Director, VISEO, Retour Expérience Hager Sigfox

IoT AcadémieIoT Académie
IoT Académieline-up.io
159 vues25 diapositives

Similaire à Sido 2017 : Vincent Thavonekham, MVP azure et Regional Director, VISEO, Retour Expérience Hager Sigfox(20)

BigData on change d'ère ! BigData on change d'ère !
BigData on change d'ère !
Excelerate Systems2.2K vues
IoT AcadémieIoT Académie
IoT Académie
line-up.io159 vues
Introduction à Neo4jIntroduction à Neo4j
Introduction à Neo4j
Neo4j22 vues
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows Azure
Jason De Oliveira1.3K vues

Sido 2017 : Vincent Thavonekham, MVP azure et Regional Director, VISEO, Retour Expérience Hager Sigfox

  • 1. Responsable Stratégie Cloud chez VISEO Vincent Thavonekham, MVP Azure et Microsoft Regional Director @vThavo Deux talks au village Microsoft RETOUR D'EXPÉRIENCE "LARGE IOT PROJECTS" FOCUS PROJET IoT : HAGER SERVICES et SIGFOX
  • 2. Responsable Stratégie Cloud chez VISEO Vincent Thavonekham, MVP Azure et Microsoft Regional Director @vThavo RETOUR D'EXPÉRIENCE "LARGE IOT PROJECTS" FOCUS SUR LE PROJET IoT : HAGER SERVICES + SIGFOX 05 et 06 avril 2017 SALON DU SIDO 2017, Village Microsoft
  • 3. Hager souhaitait réaliser une plateforme générique IoT sur Azure pour tous les besoins actuels et futurs. L’existant ne pouvant plus traiter ni la masse de données, ni les traitements « near-temps réels ». Le premier projet s’est basé sur des capteurs connectés au réseau Sigfox. Simon ANDRE, IoT Cloud Manager Besoin et problématique
  • 4. Simon ANDRE, IoT Cloud Manager Solution en Production sur Azure IoT « Timing très court … nous devions faire des choix pragmatiques … » « Nous sommes très satisfaits des performances » « 2015: Connecteur SigfoxAzure IoT : Quelques ajustements » « ASP.Net Core 1.0 Web Apps = Globalement un bon choix » Focus IoT sur Hager Services + Sigfox
  • 5. 1. Bien respecter les « Best Practices » IoT pour éviter les échecs – Penser idéation, valeur métier, … (cf « Agile IoT ») 2. Le projet ne s’arrête pas à la fin des développements ! – Ne pas se concentrer uniquement sur le projet « informatique » – Budget Qualité / Prod : PRA, ITIL v3, « vrai » DevOps à terme – Principe de précaution de la Loi de Murphy : « Tout ce qui est susceptible de mal tourner tournera nécessairement mal. ». Prévoir les « Single point of Failure » (SPOF) 3. Pilotage d’un projet IoT : pas uniquement les Dev et la R&D – C’est un projet de transformation de l’entreprise : Implication Direction 4. ROI : Succès grâce à une avance et une « extensibilité » technologique – Lire, s’ouvrir, travailler avec Microsoft Corp, … IoT and BigData : IoT Azure at scale - Featuring Hager Services and AgileIoT CE QUE NOUS AVONS APPRIS
  • 6. Selon Cédric Villani, Pr Maths, Médaille Fields « Une idée, cela peut changer le monde. Mais comment la trouver? » Cédric Villani • La documentation • La motivation • L’environnement • Les échanges • Les contraintes • La chance • La persévérance Début de l’aventure IoT: « Naissance des idées » Focus IoT sur Hager Services + Sigfox
  • 7. 7
  • 8. • Croisement des informations sur trois axes Des méthodologies et architectures éprouvées IoT and BigData : IoT Azure at scale - Featuring Hager Services and Agile IoT Provenance de ces retours d’expériences IoT
  • 10. The Agile IoT Funnel 1 Philosophy 4 Principles 5 Practices 2 Methodologies… for now!
  • 11. Agile IoT Duttile Poster Prototype Phase (timing: typically, 2 -4 weeks), it’s the first phase of the process. There’s the Vision definition , Fast Prototypization and Product Backlog definition using a specific planning phase; Engineering Phase (timing: time needed for reaching the Value). In this step, the solution is engineerized and developed. It’s, as one could deduct, the most important and complex phase of the whole process; Workout Phase (timing: Typically, 1-2 weeks). It’s the last phase, focalized onto the Deployment, Support and the Continuous Improvement of the product.
  • 12. Agile IoT Fast Prototyping Energy: focused on the energetic-based aspects as a function of the needs of the operational continuity of smart devices; Hardware : focused on the validation of the hardware through one or more Evaluation Kits (EVK). Code: focused on the prototyping of the firmware of the devices and t he services made for acquiring the main data/events. Data Flow: focused on the aspects related to the gathering, cleaning-up and managing of the Raw Data that comes from the devic es. Cloud: focused on the Cloud aspects of the solution, as a data/event management platform. Security: focused on the verification of the security aspects, which affect the solution as well as the development. Delivery Prototyping: focused on the deploy of the elements of the s olution, speaking about both hardware items and services ones. Legal: focused on the analysis of the law and regulations, national and international, which the solution must consider in order to become a marketable product.
  • 13. Retours sur un projet Azure IoT en particulier Capteurs connectés
  • 14. BESOIN HAGER SERVICES: Capteurs incendie « connectés » – Directeur du projet : Simon ANDRE – Equipe de 6 personnes – Architecture fortement inspirée des architectures dites « Lambda » pour de l’IoT / Big Data Témoignage client : Hager Services Focus IoT sur Hager Services + Sigfox
  • 15. • Exigence Sigfox – Taille des trames Sigfox : 12 octets – 140 messages / 24h / device – 10 minutes entre deux trames • Par sécurité: nous attendions 20 min entre 2 trames Témoignage client : Hager Services Focus IoT sur Hager Services + Sigfox
  • 16. • Exigence Hager – Plate-forme IoT « générique » • Démarrage avec les détecteurs d’incendie • Mais plateforme ouverte permettant d’intégrer de nouveaux produits, nouveaux services Témoignage client : Hager Services Retour d'expérience "large IoT projects", Focus sur HagerServices
  • 17. PLATFORM COMPLEXITY VISEO HELPS EASE THE PAIN TO CREATE THE COLLECTING INFRASTRUCTURE Ready to use infrastructure  levering our knowledges Azure IoT Suite Platform in less than 10 minutes Easy set up for PoC & Prototypes Azure Pick and choose what we need for the perfect solution for our client
  • 18. EXTENSION OF NODE-RED AND OPEN-SOURCED OPEN SOURCE AND AZURE BASED
  • 19. Simplifiée : • Azure WebJob + WebApp basés sur ASP.Net Core 1.0 • Architecture micro-services asynchrone et event-based • DAL basée sur micro-ORM Dapper Architecture : forte volumétrie + traitements « near-temps réel » Témoignage client : Hager Services Focus IoT sur Hager Services + Sigfox Event Hub Utilisateurs Assemblage Routage Traitement et stockage
  • 20. Le problème de découpage côté « Device » 20 Enterprise integration patterns • Slitter côté Device Hager Message Hager volumineux Message Hager découpé pour transport via Sigfox (140 packets 12 bytes)
  • 21. Le problème du réassemblage des trames 21
  • 22. Le choix final s’est porté sur Reactive Extensions. Sur les 18 langages, choix de C# Donc « Rx.NET » Le problème du réassemblage des trames Focus IoT sur Hager Services + Sigfox
  • 23. “Rx done right” “ReactiveX is a combination of the best ideas from the Observer pattern (Gang of Four), the Iterator pattern, and functional programming” http://reactivex.io/23 Similaire à Linq mais streams asynchrones + opérateurs pour gérer le temps Linq
  • 24. Rx : filter, select, transform, combine, and compose Observables, soit 453 opérateurs = combinaisons infinies http://reactivex.io/documentation/operators.html24 I want to evaluate the entire sequence of items emitted by an Observable and emit a single boolean indicating if all of the items pass some test: All and emit a single boolean indicating if the Observable emitted any item (that passes some test): Contains and emit a single boolean indicating if the Observable emitted no items: IsEmpty and emit a single boolean indicating if the sequence is identical to one emitted by a second Observable: SequenceEqual and emit the average of all of their values : Average and emit the sum of all of their values : Sum and emit a number indicating how many items were in the sequence: Count and emit the item with the maximum value : Max and emit the item with the minimum value : Min by applying an aggregation function to each item in turn and emitting the result: Scan
  • 25. Le problème du réassemblage des trames Rx : Autres possibilités de transformations http://reactivex.io/documentation/operators/groupby.html25
  • 26. “Rx done right” 26 Event Hub Redis Cache ?? « Un pattern Observateur »
  • 27. “Rx done right” 27 « Un pattern Observateur modifié » Event Hub Redis Cache ??
  • 28. Le problème du réassemblage des trames Opérateur de transformation “GroupBy”: Observable  set of Observables http://reactivex.io/documentation/operators/groupby.html28
  • 29. • Comment s’y retrouver avec toutes ces données ? • Fouille de données, notamment avant de pouvoir réaliser des algorithmes de Machine Learning Que faire avec toutes ces données ? Retour d'expérience "large IoT projects", Focus sur HagerServices
  • 30. Analyse exploratoire des données Fournir & améliorer la performance opérationnelle grâce à l’exploitation fine des informations délivrées quotidiennement BigTime Series : Exemple “eaux de Paris”
  • 31. Microsoft-referenced architecture: Stream Analytics remplacé par Rx Architecture candidate Sources : https://azure.microsoft.com/en-us/documentation/articles/iot-suite-what-are-preconfigured-solutions/ Event Hub Storage Web/Mobile App IoT Hub Web Jobs Devices DocumentDB SQL Database Redis Cache Web Jobs Back-end systems and processes
  • 32. • Reactive Extensions (Rx.Net) Témoignage Simon ANDRE, IoT Cloud Manager : - « Traitement lourds ‘temps réels’ devenus possibles ; trier/réassembler Trames » - « Usage intensif des custom middleware côté API » - « Pour les Tests Unitaires, on est à 100% de couverture » Architecture candidate Retour d'expérience "large IoT projects", Focus sur HagerServices Event Hub
  • 33. Retour d'expérience "large IoT projects", Focus sur HagerServices Architecture candidate Event Hub – Approche microservices : une partition par usage • Alarmes • Appairage • Télémétrie – Partitions consommées par des WebJobs – Les WebJobs prennent en charge le traitement des messages et leur stockage en base de données Event Hub
  • 34. • Architecture micro-services – Traitement différencié des trames en fonction • Du produit • De leur priorité (alarmes avant les trames de fil de l’eau) – Faciliter l’intégration de nouveaux produits, de nouveaux services Architecture candidate Sources : https://github.com/Azure-Samples/service-fabric-dotnet-iot https://azure.microsoft.com/en-us/documentation/articles/service-fabric-overview-microservices https://azure.microsoft.com/fr-fr/documentation/samples/service-fabric-dotnet-iot/ Retour d'expérience "large IoT projects", Focus sur HagerServices Event Hub
  • 35. Retour d'expérience "large IoT projects", Focus sur HagerServices Architecture candidate PaaS: Azure SQL Database – Sharding géré avec Elastic Database client library – Un « shard » par produit Azure DocumentDB – Non retenu car choix fait il y a 1 an et demi – Solution aujourd’hui en production chez nos clients
  • 36. Responsable Stratégie Cloud chez VISEO Vincent Thavonekham, MVP Azure et Microsoft Regional Director @vThavo RETOUR D'EXPÉRIENCE "LARGE IOT PROJECTS" FOCUS SUR LE PROJET IoT : HAGER SERVICES + SIGFOX 05 et 06 avril 2017 SALON DU SIDO 2017 v1