SQLSaturday Paris 2016
Le chemin du CEP vers le Cloud
De StreamInsight à Azure Stream Analytics
Marius Zaharia
SQLSaturday Paris 2016
Merci à nos sponsors
SQLSaturday Paris 2016
Votre speaker : MARIUS ZAHARIA
 Senior Cloud Architect, Cellenza
 MVP Azure
 Azure Advisor
 P-S...
SQLSaturday Paris 2016
De StreamInsight à Azure Stream Analytics
 Le traitement des évènements
 Besoins / scénarii type
...
SQLSaturday Paris 2016
Le traitement des évènements (rappel ?)
 Traitement des évènements : méthode de suivi et analyse d...
SQLSaturday Paris 2016
Besoins / scénarii type
 Monitoring de réseau
 Surveillance intelligente
 Gestion et analyse des...
SQLSaturday Paris 2016
Moteurs CEP : la solution
 Moteurs de Complex Event Processing
 TIBCO BusinessEvents / StreamBase...
SQLSaturday Paris 2016
StreamInsight : le (premier) CEP de Microsoft
 Résolution du problème – en manière spécifique:
 M...
SQLSaturday Paris 2016
 StreamInsight
SQLSaturday Paris 2016
Azure Stream Analytics : la réponse Cloud de Microsoft
 Evolution de la résolution:
 Application ...
SQLSaturday Paris 2016
Azure Stream Analytics – portail(s)
SQLSaturday Paris 2016
 Azure Stream Analytics – dans le nouveau portail !
SQLSaturday Paris 2016
Principes de traitement temporal
 Temps applicatif vs temps de l’exécution
 Intervalles (fenêtres...
SQLSaturday Paris 2016
Principes de requetage (focus sur Azure SA)
 Types de données:
 simples (bigint, nvarchar, float,...
SQLSaturday Paris 2016
Référence des constructs de langage (Azure SA)
Commandes
• SELECT
• FROM
• WHERE
• GROUP BY
• HAVIN...
SQLSaturday Paris 2016
Modèles / patterns de requêtes
 Trouver le premier évènement dans un intervalle
SQLSaturday Paris 2016
Modèles / patterns de requêtes
 Trouver le dernier
évènement dans un
intervalle
SQLSaturday Paris 2016
Modèles / patterns de requêtes
 Détecter l’absence d’évènements
SQLSaturday Paris 2016
Modèles / patterns de requêtes
 Envoi de sorties multiples
SQLSaturday Paris 2016
Modèles / patterns de requêtes
 Comptage
de valeurs uniques
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
 Requetâge: LINQ (.NET) vs SQL-like
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
• Intervalles temporels
StreamInsight Stream Analyt...
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
• Entrées et Sorties
 StreamInsight: adaptateurs
c...
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
• Exécution / déploiement
 StreamInsight:
 Unité:...
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
• Extensibilité
 StreamInsight:
 Adaptateurs cust...
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
• Evolutivité
 StreamInsight:
 Produit « mature »...
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
• Scalabilité, disponibilité
 StreamInsight:
 Emb...
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
• Cout d’utilisation
 Licence SQL Server
 StreamI...
SQLSaturday Paris 2016
StreamInsight et Stream Analytics : face à face
• Monitoring et dépannage
 StreamInsight:
 Monito...
SQLSaturday Paris 2016
Conclusions – StreamInsight vs Stream Analytics
 CEP : certainement un concept plein d’avenir (et ...
SQLSaturday Paris 2016
Questions ?
SQLSaturday Paris 2016
Merci à nos volontaires
SQLSaturday Paris 2016
Et en plus vous
pouvez gagner des
cadeaux !
Donnez votre avis sur les sessions :
http://GUSS.pro/sq...
SQLSaturday Paris 2016
Merci !
Prochain SlideShare
Chargement dans…5
×

Sql Saturday Paris 2016 - De StreamInsight à Azure Stream Analytics

45 vues

Publié le

Le chemin du CEP (Complex Event Processing) vers le Cloud - de StreamInsight à Azure Stream Analytics. Concepte de traitement d'évènements en temps réel et CEP as a Service dans Azure.

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
45
Sur SlideShare
0
Issues des intégrations
0
Intégrations
1
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Sql Saturday Paris 2016 - De StreamInsight à Azure Stream Analytics

  1. 1. SQLSaturday Paris 2016 Le chemin du CEP vers le Cloud De StreamInsight à Azure Stream Analytics Marius Zaharia
  2. 2. SQLSaturday Paris 2016 Merci à nos sponsors
  3. 3. SQLSaturday Paris 2016 Votre speaker : MARIUS ZAHARIA  Senior Cloud Architect, Cellenza  MVP Azure  Azure Advisor  P-SELLER Azure, Microsoft  Community Manager, AZUG FR
  4. 4. SQLSaturday Paris 2016 De StreamInsight à Azure Stream Analytics  Le traitement des évènements  Besoins / scénarii type  Moteurs CEP : la solution  StreamInsight : le (premier) CEP de Microsoft  Azure Stream Analytics : la réponse Cloud  Principes de traitement temporal  Modèles / patterns de requêtes  StreamInsight et Stream Analytics : face à face  Conclusion
  5. 5. SQLSaturday Paris 2016 Le traitement des évènements (rappel ?)  Traitement des évènements : méthode de suivi et analyse des flux d’information par rapport à des repères (évènements) dans le temps.  Traitement complexe des évènements (Complex Event Processing - CEP) : traitement en temps réel  De sources singulières ou multiples d’évènements  Possiblement par rapport à des données de référence  Pour identifier des modèles de répétition complexes
  6. 6. SQLSaturday Paris 2016 Besoins / scénarii type  Monitoring de réseau  Surveillance intelligente  Gestion et analyse des risques  Commerce électronique  Suivi des ventes  Détection des fraudes  Routage de commandes intelligent  Analyse des coûts de transaction  Objets connectés (des capteurs aux voitures et avions)  Gestion des stocks  Analyse des flux web  Alertes financières (portefeuille)  Analyse de prix  Gestion des données de marché  Trading algorithmique  Enrichissement de données
  7. 7. SQLSaturday Paris 2016 Moteurs CEP : la solution  Moteurs de Complex Event Processing  TIBCO BusinessEvents / StreamBase  Oracle CEP  WebSphere Business Events  Sybase / SAP ESP  Fujitsu  … Microsoft ?
  8. 8. SQLSaturday Paris 2016 StreamInsight : le (premier) CEP de Microsoft  Résolution du problème – en manière spécifique:  Moteur d’exécution: embarqué (dans l’application) ou serveur « standalone »  Principes: application / adaptateurs in/out / requête / event / « payload »  Application CEP :  Développement en .NET  Requêtes : LINQ (en .NET)  Adaptateurs développés sur mesure; exposés en Web Services WCF var payloadByRegion = from i in inputStream group i by i.Region into byRegion from c in byRegion.HoppingWindow( TimeSpan.FromMinutes(1), TimeSpan.FromSeconds(2), HoppingWindowOutputPolicy.ClipToWin dowEnd) select new { Region = byRegion.Key, Sum = c.Sum(p => p.Value) };
  9. 9. SQLSaturday Paris 2016  StreamInsight
  10. 10. SQLSaturday Paris 2016 Azure Stream Analytics : la réponse Cloud de Microsoft  Evolution de la résolution:  Application => Job Stream Analytics  Adaptateurs => Entrées et sorties standardisées:  Entrées: Event Hub, IoT Hub (flux), Blob Storage (flux et données de référence)  Sorties: SQL Database, DocumentDB, Topic ou Queue Service Bus, Blob ou Table Storage, PowerBI !  Formats entrée/sortie: JSON, CSV, (Apache) Avro  Requêtes: type « SQL »  Provisionnement et démarrage très rapide et facile  Scalabilité x1 – x50 (extensible à la demande)  Possibilité de tester des différentes étapes
  11. 11. SQLSaturday Paris 2016 Azure Stream Analytics – portail(s)
  12. 12. SQLSaturday Paris 2016  Azure Stream Analytics – dans le nouveau portail !
  13. 13. SQLSaturday Paris 2016 Principes de traitement temporal  Temps applicatif vs temps de l’exécution  Intervalles (fenêtres) de temps  « Tumbling »  « Hopping »  « Sliding »  « Snapshot »  « Count »  Agrégations (group by)  Remise en ordre des évènements désordonnés  Traitement des évènements tardive
  14. 14. SQLSaturday Paris 2016 Principes de requetage (focus sur Azure SA)  Types de données:  simples (bigint, nvarchar, float, datetime, …)  Complexes : types tableau (array) ou enregistrement (record)  Eléments de langage: SELECT, FROM, INTO, JOIN, GROUP, …  Certains sont plus spécifiques : APPLY, Reference Data JOIN  Gestion temporelle: TIMESTAMP BY, décalage de temps, remise en ordre  Fonctions (incluses): Scalar (Conversion, Date & Time, Mathematical, String), Record, Analytic, Aggregate, Geospatial  Autres fonctions pourront être créées sur mesure
  15. 15. SQLSaturday Paris 2016 Référence des constructs de langage (Azure SA) Commandes • SELECT • FROM • WHERE • GROUP BY • HAVING • CASE • JOIN • UNION Extensions de type fenêtre de temps • Tumbling Window • Hopping Window • Sliding Window • Duration Fonctions Agrégates • SUM • COUNT • AVG • MIN • MAX Fonctions pour la mise à l’échelle • WITH • PARTITION BY Fonctions date / temps • DATENAME • DATEPART • DAY • MONTH • YEAR • DATETIMEFROMPARTS • DATEDIFF • DATADD Fonctions chaîne • LEN • CONCAT • CHARINDEX • SUBSTRING • PATINDEX Fonctions Statistiques • VAR • VARP • STDEV • STDEVP
  16. 16. SQLSaturday Paris 2016 Modèles / patterns de requêtes  Trouver le premier évènement dans un intervalle
  17. 17. SQLSaturday Paris 2016 Modèles / patterns de requêtes  Trouver le dernier évènement dans un intervalle
  18. 18. SQLSaturday Paris 2016 Modèles / patterns de requêtes  Détecter l’absence d’évènements
  19. 19. SQLSaturday Paris 2016 Modèles / patterns de requêtes  Envoi de sorties multiples
  20. 20. SQLSaturday Paris 2016 Modèles / patterns de requêtes  Comptage de valeurs uniques
  21. 21. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face  Requetâge: LINQ (.NET) vs SQL-like
  22. 22. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face • Intervalles temporels StreamInsight Stream Analytics Hopping vs Hopping Tumbling vs Tumbling - vs Sliding Snapshot vs - Count vs -
  23. 23. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face • Entrées et Sorties  StreamInsight: adaptateurs customisés.  On peut accepter tout type d’entrée et format  Nécessite du développement spécifique  Stream Analytics: multitude de types d’entrées et sorties, tous prêts à l’emploi  Format prédéfini: CSV, JSON, Arvo  Moins flexible sinon: pas de connectivité directement
  24. 24. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face • Exécution / déploiement  StreamInsight:  Unité:  « application StreamInsight »  « process »  Moteur embarqué dans une application .NET, ou  Serveur autonome (dans une machine) accessible via web service WCF  Installation: via installer StreamInsight  Déploiement: applicatif .NET (binaries, service, endpoints, …)  Stream Analytics:  Unité: « job »  Moteur hébergé dans Azure.  Service en mode PaaS; pas de visibilité sur le fonctionnement interne  Installation: rien à faire  Déploiement: service Azure (portail, PowerShell/CLI, REST API)
  25. 25. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face • Extensibilité  StreamInsight:  Adaptateurs customisés  Format entrée/sortie customisable  Encoding customisé  User Defined Aggregates /  Fonctions customisées  Stream Analytics:  Pas d’entrées / sorties customisées  Format fixe (JSON, CSV, Avro)  Encoding: UTF-8  Pas de UDF ou équivalent  Fonctions custom Machine Learning possibles (en preview)
  26. 26. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face • Evolutivité  StreamInsight:  Produit « mature »  Evolutions mineures uniquement  Stream Analytics:  General availability  Plein développement  Très évolutif  Mises à jour en rythme Cloud
  27. 27. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face • Scalabilité, disponibilité  StreamInsight:  Embarqué: mono-fil  Serveur autonome: parallélisme en multi-fil possible (y compris pour la même requête); gestion manuelle  Scalabilité: distribution multi- machine possible  HA: possible si déployé en mode distribué  Stream Analytics:  Fonctionne potentiellement en parallélisme; gestion automatique  Scalable via Unités de streaming: 1-48  HA: 99,9%
  28. 28. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face • Cout d’utilisation  Licence SQL Server  StreamInsight Standard  StreamInsight Premium = SQL DataCenter  A la consommation  Per unité de streaming  Per volume de données traitées
  29. 29. SQLSaturday Paris 2016 StreamInsight et Stream Analytics : face à face • Monitoring et dépannage  StreamInsight:  Monitoring et compteurs de performance Windows;  compteurs et alertes customisés (développer)  tooling spécifique dédié (Flow Debugger);  Stream Analytics  Journaux (logs) – Portail Azure + API  Test des requêtes (upload fichiers)  Alertes configurables
  30. 30. SQLSaturday Paris 2016 Conclusions – StreamInsight vs Stream Analytics  CEP : certainement un concept plein d’avenir (et de présent !)  StreamInsight : bon pour des applications autonomes, voire embarquées  Nécessite un investissement de développement  Stream Analytics : partout ou le cloud est une solution viable  Onboarding et setup plus rapide  Scalable et flexible  Paiement à l’utilisation, cout d’entrée accesible
  31. 31. SQLSaturday Paris 2016 Questions ?
  32. 32. SQLSaturday Paris 2016 Merci à nos volontaires
  33. 33. SQLSaturday Paris 2016 Et en plus vous pouvez gagner des cadeaux ! Donnez votre avis sur les sessions : http://GUSS.pro/sqlsat
  34. 34. SQLSaturday Paris 2016 Merci !

×