Plan 1/9/2013. Génération et exploitation de données. CEP et applications. Flux de données et notifications. Traitement des flux Implémentation



Documents pareils
Les Entrepôts de Données

ETUDE ET IMPLÉMENTATION D UNE CACHE L2 POUR MOBICENTS JSLEE

IdR Trading et Microstructure CA Cheuvreux. Charles-Albert Lehalle

Bases de Données Avancées

TP Bases de données réparties

Manipulation de données avec SAS Enterprise Guide et modélisation prédictive avec SAS Enterprise Miner

Langage SQL : créer et interroger une base

CONFERENCE TECHNOM AIDE IBM

Management des Systèmes d Information

Qu est ce qu un réseau social. CNAM Séminaire de Statistiques Appliquées 13/11/2013. F.Soulié Fogelman 1. Utilisation des réseaux sociaux pour le

Ecole des Hautes Etudes Commerciales HEC Alger. par Amina GACEM. Module Informatique 1ière Année Master Sciences Commerciales

Filière Fouille de Données et Décisionnel FDD (Data Mining) Pierre Morizet-Mahoudeaux

ECR_DESCRIPTION CHAR(80), ECR_MONTANT NUMBER(10,2) NOT NULL, ECR_SENS CHAR(1) NOT NULL) ;

Dossier I Découverte de Base d Open Office

Thank you for choosing the Mobile Broadband USB Stick. With your USB Stick, you can access a wireless network at high speed.

Introduction à la B.I. Avec SQL Server 2008

Comment rendre un site d e-commerce intelligent

20 ans du Master SIAD de Toulouse - BigData par l exemple - Julien DULOUT - 22 mars ans du SIAD -"Big Data par l'exemple" -Julien DULOUT

Prestations de conseil en SRM (Storage Ressource Management)

DESCRIPTION DES PRODUITS ET MÉTRIQUES

BIRT (Business Intelligence and Reporting Tools)

SQL Serveur Programme de formation. France Belgique Suisse - Canada. Formez vos salariés pour optimiser la productivité de votre entreprise

Systèmes de Gestion de Bases de Données

SQL SERVER 2008, BUSINESS INTELLIGENCE

et les Systèmes Multidimensionnels

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition

SÉRIE NOUVELLES ARCHITECTURES

Once the installation is complete, you can delete the temporary Zip files..

QUI SOMMES-NOUS? Cette solution s adresse aussi bien aux PME/PMI qu aux grands groupes, disposant ou non d une structure de veille dédiée.

BIG DATA. Veille technologique. Malek Hamouda Nina Lachia Léo Valette. Commanditaire : Thomas Milon. Encadré: Philippe Vismara

BI = Business Intelligence Master Data-ScienceCours 3 - Data

BIG Data et R: opportunités et perspectives

Enregistrer votre dispositif

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie

Gérer son Google Drive pour gérer ses informations : le tutoriel

Entrepôts de données. NEGRE Elsa Université Paris-Dauphine

ETL Extract - Transform - Load

Urbanisation des SI-NFE107

Smart Notification Management

Tutoriel : utilisation de l outil de veille TaDaweb

SAP Runs SAP Reporting Opérationnel & BI avec HANA et SAP Analytics. Pierre Combe, Enterprise Analytics Juin, 2015

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

Chapitre IX. L intégration de données. Les entrepôts de données (Data Warehouses) Motivation. Le problème

Big Data -Comment exploiter les données et les transformer en prise de décisions?

Thank you for choosing the Mobile Broadband USB Stick. With your USB Stick, you can access a wireless network at high speed.

S8 - INFORMATIQUE COMMERCIALE

Le langage SQL Rappels

Bases de données élémentaires Maude Manouvrier

Les différents types de relation entre les tables

L Art d être Numérique. Thierry Pierre Directeur Business Development SAP France

Introduction. Informatique décisionnelle et data mining. Data mining (fouille de données) Cours/TP partagés. Information du cours

Cartographie des solutions BigData

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

Sérère Sine Network Diokodial : Bienvenue sur le Réseau Social Sérère Sine

Du 10 Fév. au 14 Mars 2014

données en connaissance et en actions?

BI2 : Un profil UML pour les Indicateurs Décisionnels

Méthodologie de conceptualisation BI

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Laboratoire 4 Développement d un système intelligent

SQL Server 2012 Implémentation d'une solution de Business Intelligence (Sql Server, Analysis Services...)

Bases de Données. Plan

Journée SITG, Genève 15 octobre Nicolas Lachance-Bernard M.ATDR Doctorant, Laboratoire de systèmes d information géographique

Big Data et Graphes : Quelques pistes de recherche

Business Intelligence

Oracle Maximum Availability Architecture

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Grégoire de Lassence. Copyright 2006, SAS Institute Inc. All rights reserved.

Bases de données cours 1

OpenPaaS Le réseau social d'entreprise

Catherine Chochoy. Alain Maneville. I/T Specialist, IBM Information Management on System z, Software Group

Whitepaper. Méthodologie de création de rapports personnalisés SQL Server Reporting Services

BUSINESS INTELLIGENCE

Didacticiel Études de cas. Description succincte de Pentaho Data Integration Community Edition (Kettle).

Les enjeux du Big Data Innovation et opportunités de l'internet industriel. Datasio 2013

BASES DE DONNÉES. CNAM Centre associé de Clermont-Ferrand Cycle A Année J. Darmont I. INTRODUCTION II. LES SYSTÈMES HIÉRARCHIQUES

Améliorer les performances du site par l'utilisation de techniques de Web Mining

DEMARRER UN PROJET BIGDATA EN QUELQUES MINUTES GRACE AU CLOUD

Principe, applications et limites

Plan. Ce qu est le datawarehouse? Un modèle multidimensionnel. Architecture d un datawarehouse. Implémentation d un datawarehouse

Ici, le titre de la. Tableaux de bords de conférence

Monétisation des données : comment identifier de nouvelles sources de revenus au sein des Big data?

Outils de gestion de temps - Chronomètres

TABLE DES MATIÈRES CHAPITRE I. INTRODUCTION À LA VEILLE... 3

Surveiller les applications et les services grâce à la surveillance réseau

Comment Utiliser les Versions, les Modification, les Comparaisons, Dans les Documents

Entrepôt de données 1. Introduction

GUIDE D UTILISATION DU BACKOFFICE

<Insert Picture Here> La GRC en temps de crise, difficile équilibre entre sentiment de sécurité et réduction des coûts

Data Mining. Vincent Augusto École Nationale Supérieure des Mines de Saint-Étienne. Data Mining. V. Augusto.

Lamia Oukid, Ounas Asfari, Fadila Bentayeb, Nadjia Benblidia, Omar Boussaid. 14 Juin 2013

NOTICE D UTILISATION

Guide d utilisation pour W.access - Client

FORUM NTIC BIG DATA, OPEN DATA Big Data: les challenges, les défis

UTILISER LA MESSAGERIE

To PIM or not to PIM? Managing your Product Catalog

BIG DATA : une vraie révolution industrielle (1) Les fortes évolutions liées à la digitalisation

Maîtriser son identité numérique. Michel Futtersack, Faculté de Droit, Université Paris Descartes

Transcription:

Complex Event Processing Traitement de flux de données en temps réel Romain Colle R&D Project Manager Quartet FS Plan Génération et exploitation de données CEP et applications Flux de données et notifications Traitement des flux Implémentation Conclusion 1

Plan Génération et exploitation de données CEP et applications Flux de données et notifications Traitement des flux Implémentation Conclusion Création de données 5 exabytes de données (5*10 18 octets) créées par jour Générées par les utilisateurs (youtube, twitter,...) Générées par des actions (vente e-commerce,...) Générées automatiquement (RFID, GPS,...) Comment les exploiter au mieux? 2

Exploitation des données BI Business Intelligence (informatique décisionelle): aide à la décision en utilisant les données de l entreprise Basée sur des outils d OLAP (cf cours précédent) Permet de prendre des décisions «informées»: Connaissance de son stock Connaissance de la situation logistique Connaissance de la valeur de mon portefeuille d actions Exploitation des données Data Mining Data mining est l extraction de connaissances à partir de larges volumes de données Informatique + statistique Utilisation «prédictive» pour prévoir le futur grace au passé Applications Relation client Maintenance préventive Optimisation des ventes 3

Exploitation des données - CEP Le but est d analyser des flux de données et d en déduire des événements plus complexes Analyse des flux de données Détection et corrélation des événements importants Déduction d événements complexes Agir en conséquence Plan Génération et exploitation de données CEP et applications Flux de données et notifications Traitement des flux Implémentation Conclusion 4

Impossible d afficher l image. 1/9/2013 Complex Event Processing - How does it work? INPUT STREAM OUTPUT STREAM Alert New Event (message) Example: Filtering Correlations Basic calculations Speed of the car If speed > 50 km/h and Trajectory of the car Tyre pressure Trajectory change and Tyre pressure drops by 50% Action Airbag Exploitation des données - CEP Les déductions se font à l aide d un ensemble de transformations et traitements sur les flux entrants Filtrage / projection Aggrégation Jointure 5

Exploitation des données - CEP Traitement des données en temps réel, «au fil de l eau» Applications Trading algorithmique Détection de fraude (carte de crédit) Analyse des médias sociaux CEP Trading algorithmique High Frequency Trading (HFT) Prises de décisions complexes et passages d ordres avant toute réaction humaine Market making (sell/bid), arbitrage,... 2009: 73% des ordres par HFT sur les actions aux USA Facteur important du «flash crash» de 2010 6

CEP Online Gaming Surveillance des données générées par les utilisateurs Avatars, communications,... Gestion de l intérêt du joueur S adapter à sa progression, son niveau,... Surveillance de l activité en ligne Optimisation des publicités et promotions Optimisation des transactions en ligne CEP Détection de fraude Détection de paiements frauduleux Comparaison avec des années de données historiques Détection de transactions inhabituelles Détection de comportements frauduleux Le but est de prévenir la fraude alors qu elle est en train de se produire Traitement temps réel extrêmement performant 7

Plan Génération et exploitation de données CEP et applications Flux de données et notifications Traitement des flux Implémentation Conclusion Polling Flux de données - Réception Notify pull Push 8

Flux de données - Réception Polling Interroger le service toutes les N secondes pour récupérer la valeur courante ou les nouvelles données Très gourmant en ressources: la requête doit être réexécutée toutes les N secondes et comparée avec son résultat précédent Peut être amélioré si le service peut fournir un «diff» lors de chaque interrogation Notify-pull Flux de données - Réception Le client enregistre sa requête au niveau du service Le service notifie le client lorsque de nouvelles données sont disponibles Le client requête le serveur pour récupérer les nouvelles données Plus efficace que le polling, évites les aller-retours inutiles Pas toujours vrai si le serveur notifie le client lorsque de nouvelles données apparaissent «à côté» de la requête Très efficace si la quantité de nouvelles données récupérées lors de chaque requête est importante 9

Flux de données - Réception Push Le client enregistre sa requête au niveau du service Le service envoie au client les nouvelles données au fil de l eau Très efficace, évite tout aller-retour après la souscription Le serveur peut «batcher» les nouvelles données si la fréquence d apparition est trop élevée Plan Génération et exploitation de données CEP et applications Flux de données et notifications Traitement des flux Implémentation Conclusion 10

Traitement des flux Les données entrantes passent à travers un réseau d opérateurs Les données sortantes (s il y en a) correspondent au résultat du «complex processing» Modélisation et représentation par un système de «boites et flêches» (boxes and arrows) Traitement des flux Médias sociaux Analyse des tweets sur Apple et Samsung suite à la sortie des nouveaux IPhone et Galaxy S Recherche des mots apparaissant le plus souvent avec Apple et Samsung Filtrage des tweets Découpage des phrases en mots => Création de nouveaux flux Aggrégation de flux sur une fenêtre de temps 11

Traitement des flux Médias sociaux Filter Split Agg. Top 3 OUT Contains Apple On words Sum over 30mn Group by words Dupli cate Tweets Filter Split Agg. Top 3 OUT Contains Samsung On words Sum over 30mn Group by words Modélisation d un flux de données Un flux de données est une séquence de tuples t = (a 1,a 2,a 3,...,a n ) Le schéma du flux est la description des différents attributs des tuples: a 1,a 2,a 3,...,a n Les données du flux sont des éléments (tuples) ayant des valeurs pour chacun des attributs du flux 12

Modélisation d un flux de données Exemple: flux de ventes de voitures chez un concessionnaire Schéma: (date, marque, modèle, couleur, prix) Flux de données: t1 = (01/12/2012, Peugeot, 407, bleue, 20.000 ) t2 = (04/12/2012, Renault,Twingo, blanche, 5.000 ) t3 = (06/12/2012, Citroen, C5, noire, 35.000 )... Différents opérateurs d un moteur CEP Filter Applique des conditions sur les différents attributs d un tuple Le flux de sortie a le même schéma que le flux d entrée mains ne contient qu un sous-ensemble des tuples entrants Exemple t1 = (01/12/2012, Peugeot, 407, bleue, 20.000 ) t2 = (04/12/2012, Renault,Twingo, blanche, 5.000 ) t3 = (06/12/2012, Citroen, C5, noire, 35.000 ) t1 = (01/12/2012, Peugeot, 407, bleue, 20.000 ) t3 = (06/12/2012, Citroen, C5, noire, 35.000 ) Prix > 10.000 13

Différents opérateurs d un moteur CEP Projection Projette les tuples vers un sous-ensemble des attributs du flux entrant Le schéma du flux de sortie est un sous-ensemble des attributs du schéma du flux entrant Exemple t1 = (01/12/2012, Peugeot, 407, bleue, 20.000 ) t2 = (04/12/2012, Renault,Twingo, blanche, 5.000 ) t3 = (06/12/2012, Citroen, C5, noire, 35.000 ) t1 = (Peugeot, 407) t2 = (Renault,Twingo) t3 = (Citroen, C5) Projection = (Marque,Modèle) Différents opérateurs d un moteur CEP Sort Trie les tuples du flux entrant selon un ordre défini sur la valeur des attributs Le flux de sortie a le même schéma que le flux d entrée, mais l ordre des tuples est différent Exemple t1 = (01/12/2012, Peugeot, 407, bleue, 20.000 ) t2 = (04/12/2012, Renault,Twingo, blanche, 5.000 ) t3 = (06/12/2012, Citroen, C5, noire, 35.000 ) t1 = (04/12/2012, Renault,Twingo, blanche, 5.000 ) t2 = (01/12/2012, Peugeot, 407, bleue, 20.000 ) t3 = (06/12/2012, Citroen, C5, noire, 35.000 ) Sort by price 14

Différents opérateurs d un moteur CEP Sort Un tri ne peut se faire sur l ensemble des tuples d un flux Comment trier un flux infini d éléments? Stockage trop important pour un flux fini Doit être fait sur une fenêtre glissante de temps (e.g. 10 dernières minutes) d événements (e.g. 1.000 derniers tuples) Pour une fenêtre de taille n, les n+1 derniers éléments sont gardés dans un «buffer» en mémoire Ejecte et émet dans le flux sortant le plus petit élément du buffer lorsqu il devient plein Opérateur sort - Exemple D.J. Abadi et al.: Aurora: a new model and architecture for data stream management 15

Différents opérateurs d un moteur CEP Aggregate Application d une fonction d aggrégation (sum, min, max, avg,...) et d un «group by» sur le flux de tuples entrant Le schéma du flux de sortie contient les attributs du group by, ainsi que la valeur de l attribute aggrégé Exemple t1 = (01/12/2012, Peugeot, 407, noire, 20.000 ) t2 = (04/12/2012, Peugeot, 307,noire, 13.000 ) t3 = (06/12/2012, Citroen, C5, bleue, 35.000 ) t1 = (Peugeot, noire, 33.000 ) t2 = (Citroen, bleue, 35.000 ) Sum(price) group by make,color Différents opérateurs d un moteur CEP Aggregate Comme le tri, l aggrégation ne peut se faire sur l ensemble du flux L aggrégation se fait sur une fenêtre glissante Pour une fenêtre d une heure, les éléments reçus durant cette heure sont gardés en mémoire ainsi que les aggrégats pour chaque groupe existant Lorsque l heure est terminée, les aggrégats sont émis dans le flux de sortie et la mémoire est ré-initialisée 16

Opérateur aggregate - Exemple D.J. Abadi et al.: Aurora: a new model and architecture for data stream management Moteur CEP - Stockage des données Certaines fonctions ne nécessitent pas de stockage Filter Projection... Fenêtre glissante de temps/éléments pour les autres Sort Aggregate Join... 17

Moteur CEP - Stockage des données Implémentation d une fenêtre glissante LinkedList (Deque) Les éléments sont ajoutés à la fin de la liste Lorsque la liste est pleine, on enlève l élément du début: il est sorti de la fenêtre glissante Ces opérations sont en O(1) pour une liste chaînée Nécessite de maintenir la taille de la liste dans une variable pour être efficace (O(n) sinon) Moteur CEP - Stockage des données Implémentation d une fenêtre glissante Tableau «circulaire» de taille n Maintient d un index i pour la prochaine insertion Commence à 0 et augmente après chaque insertion Recommence à 0 à la fin du tableau Lorsqu un élément est inséré à la place d un autre, l ancien élément sort de la fenêtre glissante Dès que le tableau a été rempli une première fois 18

Moteur CEP - Stockage des données Somme courante sur une fenêtre de n éléments La fenêtre glissante est maintenue à l aide d une des techniques précedentes Lorsqu un élément est reçu, il est inséré dans la fenêtre et sa valeur est ajoutée à la somme courante Si l insertion a éjecté un ancien élément de la fenêtre, la valeur de cet ancien élément est soustraite à la somme courante Moteur CEP - Stockage des données Max courant sur une fenêtre de n éléments Implémentation naïve : garder les n derniers éléments en mémoire et recalculer le max lorsqu il sort de la fenêtre Peut mieux faire Garder les «sommets» décroissants de la fenêtre 19

Moteur CEP - Stockage des données Max courant sur une fenêtre de 10 éléments U1 1 U2 2 U3 3 U4 U4 5 U2 U1 6 U3 U2 7 U4 U3 U3 U4 U5 11 U1 12 U2 13 4 8 U5 10 9 Max list 1 1226 13 37 11 845 910 Plan Génération et exploitation de données CEP et applications Flux de données et notifications Traitement des flux Implémentation Conclusion 20

Conclusion CEP est une technologie encore nouvelle Très présente pour les traitements «simples» de flux de données avec très faible latence Donne de bons résulats CEP est une technologie qui a ses limites Pas de stockage de données donc pas de contexte ni historique Les traitements sont encore assez simples Faible dimensionalité Convergence du CEP, OLAP et Data Mining ActivePivot! Fondée en 2005 Développe et commercialise ActivePivot R&D à Paris, Services à Paris, Londres, NY et Singapour CEI Supélec et stage tous les ans depuis 2009 21

Thank you for your attention To know more about Quartet FS Please visit: www.quartetfs.com Email: info@quartetfs.com 22