www.baamtu.com 9 Janvier 2014 Big Data Mode ou Révolution?
Jan 15, 2015
www.baamtu.com
9 Janvier 2014
Big DataMode ou Révolution?
www.baamtu.com
• Introduction• About the speaker•Big Data (pourquoi)?• Un cas d’exemple• De plus en plus de données
•Big Data (Comment)?• Les solutions • NoSql• Hadoop• MongoDB• ElasticSearch
•Cloud• Pourquoi?• Comment?• Les types de Cloud
•Questions/Réponse
Big Data : mode ou révolution?
Sommaire
www.baamtu.com
QUI SOMMES-NOUS?
Big Data : mode ou révolution?
www.baamtu.com
• Technopreneur (Baamtu et daluway.com)• Docteur ingénieur – 10 ans d’expé• Spécialiste JEE, moteur de règles et HA• Baamtu : Une startup sénégalaise • Créée en 2009 par de jeunes sénégalais• Editeur de logiciels et intégrateur de solutions open source• Forte expérience (Sénégal, France, Etats-unis)• Savoir-faire reconnu :
• Commiteur dans OpenErp• Meilleurs développeurs Androïd au Sénégal et en Afrique lors du
concours AAC 2013 sponsorisé par Google
• Notre équipe• 6 personnes • Travail de qualité• Multi langages et multi plateformes
• Pour en savoir plus baamtu.com et daluway.com
Big Data : mode ou révolution?
Qui sommes-nous?
www.baamtu.com
Andandor
www.baamtu.com
Andandor: Quand Android et Openerp s’allient pour la CRM
14 Septembre 2013
Andandor
www.baamtu.com
Qu’est ce que Andandor ?
• Andandor est une application de gestion de la relation client sur la plateforme
Android.
• Scénario de base: suivre une campagne marketing de près depuis son téléphone.
• Andandor s’appuie sur l’ERP Openerp
Qu’est ce que Andandor?
www.baamtu.com
Progiciel de gestion intégrée pour entreprise, distribuée sous licence libre (GPL) et qui répond de manière efficace à la complexité et aux besoins croissants des entreprises.
C’est quoi OpenERP ?
Full WebLargement répandu OpenSource
Un éditeur fort: Tiny
Couverture fonctionnelle exceptionnelleDéploiement
RapideArchitecture
technique solide Solution ouverteConception modulaire
Gestion comptable et
financière
www.baamtu.com
Large couverture fonctionnelle
C’est quoi OpenERP ?
Gestion de stocksPortail
Gestion de production
Etats SYSCOHDA
Gestion de projets
Gestion des ventes
Gestion documentaire
Gestion des immobilisations
Gestion des achatsCRM/SRMGestion budget
Points de vente
www.baamtu.com
Atouts de Openerp • Pas de coût de licences
• Nombre d’utilisateurs illimité
• Nativement multi postes
•Conception modulaire
• Intégration et souplesse
C’est quoi OpenERP ?
www.baamtu.com
Gérer toutes les données CRM
• Gestion des prospects
• Gestion des opportunités
• Gestion des contacts
•Gestion des appels
•Gestion des réunions
Les fonctionnalités de Andandor
www.baamtu.com
Une expérience utilisateur agréable
• Fonctionnement en mode offline
•Gestion automatique des données ajoutées, modifiées et supprimées sur votre serveur
•Synchronisation automatique avec le serveur grâce au widget
Les spécificités de Andandor
www.baamtu.com
Les fonctionnalités de Andandor
www.baamtu.com
Les fonctionnalités de Andandor
www.baamtu.com
Les fonctionnalités de Andandor
www.baamtu.com
Les fonctionnalités de Andandor
www.baamtu.com
Les fonctionnalités de Andandor
www.baamtu.com
9 Janvier 2014
Big DataMode ou Révolution?
www.baamtu.com
Ton appli (s)cale-t-elle?
Big Data : mode ou révolution?
www.baamtu.com
• Votre boss vous demande de réaliser une application d’analytique web :
• l’application doit tracer le nombre de pages vues pour tout URL fournie par le
client• Comment? : A chaque page vue le client appel votre application avec l’URL en
question• Votre application doit sortir des stats en temps réel.• On doit aussi pouvoir dire à tout moment les top 100 des URLS trackées par
votre application.• Comment allez-vous vous y prendre?
Big Data : mode ou révolution?
Cas d’exemple
www.baamtu.com
Big Data : mode ou révolution?
Cas d’exemple (SGBDR)
www.baamtu.com
Big Data : mode ou révolution?
Cas d’exemple (SGBDR)
www.baamtu.com
• votre application remporte un succès extraordinaire! Des millions de clients l’utilisent!• Subitement, vos log commencent à remonter « Timeout sur insertion en base de donnée »•Ce message devient de plus en plus fréquent!•Que faites-vous?
Big Data : mode ou révolution?
Cas d’exemple (SGBDR)
www.baamtu.com
Big Data : mode ou révolution?
Cas d’exemple (Scaler avec une queue)
www.baamtu.com
• votre application remporte un succès inespéré! D’autres millions de clients l’utilisent!•Vous avez encore « Timeout sur insertion en base de donnée »•Ce message devient de plus en plus fréquent!• En regardant les log de vos serveurs, vous voyez que votre BD ne tient pas la charge?•Vous devez réagir rapidement car les clients commencent à râler.•Que faites-vous?
Big Data : mode ou révolution?
Cas d’exemple (JMS)
www.baamtu.com
• votre application devient de plus en plus populaire.• Vos messaging queue travaillent de plus en plus augmentant ainsi la charge de votre BD• Vous avez rajouter des workers sur votre BD pour paralléliser mais rien n’y fait!•Clairement la BD et le SPOF!•Que faites-vous à nouveau?
Big Data : mode ou révolution?
Cas d’exemple (SGBDR)
www.baamtu.com
Big Data : mode ou révolution?
Cas d’exemple (Scaler avec du sharding)
www.baamtu.com
• Pour l’utilisation des shards il faut un mécanisme de génération de clé de shard (hash % nb shard)• Il vous faut un batch pour injecter les données de votre ancienne base vers les nouveaux shards• Un tel script prend du temps à faire (surtout tester)• Lors de sa mise en prod, on coupe l’accès de la base à l’application.•Il faut aussi modifier votre application pour utiliser le framework de génération key pour savoir sur quel shard écrire• Vous devez aussi modifier votre requêtes de top 100 :• Vous faites la requête sur chaque shard• Vous faites le merge de toutes ces requêtes
Big Data : mode ou révolution?
Cas d’exemple (Scaler avec du sharding)
www.baamtu.com
• A chaque fois que le trafic aura sensiblement augmenté sur votre application :• Rajouter des shards• Ecrire des scripts de migration• Tester et déployer en mettant « off » votre application• Revoir vos requêtes
•Et ce ci est très error-prone (pas de tolérance à la panne)• Que se passe-t-il lorsqu’un disque d’un de vos serveur BD crash?
Big Data : mode ou révolution?
Cas d’exemple (Scaler avec du sharding)
www.baamtu.com
Big Data : mode ou révolution?
Cas d’exemple (Scaler avec du sharding + slave)
www.baamtu.com
• votre application a commencé par une seule base de donnée et a fini par une architecture complexe aves plusieurs queues, shards, réplicas, et serveurs.• L’architecture devient de moins en moins fault-tolenrance• La complexité est remontée au niveau application (shard key et l’agrégation de requêtes top 100)• Manque de tolérance à l’erreur humaine. On est de plus en plus appelé à écrire des scripts de migration• Quid de la corruption des données lors de la migration?• Le parc devenant plus grand, la maintenance devient de plus en plus fastidieuse •Le Big Data adresses tous ces problèmes de scalabilité et de complexité
Big Data : mode ou révolution?
Les problèmes l’approche traditionnelle
www.baamtu.com
L’ère du Data
Big Data : mode ou révolution?
www.baamtu.com
Big Data : mode ou révolution?
www.baamtu.com
• Nous générons et traitons de plus en plus données diversifiées• Les utilisateurs créent des contenus :• Blogs• Tweets• Interactions réseaux sociaux• Photos• VOIP
• Les serveurs enregistrent des logs sur tout ce qu’ils font où on leur s fait faire.• les scientifiques génèrent des mesures détaillées du monde autour de nous.
Big Data : mode ou révolution?
L’ère du Data
www.baamtu.com
• Google annonce qu’ils viennent de lancer le plus grand moteur de recherche sur internet.• Le nouvel index de Google est composé de plus de 1 Milliard de liens• Enorme!!!
Big Data : mode ou révolution?
L’ère du Data
… 2000
www.baamtu.com
• Google annonce stocker un trillion (1 milliard de millards) de liens uniques.• Le nombre de page web augmente de plusieurs milliards de pages par jours• Enormissime!!!
Big Data : mode ou révolution?
L’ère du Data
… 2008
www.baamtu.com
Un nombre impressionnant de
Data, sans précédent, est en train
d’être créé et est accessible
Big Data : mode ou révolution?
www.baamtu.com
Big Data : mode ou révolution?
L’ère du data : évolution des données
www.baamtu.com
Big Data : mode ou révolution?
L’ère du data : évolution des données
www.baamtu.com
Big Data : mode ou révolution?
L’ère du data : Grand aujourd’hui mais petit demain
www.baamtu.com
Big Data : mode ou révolution?
L’ère du data : évolution des données
www.baamtu.com
• 2.7 Zetabytes de données existantes dans le monde digital• Facebook stocke, accède et analyse plus de 30 Petabytes de données générées pas des utilisateurs• Walmart traites plus d’un million de transactions/heures sotckées dans plus de 2,5 Petabytes de données• Plus de 5 milliards de personnes appellent, sms, tweetent et surfent sur depuis leur mobile• Pour décoder le génome humain, il fallait 10 ans de traitement maintenant cela se fait en 1 semaine.•En 2008 Google traitait 20.000 Terabytes par jour Les users Youtube upload 48h de nouvelles vidéos chaque minute chaque jour• 571 nouveaux sites créés par minute chaque jour• Plus de 34722 likes sur facebook chaque minute chaque jour• plus de 175 millions de tweets par jour pour plus de 465 millions de comptes twitter• 30 milliards de bouts de contenu partagés sur facebook chaque jour
Big Data : mode ou révolution?
Quelques metrics!
Enorme! Non?
Chiffres pour 2012 et pour
2020?
www.baamtu.com
• Avec autant de données les systèmes de base de données traditionnels sont poussés à leurs limites• Pour relever les défis du Big Data, une nouvelle race de technologies a émergée.• Beaucoup de ces nouvelles technologies ont été regroupées sous le terme «NoSQL».• Ces technologies peuvent scaler rapidement pour stocker et traiter de plus en plus de gros volumes de données
Big Data : mode ou révolution?
Nouveau paradigme
www.baamtu.com
Big Data
Big Data : mode ou révolution?
www.baamtu.com
• Le volume de données que nous utilisons, au jour le jour, ne peut plus être stocké et traité par une seul ordinateur.• Big Data est une approche (méthodologie) qui répond à 2 challenges fondamentaux :• Comment stocker et traiter de grosses volumétries de données• Et Surtout, comment exploiter et comprendre ces données afin d’en faire un
avantage
Big Data : mode ou révolution?
Big Data : une définition simple
www.baamtu.com
•Analyse de log de production pour avoir des métriques en temps réel afin de mieux comprendre vos utilisateurs ainsi que leur comportement et préférences•Analyse en temps réel des transactions de ventes afin de détecter des fraudes• Analyse des tweets et post sur les réseaux sociaux pour prédire le comportement des marchés financiers afin d’adapter le stock et l’offre• Faire avancer la science et la recherche :• Le CERN génère plus de 30 peta de données. Utilisation de 65,0000
processeurs en interne et et plusieurs milliers d’ordinateurs dans plus de 150 datacenter
• Le Google Car ou la Toyota Prius sont équipées de caméras et autres capteurs pour générer des quantités importantes de données pour la conduite automatique.
• Quid des missions d’exploration de la NASA• Et la NSA?
Big Data : mode ou révolution?
Big Data : exemples d’utilisation
www.baamtu.com
• Revoir la manière de modéliser nos données car elles vont devenir Big.• Les données sont brûtes• Les données ne sont pas forcément structurées• La volumétrie sera énorme!• Les données doivent être immutables : ni de update ni de delete que des add (historique, pas de pertes de données)• Les données seront distribuées sur plusieurs machines• la distribution des données affectera votre manière de les traiter (séquentielle Distribué)
Big Data : mode ou révolution?
Big Data : Développement orienté Data
www.baamtu.com
Les outils Big Data
Big Data : mode ou révolution?
www.baamtu.com
Big Data : mode ou révolution?
Big Data Ecosystem
www.baamtu.com
Big Data : mode ou révolution?
Big Data Ecosystem
www.baamtu.com
• HDFS et Hadoop MapReduce sont les deux branches du projet Hadoop incubé par la fondation Apache (first class project).• Hadoop est le résultat de l’implémentation de principes publiés par Google dans deux articles sur GFS et MapReduce• Hadoop est un Framework Java pour le stockage et le traitement distribués de grosses volumétries de données.•Hadoop est déployé sur plusieurs serveurs (cluster)•HDFS (Hadoop Dristibuted File System) est un système de fichier distribué et scalable.•HDFS gère le stockage de donnée dans le cluster Hadoop• HDFS crée des blocs entre 64MB et 256MB• Chaque bloc est répliqué plusieurs fois
Big Data : mode ou révolution?
Hadoop le kernel du BigData
www.baamtu.com
Big Data : mode ou révolution?
Composants Hadoop
www.baamtu.com
Big Data : mode ou révolution?
Architecture haut-niveau de Hadoop
www.baamtu.com
Big Data : mode ou révolution?
Déploiement chez Yahoo (cluster de plus de 40000 serveurs analysant +200PB de données)
www.baamtu.com
• Le Système de fichier distribué de Hadoop est le composant de stockage de Hadoop.•HDFS est optimisé pour une forte charge et a de meilleurs performances avec des R/W sur de larges fichiers (de l’ordre du GB)• HDFS va répliquer un nombre de fois (configuré : par défant 3)• HDFS réplique automatiquement les blocks des nœuds en failure.
Big Data : mode ou révolution?
HDFS : Hadoop Distributed File System
www.baamtu.com
Big Data : mode ou révolution?
Composants HDFS
www.baamtu.com
Map & Reduce
Big Data : mode ou révolution?
www.baamtu.com
• MapReduce est un paradigme de calcul distribué, lancé par Google, qui fournit les bases pour un traitement par lots (batch) scalable et fault-tolerent.•MapReduce est un modèle qui simplifie les traitements parallélisés en faisant abstraction de la complexité de travailler avec des systèmes distribués : • Parallélistions des calculs• Garantir la fiabilité des logiciels et machines
• Ceci permet au développeur de ne se focaliser que sur le besoin métier •MapReduce décompose le travail en petites opérations map et reduce, parallélisable, qui manipulent des couples de clé-valeur
Big Data : mode ou révolution?
MapReduce
www.baamtu.com
Big Data : mode ou révolution?
MapReduce
www.baamtu.com
• Le travail du développeur consiste à définir des fonctions de map et reduce. La fonction de map à pour résultat des couples clé-valeur, qui sont à leur tour traités par la fonction reduce afin de produire le résultat final.
Big Data : mode ou révolution?
MapReduce
www.baamtu.com
• Toute la puissance de MapReduce se trouve dans la phase entre l’output map et l’input reduce : suffle and sort
Big Data : mode ou révolution?
MapReduce
www.baamtu.com
Big Data : mode ou révolution?
MapReduce
www.baamtu.com
Big Data : mode ou révolution?
www.baamtu.com
Hadoop EcoSystem
Big Data : mode ou révolution?
www.baamtu.com
• MapReduce n’est pas facile à apprivoiser, et les objectifs de bons nombres de ces Projets liés à Hadoop est d'accroître son accessibilité pour les programmeurs et les non-programmeurs.
Big Data : mode ou révolution?
MapReduce
www.baamtu.com
NoSQL
Big Data : mode ou révolution?
www.baamtu.com
• Une base de donnée relationnelle est une collection de données organisée en ensemble de tables structurées.•Ces tables peuvent avoir des relations entre elles.• Les avantages majeurs sont la fiabilité et les propriétés ACID : • Atomicity : tout ou rien• Consistency (cohérence : block on operation)• Isolation (Indépendance des transactions)• Durability (une fois la transaction validée, le changement est permanant)
Big Data : mode ou révolution?
NoSQL : RDBMS
www.baamtu.com
• Scalabilité : la seule manière possible c’est la scalabilité verticale (augmentant la puissance de la machine)• A une certaine charge, quelque soit la techno, la seule scalitbilité possible est un système distribué• La nature relationnelle des RDBMS fait que utilisation distribuée soit assez complexe.• Jointure sur un système distribué est complexe• La structuration en tables est complexe• Ne prends pas en compte les données non structurées
Big Data : mode ou révolution?
NoSQL : Limitations RDBMS
www.baamtu.com
• NoSQL est un ensemble de concepts permettant le traitement rapide et efficace de données avec un focus sur la performance, la fiabilité et l’agilité (flexibilité au changement)• Not Only SQL : la philosophie n’exclut pas les RDBMS• Plus de modèle relationnel (plus de schéma): Les systèmes NoSQL stockent et récupèrent les données dans plusieurs formats : key-value, graphe, document, colonnes.• Plus de jointures • Systèmes conçus de manière distribuée dès le début (sharding et replica par défaut)• Fonctionnent sur de simples Box• Scalabilité linéaire (honrizontale)• OpenSource (très grande manjorité)• Simple d’utilisation
Big Data : mode ou révolution?
NoSQL : une réponse au web!
www.baamtu.com
• NoSQL est plus dans une approche « Optimistic » que « pessimistic »• Lâche un peut lest pour la performance• NoSQL fait le choix de BASE :• Basic Availability : le système peut être temporairement « incohérent » mais
toujours disponible.• Soft state : l’état du système peut changer, même sans input. Ceci à cause du
modèle Eventual consistency• Eventual consistency : la cohérence du système est garantis à la fin de toutes
les exécutions. Mais être temporairement incohérent.
• L’objectif c’est vraiment la performance et la haute performance.
Big Data : mode ou révolution?
NoSQL : BASE VS ACID
www.baamtu.com
Big Data : mode ou révolution?
NoSQL : Théorème de CAP
www.baamtu.com
Big Data : mode ou révolution?
NoSQL : Famille Key-Value
www.baamtu.com
Big Data : mode ou révolution?
NoSQL : Famille Column
www.baamtu.com
Big Data : mode ou révolution?
NoSQL : Famille Document
www.baamtu.com
Big Data : mode ou révolution?
NoSQL : GrapheDocument
www.baamtu.com
Cloud (computing)
Big Data : mode ou révolution?
www.baamtu.com
Big Data : mode ou révolution?
Le CLOUD : avant
www.baamtu.com
Big Data : mode ou révolution?
Le CLOUD : avec
www.baamtu.com
Big Data : mode ou révolution?
Le CLOUD : 3 types
www.baamtu.com
Big Data : mode ou révolution?
Le CLOUD : 3 types
www.baamtu.com
Big Data : mode ou révolution?
Le CLOUD : 3 types
www.baamtu.com
Big Data – NoSQL – Cloud
Le lien?
Big Data : mode ou révolution?
www.baamtu.com
BIG DATA & Santéau Sénégal
Big Data : mode ou révolution?
www.baamtu.com
Comment ?
www.baamtu.com
Merci
Big Data : mode ou révolution?