De 20 000 à 4 millions. Khanh Tuong Maudoux @jetoile



Documents pareils
AVRIL Au delà de Hadoop. Panorama des solutions NoSQL

Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop

Cassandra chez Chronopost pour traiter en temps réel 1,5 milliard d événements par an

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

Youssef LYHYAOUI Ingénieur Java/J2EE, SOA, ESB, Web services 31 ans Statut : Indépendant SITUATION ACTUELLE

BIG Data et R: opportunités et perspectives

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

Déploiement de l infrastructure SOA. Retour d expérience Août 2013

Les journées SQL Server 2013

Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG

Titre : La BI vue par l intégrateur Orange

Network Efficiency Monitoring - version 2

Panorama des solutions analytiques existantes

L écosystème Hadoop Nicolas Thiébaud Tuesday, July 2, 13

Vos experts Big Data. Le Big Data dans la pratique

Cartographie des solutions BigData

HADOOP ET SON ÉCOSYSTÈME

Programme ASI Développeur

Fouillez facilement dans votre système Big Data. Olivier TAVARD

Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop

Mettez les évolutions technologiques au service de vos objectifs métier

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

MapReduce. Nicolas Dugué M2 MIAGE Systèmes d information répartis

FINI LA RÉCRÉ PASSONS AUX MÉGADONNÉES

Webinar EBG Nouvelles perspectives d'exploitation des données clients avec le big data

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

Les participants repartiront de cette formation en ayant une vision claire de la stratégie et de l éventuelle mise en œuvre d un Big Data.

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

Gildas Le Nadan. Thomas Clavier

Projet de Java Enterprise Edition

C-JDBC. Emmanuel Cecchet INRIA, Projet Sardes.

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

BIG DATA en Sciences et Industries de l Environnement

Data Tier Application avec SQL Server 2008 R2

StruxureWare Power Monitoring v7.0. La nouvelle génération en matière de logiciel de gestion complète d énergie

Java à Murex: un retour d'expérience. Jean-Pierre DACHER & Craig MORRISON

SQL. Oracle. pour. 4 e édition. Christian Soutou Avec la participation d Olivier Teste

Présentation Alfresco

Apache JMeter de A à Z. Antonio Gomes Rodrigues and Bruno Demion a.k.a. Milamber

NFA 008. Introduction à NoSQL et MongoDB 25/05/2013

Proposition d une architecture pour ebay, en mettant l accent sur les notions de scalabilité, de résilience, et de tolérance aux pannes.

Technologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC

Open Source Job Scheduler. Installation(s)

Paris JUG. Spring Batch. Mardi 14 Mai Olivier Bazoud Julien Jakubowski

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

OpenPaaS Le réseau social d'entreprise

IBM WebSphere Application Server 5.0 : Administration avancée

Performances. Gestion des serveurs (2/2) Clustering. Grid Computing

Le NoSQL - Cassandra

Big Data et Graphes : Quelques pistes de recherche

Labs Hadoop Février 2013

Programmation parallèle et distribuée

Catalogue des formations Edition 2015

PROSOP : un système de gestion de bases de données prosopographiques

Méthodes Agiles et gestion de projets

La gestion de la performance applicative dans des environnements complexes et distribués

Master Informatique et Systèmes. Architecture des Systèmes d Information. 03 Architecture Logicielle et Technique

L offre décisionnel IBM. Patrick COOLS Spécialiste Business Intelligence

NoSQL. Introduction 1/30. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

Big Data, un nouveau paradigme et de nouveaux challenges

Pentaho Business Analytics Intégrer > Explorer > Prévoir

Le traitement du Big Data inclue la collecte, la curation, le stockage, l enrichissement, le croisement, la partage, l analyse et la visualisation.

CATALOGUE DE FORMATIONS BUSINESS INTELLIGENCE. Edition 2012

Déploiement d une architecture Hadoop pour analyse de flux. françois-xavier.andreu@renater.fr

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

Cyrille GUERIN 823, place Soulanges Brossard, J4X1L8

1/ Présentation de SQL Server :

Hibernate vs. le Cloud Computing

Curriculum Vitae de Michel Casabianca

Arian Papillon

Hadoop, les clés du succès

CQP Développeur Nouvelles Technologies (DNT)

PostgreSQL, le cœur d un système critique

Modélisation et Gestion des bases de données avec mysql workbench

Mesures DNS à l ère du Big Data : outils et défis. JCSA, 9 juillet 2015 Vincent Levigneron, Afnic

Benjamin Cornu Florian Joyeux. Les choses à connaître pour (essayer) de concurrencer Facebook.

Création et Gestion des tables

Spécialité Compétence complémentaire en informatique

Présentation du module Base de données spatio-temporelles

Comment valoriser votre patrimoine de données?

DEMARREZ RAPIDEMENT VOTRE EVALUATION

Offre formation Big Data Analytics

Cloud Computing : Utiliser Stratos comme PaaS privé sur un cloud Eucalyptus

Big Data On Line Analytics

Présentation Windows Azure Hadoop Big Data - BI

Gestion de tests et tests de performance avec Salomé-TMF & CLIF

Chef de projet / Architecte JEE 15 ans d expérience

Big data et données géospatiales : Enjeux et défis pour la géomatique. Thierry Badard, PhD, ing. jr Centre de Recherche en Géomatique

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

QLIKVIEW ET LE BIG DATA

Pratique de la prémétrologie à Orange Labs à travers l'utilisation de la plate forme de test en charge CLIF

Expert technique J2EE

Professeur superviseur ALAIN APRIL

Évolution de la supervision et besoins utilisateurs

Paul FLYE SAINTE MARIE

Missions réalisées. Team Leader. Scrum Master (certifié)

Acquisition des données - Big Data. Dario VEGA Senior Sales Consultant

KPI (Key Performance Indicator) dans MOSS

Transcription:

De 20 000 à 4 millions Khanh Tuong Maudoux @jetoile

2

Qui suis- Khanh Tuong Maudoux Développeur Java indépendant blog : http://blog.jetoile.fr @jetoile khanh.maudoux@jetoile.fr 3

Contexte Collecteur Stockage Lecture Traitement 4

Contexte 5

Contexte Fonctionnel Réception de relevés de compteurs (fichiers xml) Fournir une consolidation (valorisation) des consommations en fonction de différents critères Algorithmes de lissage et de détection à faire sur les données Algorithmes de valorisation à faire sur les données 6

Contexte Volumétrie Avant : 20.0000 clients Cible : 4.000.000 clients Avec un pas de 30 minutes! ~ 3.000.000 fichiers par jours (~156 Go/jour) 7

Contexte État des lieux Algorithmes de lissage et de détection fait au moment de la collecte long» => anomalies «courantes» Algorithmes de consolidation exécutés par batch sur les données stockées 8

Contexte État des lieux Stockage TimeSeries Stockage Collecteur Consolidation Applicatif Stockage 9

Contexte État des lieux 10

Contexte Objectifs Objectif : Remplacer la solution de stockage Ne pas oublier la phase le ré-import totale! (~3 ans de données) 11

Collecteur 12

Collecteur Objectifs Batch de collecte avec stockage dans une solution propriétaire Objectifs : Valider différentes solutions (Cassandra, MySQL Cluster) Valider le modèle de données 13

Transformation JAXB Transformation Objet pivot Routage par xpath Transformation JAXB Transformation Objet pivot Collecteur État des lieux XML Java DTO Stockage XML Java DTO 14

Collecteur Pistes Pistes : Spring Batch EIP Spring Batch + EIP 15

Collecteur Outils / Framework : Spring Integration Metrics JMX / Jolokia Hawt.io Maven! 16

Collecteur Spring Integration Architecture «Pipe and Filters» 17

Transformation JAXB Transformation Objet pivot Routage par xpath Transformation JAXB Transformation Objet pivot Collecteur Spring Integration XML Java DTO Stockage XML Java DTO 18

Collecteur Spring Integration 19

Collecteur Spring Integration 20

Collecteur Spring Integration 21

Collecteur Spring Integration 22

Collecteur Spring Integration 23

Collecteur Spring Integration Message-history Scalabilité horizontale 24

Collecteur Metrics 25

Collecteur Jolokia JMX via HTTP/JSON 26

Collecteur Hawt.io 27

Collecteur Maven maven-jaxb2-plugin (org.jvnet.jaxb2.maven2) appassembler-maven-plugin (org.codehaus.mojo) 28

Collecteur endpoint REST pour injection 29

Stockage 30

Stockage Objectifs Rappels : Remplacer la solution existante de stockage Chaque capteur remonte une donnée toutes les 30 minutes Time series (au plus 50 000 colonnes par ligne) 31

Stockage Cassandra Base de données orientée colonnes Keyspace Column Family Column 32

Stockage Cassandra Time series : 1 ligne avec de multiples colonnes (clé composite) capteur_id event temperature event temperature CREATE TABLE capteur ( capteur_id text, event timestamp, temperature text, PRIMARY KEY (capteur_id, event) ) Ordonnée 33

Stockage Attention longueur/taille de ligne CREATE TABLE capteur ( capteur_id text, event_period text, event timestamp, value text, PRIMARY KEY ((capteur_id, event_period), event) ) Attention modélisation aggrégation 34

Stockage Jolokia Comme agent sur la JVM 35

Lecture 36

Lecture Objectifs Évaluer la pertinence de la solution de stockage Véloce Simple Remonté de métriques => injecteur! 37

Lecture Pistes Pistes : From scratch 38

Lecture Outils / Framework : RestEasy Netty Swagger JMX / Jolokia Hawt.io Maven Gatling / AB 39

Lecture RestEasy Netty : JAX-RS Netty Simple 40

Lecture Swagger : 41

Lecture Jolokia 42

Lecture Gatling 43

Traitement 44

Traitement Rappel Stockage TimeSeries Stockage Collecteur Consolidation Applicatif Stockage 45

Traitement Objectifs Objectif : Collecte Rapide Pas de pertes de données (sécurisation de la données) Détection des données fausses Faite en aval de la collecte Consolidation Faite sur les données «valides» avec stockage des mesures dans des «batch View» Séparation des concepts! 46

Traitement Objectifs Objectif : Lambda architecture Query = function (all data) 47

Transformation Objet pivot C*DAO Traitement Objectifs Objectif : collecte C* transformation C* C* Valo All datas Precompute views Batch views Batch Layer Service Layer Query = function (all data) 48

Traitement Spark / Hadoop 49

Traitement Objectifs? Volumétrie non acceptable pour la production : Duplication de la donnée Souhaite une solution avec calcul à la demande 50

Transformation Objet pivot C*DAO Traitement Objectifs? Traitement collecte C* transformation C* C* Valo All datas Precompute views Batch views Service Layer 51

Traitement Objectifs? Algorithme de lissage en amont 52

Conclusion 53

Merci! 54

Questions? 55

pas le feedback en sortant! ou?