SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
1
BenchmarkingNoSQL DataBase dans le cadre d’un projet IoT
2
Système IoT
IoT représente l'extension d'Internet à des choses et à des lieux du monde physique. Alors qu'Internet ne se prolonge
habituellement pas au-delà du monde électronique, l'internet des objets (IdO, ou IoT pour Internet of Things en anglais)
représente les échanges d'informations et de données provenant de dispositifs présents dans le monde réel vers le
réseau Internet. L'internet des objets est considéré comme la troisième évolution de l'Internet, baptisée Web 3.0
(parfois perçu comme la généralisation du Web des Objets mais aussi comme celle du Web sémantique) qui fait suite à
l'ère du Web Social. L'internet des objets est en partie responsable de l'accroissement du volume de données générées
sur le réseau, à l'origine du Big Data. L'internet des objets revêt un caractère universel pour désigner des objets
connectés aux usages variés, dans le domaine de la e-santé, de la domotique ou du Quantified Self.
fr.wikipedia.org
3
Les modèles de données Big-Data
Colonne – Clé/Valeur – Document -Graphe
Colonne
Apache Cassandra,
Hbase, BigTable
Key-Value
Couchbase, Redis,
Memcached
Document
mongoDB,
Couchbase, Riak
Graphe Model: Ce modèle de représentation des données se base sur la théorie des graphes. Il s’appuie sur la notion de nœuds,
de relations et de propriétés qui leur sont rattachées. Ce modèle facilite la représentation du monde réel, ce qui le rend adapté au
traitement des données des réseaux sociaux. La principale solution est Neo4J.
Remarque: ce modèle semble n’est pas être celui qui réponds aux mieux aux attentes exigés des systèmes IoT.
4
Modèles des données en détails
Extensibiltés des modèles
Modèle “Colonne”
Ce modèle ressemble à première vue à une table dans un SGBDR à la différence qu’avec
une BD NoSQL orientée colonne, le nombre de colonnes est dynamique. En effet, dans une
table relationnelle, le nombre de colonnes est fixé dés la création du schéma de la table et
ce nombre reste le même pour tous les enregistrements dans cette table.
Modèle “Clé-Valeur”
Ce modèle peut être assimilé à une hashmap distribuée. Les données sont, donc,
simplement représentées par un couple clé/valeur. La valeur peut être une simple chaîne de
caractères, un objet sérialisé… Cette absence de structure ou de typage ont un impact
important sur le requêtage.
Modèle “Document”
Ce modèle se base sur le paradigme clé valeur. La valeur, dans ce cas, est un document de
type JSON ou XML. L’avantage est de pouvoir récupérer, via une seule clé, un ensemble
d’informations structurées de manière hiérarchique. La même opération dans le monde
relationnel impliquerait plusieurs jointures.
5
mongoDB
mongoDB est un produit
De MongoDB, Inc
Version actuelle : 2.6.7
www.mongodb.org
Cassandra
Cassandra est un produit de
DATASTAX & Apache foundation
Version actuelle : 2.0.12
www.planetcassandra.org
Couchbase
Couchbase est un produit de
Couchbase, Inc,
Version actuelle : 3.0.2
www.couchbase.com
NoSQL DataBase
Open sources et leaders
6
MongoDB vs Cassandra vs Couchbase
Caractèristiques techniques
MongoDB Cassandra Couchbase
Catégorie Base de données Base de données Base de données
Licence AGPLv3 Apache Licence 2 Apache Licence 2
Model des données Document Colonnes, key/Value Key/Value, Document
Storage des données Système de fichiers RAM, Disque dûr Système de fichiers
Langage de manipulation API, REST, JavaScript API, Thrift protocol Memcached, REST, JavaScript
Types de données JSON, BSON, BLOB JSON, BLOB JSON, BLOB
Map Reduce OK OK OK
Compression OK OK OK
Intégrité de modèle Base Base MVCC
Atomicité NON OK Conditionnel
Indexation OK OK OK
Recherche Full text OK NON OK
Replication & Sharding OK OK OK
7
MongoDB
FLEXIBILITE – SCALABILITE – PERFORMANCE- EXPRESSIVE – INDEXATION - COMMUNITE
FLEXIBILITE
Le modèle de données de document de
MongoDB rend facile pour vous le stockage des
données de n'importe quelle structure et permet
de modifier dynamiquement vos schémas de
base de données NoSQL.
SCALABILITE
Augmentez proportionnellement ou à l'échelle
horizontale, un simple serveur aux milliers de
nœuds. Déployez dans le Cloud et à travers des
multiples data-centers.
PERFORMANCE
Systèmes très performants exécutés à échelle.
Réalise des millions d'opérations par seconde. Il
diminue ainsi le charge du travail pour les
opérations de lectures ou écritures des données.
EXPRESSIVE
Le langage d'interrogation de données de
MongoDB fournit des opérateurs de niveau de
supérieur pour des mises à jour sur place. Les
conducteurs pour à peu près tout les langages
de programmation informatiques, tels que: Java,
PHP, NodeJS, C#...
INDEXATION
L'accès rapide, au grain fin aux données, y
compris des index entièrement cohérents sur
n'importe quel champ, aussi bien que géospatial,
qu’un texte de recherche et des index de types
TTL.
COMMUNITE
MongoDB à l’avantage de possèder une grande
communauté de développeurs et DBA
connaissant une forte croissance, celle la plus
rapide du monde de NoSQL, et scindé derrière
leur logiciel pour assurer son succès, fournissant
le logiciel des services pour rendre la vie plus
facile aux développeurs.
www.mongodb.org
8
Apache Cassandra
FLEXIBILITE - SCALABILITE – PERFORMANCE - DISTRIBUTION – SIMPLICITE - TRANSACTION
FLEXIBILITE
Avec des données, semi-structuré et peu
structuré, qui passe en courant dans des
demandes des applications modernes
d'aujourd'hui. Aussi satisfait dynamiquement des
changements de vos structures de données
quand vos besoins de données se développent.
SCALABILITE
Vous permet de facilement ajouter la capacité en
ligne pour accueillir plus de clients et plus de
données quand vous avez besoin.
Ajout des nœuds et des clusters à la volée sans
le besoin de redémarrer un serveur Cassandra
PERFORMANCE
Avec des réponse ultra-court face aux opérations
de CRUD et avec une courbe linéaire de montée
en charge par rapport à l’axe de temps qui
permet de doublez les nœuds pour garantir une
réponse conformes aux attentes de vos clients.
DISTRIBUTION
Vous donne la flexibilité maximale pour distribuer
des données où vous avez besoin en
reproduisant des données à travers des data-
centers multiples, comme dans le Cloud public et
privés dans lesquels deviennent des
environnements de déploiement extrêmement
communs.
SIMPLICITE
Avec tous l’incorporation des plusieurs nœuds
dans un groupe ou cluster master, il n'y a aucune
configuration complexe a mettre en œuvre, ainsi
la gérance des rôles d'administration devient
grandement simplifiée.
TRANSACTION
L'atomicité, l'isolement et la durabilité conforme
au modèle ACID par le biais des journaux de
logs assurent la durabilité de données en cas
des échecs de matériel, aussi bien que
l'isolement de transaction, l'atomicité, avec une
cohérence et consistance élevée.
www.planetcassandra.org
9
Couchbase
FLEXIBILITE - SCALABILITE – PERFORMANCE – MOBILITE – TEMPS REEL - ADMINISTRATION
FLEXIBILITE
Des cross-data configurables pour une
réplication, y compris actif/actif, pour une
implémentation à grand échelle dans des cloud
publics ou privés.
SCALABILITE
Ajoutez ou enlevez des nœuds dans un cluster à
la demande grâce à un partage de l'architecture
et avec aucun point d'échec.
PERFORMANCE
Un système de cache intégré, en occurrence
Memcached qui assure pendant une basse
latence l'accès aux données avec ou sans
verrouillage pour assurer les opérations d’I/O au
niveau des différents nœuds et cluster.
MOBILITE
Une base de données incorporée pour portable
et demandes des applications IoT pour accès
hors connexion et synchronisation automatique.
TEMPS REEL
L'intégration avec Hadoop, Elasticsearch et une
API pour des données en continu pour prendre
d'assaut pour l'analytique en temps réel.
ADMINISTRATION
Une administration intégrée en console et l'API
scripting avec un large de groupe contrôle pour
gérer de grands déploiements.
www.couchbase.com
10
Environnement documentale de test
Fichiers JSON - Fichiers CSV
10.000 Documents
10 Milles documents, avec un
fichier de taille: 950 Ko
Fichier JSON d’origine: 2,58 Mo
Modèles pour les tests:
Document et Clé-Valeur
1.000.000 Documents
1 Millions documents, avec un
fichier de taille: 95 Mo
Fichier JSON d’origine: 258 Mo
Modèles pour les tests:
Clé-Valeur
10.000.000 Documents
10 Millions documents, avec un
fichier de taille 958 Mo
Fichier JSON d’origine: 2,46 Go
Modèles pour les tests:
Clé-Valeur
100.000 Documents
100 Milles documents, avec un
fichier de taille: 0.95 Mo
Fichier JSON d’origine: 25,8 Mo
Modèles pour les tests:
Document et Clé-Valeur
11
Env-logiciels
Les logiciels utilisés sont:
MongoVue, DevOpsCenter, la
console Web de Couchebase
en mode graphique, la
console mongo, la console
cassandra et couchbase-cli.
Env-matériels
Ces tests sont effectués sur
un PC de type Intel Core i5 de
8 Go de RAM, CPU 33,30
GHz, 500Go d’espace de
stockage et Windows 7
Profesional 64 bits.
Pour assurer un environnement équitable, les mêmes structures et données pour tous les documents, Key/Value sont utilisés pour
les opérations de lecture, mise à jour, suppression ou création (CRUD: Create, Read, Update, Delete).
Plusieurs tests sont réalisés pour chaque opération pour s’assurer que les réponses des nos systèmes NoSQL soient homogènes.
Environnement matériels et logiciels
Caractèristiques matérielles - Interfaces de tests
12
Nombre total de documents importer en occurence
Comportement des databases pendant l’import massive de données
13
Import des fichiers CSV dans la base de données
Latence pour les operations d’imports des données au format CSV
14
Lecture d’un flot de données - Read
Latence des réponses pour les operations de lecture des résultats d’un flot de données
15
Lecture d’un seul document – Find By
Latence des réponses pour les operations de lecture des résultats d’un seul élément
16
Insertion d’un document – Create
Latence des réponses pour les operations de création d’un élément
17
Mise à jour d’un document - Update
Latence des réponses pour les operations de mise à jour d’un document
18
Suppression d’un document - Delete
Latence des réponses pour les operations de suppression d’un document
19
Récapitulatif des résultats
Classement des moteurs NoSQL selon leurs statistiques pour un déployement dans un système IoT
Analyse des résultats
Suite à ces résultats et constats, et en prenant
compte des circonstances applicatives d’un
système IoT, le moteur de base de données
Apache Cassandra peut constituer un meilleur
choix, avec une alternative MongoDB
intéressante au niveau de gérance de grande
quantité et flot de données en mêmes temps. En
ce qui concernat Couchbase, son comportement
et ces performances sont proportionnelles par
rapport aux aspects matériels et la quantité
mémoire allouée pour les instance Buckets pour
manipuler les données dans une situation normal
exercé par les deux autres moteurs NoSQL.
Couchbase à crasher 2 fois de suite pour un
import massive de données.
Contrairement à MongoDBb qui ne gère pas la
tâche d’administration du cache et laisse cette
approche pour une couche bas niveau du
système d’exploitation pour la gérée.
Apache cassandra fait des meilleures
performances au niveau Read, Insert, Update et
Delete, càd les opérations de CRUD
nécessairement employées en masse dans une
architecture moderne IoT.
20
Bibliographies
Liens externes – Téléchargement - Mots clés
MongoDB: www.mongodb.org
Téléchargement: www.mongodb.org/downloads
Apache Cassandra: www.planetcassandra.org
Téléchargement: www.datastax.com/download
Couchbase: www.couchebase.com
Téléchargement: www.couchbase.com/nosql-databases/downloads
Liens externes
Mots clés
Benchmarking NoSQL DataBase, IoT System, IoT Architecture, MongoDB, Apache Cassandra, Couchbase,
Big-Data, Colonne, Clé/Valeur, Document, CSV Format, MongoVue, DevOpsCenter, Couchbase Web Console,
Diagrammes de comparaisons, NoSQL Classement, import, operations CRUD, Create, Read, Update, Delete
21
A propos
Pour vos remarques et suggéstions
ALLAOUI Chaker
Senior MEAN & Big Data Developer
Mail: chaker.allaoui@opcma-tunisie.com
Visit my profile in LinkedIn
http://tn.linkedin.com/in/chakerallaoui
Visit my web site
http://allaoui-chaker.github.io

Mais conteúdo relacionado

Mais procurados

Big data: NoSQL comme solution
Big data: NoSQL comme solutionBig data: NoSQL comme solution
Big data: NoSQL comme solutionJEMLI Fathi
 
Présentation Big Data et REX Hadoop
Présentation Big Data et REX HadoopPrésentation Big Data et REX Hadoop
Présentation Big Data et REX HadoopJoseph Glorieux
 
Introduction NoSql 201406 - lbroudoux
Introduction NoSql 201406 - lbroudouxIntroduction NoSql 201406 - lbroudoux
Introduction NoSql 201406 - lbroudouxLaurent Broudoux
 
Valtech - Big Data : Détails d’une mise en œuvre
Valtech - Big Data : Détails d’une mise en œuvreValtech - Big Data : Détails d’une mise en œuvre
Valtech - Big Data : Détails d’une mise en œuvreValtech
 
Bases de données NoSQL
Bases de données NoSQLBases de données NoSQL
Bases de données NoSQLSamy Dindane
 
Documentation produit : le cas Easyvista
Documentation produit : le cas EasyvistaDocumentation produit : le cas Easyvista
Documentation produit : le cas EasyvistaXWiki
 
Présentation des bases de données NoSql
Présentation des bases de données NoSqlPrésentation des bases de données NoSql
Présentation des bases de données NoSqlSidi LEKHALIFA
 
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...Valtech
 
Les Base de Données NOSQL
Les Base de Données NOSQLLes Base de Données NOSQL
Les Base de Données NOSQLkamar MEDDAH
 
BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataLilia Sfaxi
 
Les modèles NoSQL
Les modèles NoSQLLes modèles NoSQL
Les modèles NoSQLebiznext
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopLilia Sfaxi
 
NoSQL panorama - Jean Seiler Softeam
NoSQL panorama - Jean Seiler SofteamNoSQL panorama - Jean Seiler Softeam
NoSQL panorama - Jean Seiler SofteamTelecomValley
 
Big Data : SQL, NoSQL ? Pourquoi faire un choix ?
Big Data : SQL, NoSQL ? Pourquoi faire un choix ?Big Data : SQL, NoSQL ? Pourquoi faire un choix ?
Big Data : SQL, NoSQL ? Pourquoi faire un choix ?Microsoft Décideurs IT
 
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache SparkPlateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache SparkALTIC Altic
 
Introduction au big data
Introduction au big dataIntroduction au big data
Introduction au big dataAbdelghani Azri
 
BigData_Chp5: Putting it all together
BigData_Chp5: Putting it all togetherBigData_Chp5: Putting it all together
BigData_Chp5: Putting it all togetherLilia Sfaxi
 
Presentation Hadoop Québec
Presentation Hadoop QuébecPresentation Hadoop Québec
Presentation Hadoop QuébecMathieu Dumoulin
 
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnelsUSI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnelsJoseph Glorieux
 

Mais procurados (20)

Big data: NoSQL comme solution
Big data: NoSQL comme solutionBig data: NoSQL comme solution
Big data: NoSQL comme solution
 
Présentation Big Data et REX Hadoop
Présentation Big Data et REX HadoopPrésentation Big Data et REX Hadoop
Présentation Big Data et REX Hadoop
 
Introduction NoSql 201406 - lbroudoux
Introduction NoSql 201406 - lbroudouxIntroduction NoSql 201406 - lbroudoux
Introduction NoSql 201406 - lbroudoux
 
Valtech - Big Data : Détails d’une mise en œuvre
Valtech - Big Data : Détails d’une mise en œuvreValtech - Big Data : Détails d’une mise en œuvre
Valtech - Big Data : Détails d’une mise en œuvre
 
Bases de données NoSQL
Bases de données NoSQLBases de données NoSQL
Bases de données NoSQL
 
Documentation produit : le cas Easyvista
Documentation produit : le cas EasyvistaDocumentation produit : le cas Easyvista
Documentation produit : le cas Easyvista
 
Présentation des bases de données NoSql
Présentation des bases de données NoSqlPrésentation des bases de données NoSql
Présentation des bases de données NoSql
 
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
Valtech - NoSQL, solution alternative ou complémentaire aux bases de données ...
 
Les Base de Données NOSQL
Les Base de Données NOSQLLes Base de Données NOSQL
Les Base de Données NOSQL
 
BigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big DataBigData_Chp1: Introduction à la Big Data
BigData_Chp1: Introduction à la Big Data
 
Les modèles NoSQL
Les modèles NoSQLLes modèles NoSQL
Les modèles NoSQL
 
BigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans HadoopBigData_TP2: Design Patterns dans Hadoop
BigData_TP2: Design Patterns dans Hadoop
 
NoSQL panorama - Jean Seiler Softeam
NoSQL panorama - Jean Seiler SofteamNoSQL panorama - Jean Seiler Softeam
NoSQL panorama - Jean Seiler Softeam
 
Big Data : SQL, NoSQL ? Pourquoi faire un choix ?
Big Data : SQL, NoSQL ? Pourquoi faire un choix ?Big Data : SQL, NoSQL ? Pourquoi faire un choix ?
Big Data : SQL, NoSQL ? Pourquoi faire un choix ?
 
Les BD NoSQL
Les BD NoSQLLes BD NoSQL
Les BD NoSQL
 
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache SparkPlateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
Plateforme bigdata orientée BI avec Hortoworks Data Platform et Apache Spark
 
Introduction au big data
Introduction au big dataIntroduction au big data
Introduction au big data
 
BigData_Chp5: Putting it all together
BigData_Chp5: Putting it all togetherBigData_Chp5: Putting it all together
BigData_Chp5: Putting it all together
 
Presentation Hadoop Québec
Presentation Hadoop QuébecPresentation Hadoop Québec
Presentation Hadoop Québec
 
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnelsUSI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
USI 2013 : 7 changements nécessaires pour sauver vos SI décisionnels
 

Destaque

IoT (M2M) - Big Data - Analyses : Simulation et Démonstration
IoT (M2M) - Big Data - Analyses : Simulation et DémonstrationIoT (M2M) - Big Data - Analyses : Simulation et Démonstration
IoT (M2M) - Big Data - Analyses : Simulation et DémonstrationCHAKER ALLAOUI
 
Hadoop Hbase - Introduction
Hadoop Hbase - IntroductionHadoop Hbase - Introduction
Hadoop Hbase - IntroductionBlandine Larbret
 
Du Big Data vers le SMART Data : Scénario d'un processus
Du Big Data vers le SMART Data : Scénario d'un processusDu Big Data vers le SMART Data : Scénario d'un processus
Du Big Data vers le SMART Data : Scénario d'un processusCHAKER ALLAOUI
 
Open Ed Resources: Share, Remix, Learn
Open Ed Resources: Share, Remix, LearnOpen Ed Resources: Share, Remix, Learn
Open Ed Resources: Share, Remix, LearnKaren F
 
Under Armour 2016 Chesapeake Promotion
Under Armour 2016 Chesapeake PromotionUnder Armour 2016 Chesapeake Promotion
Under Armour 2016 Chesapeake PromotionLori Trafford
 
Quand utiliser MongoDB … Et quand vous en passer…
Quand utiliser MongoDB	… Et quand vous en passer…Quand utiliser MongoDB	… Et quand vous en passer…
Quand utiliser MongoDB … Et quand vous en passer…MongoDB
 
IoT ( M2M) - Big Data - Analytics: Emulation and Demonstration
IoT ( M2M) - Big Data - Analytics: Emulation and DemonstrationIoT ( M2M) - Big Data - Analytics: Emulation and Demonstration
IoT ( M2M) - Big Data - Analytics: Emulation and DemonstrationCHAKER ALLAOUI
 
Big Data to SMART Data : Process Scenario
Big Data to SMART Data : Process ScenarioBig Data to SMART Data : Process Scenario
Big Data to SMART Data : Process ScenarioCHAKER ALLAOUI
 
Under Armour Brand Audit
Under Armour Brand AuditUnder Armour Brand Audit
Under Armour Brand AuditRenee Watkins
 
Under Armour Analysis
Under Armour AnalysisUnder Armour Analysis
Under Armour Analysisfagansp
 
Presentation Icco Lyon Fevrier Pre Confintea
Presentation Icco Lyon Fevrier Pre ConfinteaPresentation Icco Lyon Fevrier Pre Confintea
Presentation Icco Lyon Fevrier Pre ConfinteaICCO Cooperation
 
ENP Convergence Guidewaste Fr
ENP Convergence Guidewaste FrENP Convergence Guidewaste Fr
ENP Convergence Guidewaste FrPARIS
 
Part Miner Presentation2007v74190
Part Miner Presentation2007v74190Part Miner Presentation2007v74190
Part Miner Presentation2007v74190sharepartminer
 
Tierra De Dinosaurios Grupo3
Tierra De Dinosaurios Grupo3Tierra De Dinosaurios Grupo3
Tierra De Dinosaurios Grupo3salaazul
 
Atelier Qualité web / OPQUAST - Cession agences - CCI Bordeaux 26 novembre 2013
Atelier Qualité web / OPQUAST - Cession agences - CCI Bordeaux 26 novembre 2013Atelier Qualité web / OPQUAST - Cession agences - CCI Bordeaux 26 novembre 2013
Atelier Qualité web / OPQUAST - Cession agences - CCI Bordeaux 26 novembre 2013polenumerique33
 
3 Datos que debes conocer | Promociones Efectivas
3 Datos que debes conocer  | Promociones Efectivas3 Datos que debes conocer  | Promociones Efectivas
3 Datos que debes conocer | Promociones EfectivasArteaga Arteaga
 

Destaque (20)

IoT (M2M) - Big Data - Analyses : Simulation et Démonstration
IoT (M2M) - Big Data - Analyses : Simulation et DémonstrationIoT (M2M) - Big Data - Analyses : Simulation et Démonstration
IoT (M2M) - Big Data - Analyses : Simulation et Démonstration
 
Hadoop Hbase - Introduction
Hadoop Hbase - IntroductionHadoop Hbase - Introduction
Hadoop Hbase - Introduction
 
Du Big Data vers le SMART Data : Scénario d'un processus
Du Big Data vers le SMART Data : Scénario d'un processusDu Big Data vers le SMART Data : Scénario d'un processus
Du Big Data vers le SMART Data : Scénario d'un processus
 
T shirt pro forma
T shirt pro formaT shirt pro forma
T shirt pro forma
 
Open Ed Resources: Share, Remix, Learn
Open Ed Resources: Share, Remix, LearnOpen Ed Resources: Share, Remix, Learn
Open Ed Resources: Share, Remix, Learn
 
Under Armour 2016 Chesapeake Promotion
Under Armour 2016 Chesapeake PromotionUnder Armour 2016 Chesapeake Promotion
Under Armour 2016 Chesapeake Promotion
 
Quand utiliser MongoDB … Et quand vous en passer…
Quand utiliser MongoDB	… Et quand vous en passer…Quand utiliser MongoDB	… Et quand vous en passer…
Quand utiliser MongoDB … Et quand vous en passer…
 
IoT ( M2M) - Big Data - Analytics: Emulation and Demonstration
IoT ( M2M) - Big Data - Analytics: Emulation and DemonstrationIoT ( M2M) - Big Data - Analytics: Emulation and Demonstration
IoT ( M2M) - Big Data - Analytics: Emulation and Demonstration
 
Big Data to SMART Data : Process Scenario
Big Data to SMART Data : Process ScenarioBig Data to SMART Data : Process Scenario
Big Data to SMART Data : Process Scenario
 
Under Armour Brand Audit
Under Armour Brand AuditUnder Armour Brand Audit
Under Armour Brand Audit
 
Under Armour Analysis
Under Armour AnalysisUnder Armour Analysis
Under Armour Analysis
 
Under armour 4
Under armour 4Under armour 4
Under armour 4
 
Amar
AmarAmar
Amar
 
Presentation Icco Lyon Fevrier Pre Confintea
Presentation Icco Lyon Fevrier Pre ConfinteaPresentation Icco Lyon Fevrier Pre Confintea
Presentation Icco Lyon Fevrier Pre Confintea
 
ENP Convergence Guidewaste Fr
ENP Convergence Guidewaste FrENP Convergence Guidewaste Fr
ENP Convergence Guidewaste Fr
 
Part Miner Presentation2007v74190
Part Miner Presentation2007v74190Part Miner Presentation2007v74190
Part Miner Presentation2007v74190
 
Tierra De Dinosaurios Grupo3
Tierra De Dinosaurios Grupo3Tierra De Dinosaurios Grupo3
Tierra De Dinosaurios Grupo3
 
Atelier Qualité web / OPQUAST - Cession agences - CCI Bordeaux 26 novembre 2013
Atelier Qualité web / OPQUAST - Cession agences - CCI Bordeaux 26 novembre 2013Atelier Qualité web / OPQUAST - Cession agences - CCI Bordeaux 26 novembre 2013
Atelier Qualité web / OPQUAST - Cession agences - CCI Bordeaux 26 novembre 2013
 
Msw2003
Msw2003Msw2003
Msw2003
 
3 Datos que debes conocer | Promociones Efectivas
3 Datos que debes conocer  | Promociones Efectivas3 Datos que debes conocer  | Promociones Efectivas
3 Datos que debes conocer | Promociones Efectivas
 

Semelhante a Benchmarking NoSQL DataBase dans le cadre d'un projet IoT

No Sql - Olivier Mallassi - September 2010
No Sql - Olivier Mallassi - September 2010No Sql - Olivier Mallassi - September 2010
No Sql - Olivier Mallassi - September 2010JUG Lausanne
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBRomain Cambien
 
Couchbase Capella.pptx
Couchbase Capella.pptxCouchbase Capella.pptx
Couchbase Capella.pptxSaraHmida1
 
NoSQL: Quoi, quand et pour qui par Orlando Cassano du CETIC
NoSQL: Quoi, quand et pour qui par Orlando Cassano du CETICNoSQL: Quoi, quand et pour qui par Orlando Cassano du CETIC
NoSQL: Quoi, quand et pour qui par Orlando Cassano du CETICLa FeWeb
 
Environnements & Développements
Environnements & DéveloppementsEnvironnements & Développements
Environnements & DéveloppementsPaulin CHOUDJA
 
SQL Server et les développeurs
SQL Server et les développeurs SQL Server et les développeurs
SQL Server et les développeurs Microsoft
 
11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .netHamza SAID
 
Base de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreBase de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreMICHRAFY MUSTAFA
 
Les bases de donnees nosql
Les bases de donnees nosqlLes bases de donnees nosql
Les bases de donnees nosqlzied kallel
 
Les technologies du web, les standards de l'innovation ouverte : état de l'ar...
Les technologies du web, les standards de l'innovation ouverte : état de l'ar...Les technologies du web, les standards de l'innovation ouverte : état de l'ar...
Les technologies du web, les standards de l'innovation ouverte : état de l'ar...Fabien Gandon
 
J1 T1 2 - Azure DocumentDB, une base de données extrêmement rapide à l’échell...
J1 T1 2 - Azure DocumentDB, une base de données extrêmement rapide à l’échell...J1 T1 2 - Azure DocumentDB, une base de données extrêmement rapide à l’échell...
J1 T1 2 - Azure DocumentDB, une base de données extrêmement rapide à l’échell...MS Cloud Summit
 
cours06-nosql.pdf
cours06-nosql.pdfcours06-nosql.pdf
cours06-nosql.pdfhbadir
 
Les professionnels de l'information face aux défis du Web de données
Les professionnels de l'information face aux défis du Web de donnéesLes professionnels de l'information face aux défis du Web de données
Les professionnels de l'information face aux défis du Web de donnéesGautier Poupeau
 
Modèles de données et langages de description ouverts 5 - 2021-2022
Modèles de données et langages de description ouverts   5 - 2021-2022Modèles de données et langages de description ouverts   5 - 2021-2022
Modèles de données et langages de description ouverts 5 - 2021-2022François-Xavier Boffy
 
Discovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDiscovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDenodo
 

Semelhante a Benchmarking NoSQL DataBase dans le cadre d'un projet IoT (20)

No Sql - Olivier Mallassi - September 2010
No Sql - Olivier Mallassi - September 2010No Sql - Olivier Mallassi - September 2010
No Sql - Olivier Mallassi - September 2010
 
Base donnes my_sql
Base donnes my_sqlBase donnes my_sql
Base donnes my_sql
 
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDBSGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
SGBDR vs NoSQL, Différences et Uses Cases. Focus sur ArangoDB
 
Couchbase Capella.pptx
Couchbase Capella.pptxCouchbase Capella.pptx
Couchbase Capella.pptx
 
NoSQL: Quoi, quand et pour qui par Orlando Cassano du CETIC
NoSQL: Quoi, quand et pour qui par Orlando Cassano du CETICNoSQL: Quoi, quand et pour qui par Orlando Cassano du CETIC
NoSQL: Quoi, quand et pour qui par Orlando Cassano du CETIC
 
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka StreamsTraitement distribue en BIg Data - KAFKA Broker and Kafka Streams
Traitement distribue en BIg Data - KAFKA Broker and Kafka Streams
 
Environnements & Développements
Environnements & DéveloppementsEnvironnements & Développements
Environnements & Développements
 
Neo4j
Neo4jNeo4j
Neo4j
 
SQL Server et les développeurs
SQL Server et les développeurs SQL Server et les développeurs
SQL Server et les développeurs
 
11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net11 visual basic .net - acces aux donnees avec ado .net
11 visual basic .net - acces aux donnees avec ado .net
 
Base de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvreBase de données graphe, Noe4j concepts et mise en oeuvre
Base de données graphe, Noe4j concepts et mise en oeuvre
 
Les bases de donnees nosql
Les bases de donnees nosqlLes bases de donnees nosql
Les bases de donnees nosql
 
Les technologies du web, les standards de l'innovation ouverte : état de l'ar...
Les technologies du web, les standards de l'innovation ouverte : état de l'ar...Les technologies du web, les standards de l'innovation ouverte : état de l'ar...
Les technologies du web, les standards de l'innovation ouverte : état de l'ar...
 
Adopte une BDD
Adopte une BDDAdopte une BDD
Adopte une BDD
 
J1 T1 2 - Azure DocumentDB, une base de données extrêmement rapide à l’échell...
J1 T1 2 - Azure DocumentDB, une base de données extrêmement rapide à l’échell...J1 T1 2 - Azure DocumentDB, une base de données extrêmement rapide à l’échell...
J1 T1 2 - Azure DocumentDB, une base de données extrêmement rapide à l’échell...
 
Adbs2012 presentation
Adbs2012 presentationAdbs2012 presentation
Adbs2012 presentation
 
cours06-nosql.pdf
cours06-nosql.pdfcours06-nosql.pdf
cours06-nosql.pdf
 
Les professionnels de l'information face aux défis du Web de données
Les professionnels de l'information face aux défis du Web de donnéesLes professionnels de l'information face aux défis du Web de données
Les professionnels de l'information face aux défis du Web de données
 
Modèles de données et langages de description ouverts 5 - 2021-2022
Modèles de données et langages de description ouverts   5 - 2021-2022Modèles de données et langages de description ouverts   5 - 2021-2022
Modèles de données et langages de description ouverts 5 - 2021-2022
 
Discovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data VirtualizationDiscovery Session France: Atelier découverte de la Data Virtualization
Discovery Session France: Atelier découverte de la Data Virtualization
 

Benchmarking NoSQL DataBase dans le cadre d'un projet IoT

  • 1. 1 BenchmarkingNoSQL DataBase dans le cadre d’un projet IoT
  • 2. 2 Système IoT IoT représente l'extension d'Internet à des choses et à des lieux du monde physique. Alors qu'Internet ne se prolonge habituellement pas au-delà du monde électronique, l'internet des objets (IdO, ou IoT pour Internet of Things en anglais) représente les échanges d'informations et de données provenant de dispositifs présents dans le monde réel vers le réseau Internet. L'internet des objets est considéré comme la troisième évolution de l'Internet, baptisée Web 3.0 (parfois perçu comme la généralisation du Web des Objets mais aussi comme celle du Web sémantique) qui fait suite à l'ère du Web Social. L'internet des objets est en partie responsable de l'accroissement du volume de données générées sur le réseau, à l'origine du Big Data. L'internet des objets revêt un caractère universel pour désigner des objets connectés aux usages variés, dans le domaine de la e-santé, de la domotique ou du Quantified Self. fr.wikipedia.org
  • 3. 3 Les modèles de données Big-Data Colonne – Clé/Valeur – Document -Graphe Colonne Apache Cassandra, Hbase, BigTable Key-Value Couchbase, Redis, Memcached Document mongoDB, Couchbase, Riak Graphe Model: Ce modèle de représentation des données se base sur la théorie des graphes. Il s’appuie sur la notion de nœuds, de relations et de propriétés qui leur sont rattachées. Ce modèle facilite la représentation du monde réel, ce qui le rend adapté au traitement des données des réseaux sociaux. La principale solution est Neo4J. Remarque: ce modèle semble n’est pas être celui qui réponds aux mieux aux attentes exigés des systèmes IoT.
  • 4. 4 Modèles des données en détails Extensibiltés des modèles Modèle “Colonne” Ce modèle ressemble à première vue à une table dans un SGBDR à la différence qu’avec une BD NoSQL orientée colonne, le nombre de colonnes est dynamique. En effet, dans une table relationnelle, le nombre de colonnes est fixé dés la création du schéma de la table et ce nombre reste le même pour tous les enregistrements dans cette table. Modèle “Clé-Valeur” Ce modèle peut être assimilé à une hashmap distribuée. Les données sont, donc, simplement représentées par un couple clé/valeur. La valeur peut être une simple chaîne de caractères, un objet sérialisé… Cette absence de structure ou de typage ont un impact important sur le requêtage. Modèle “Document” Ce modèle se base sur le paradigme clé valeur. La valeur, dans ce cas, est un document de type JSON ou XML. L’avantage est de pouvoir récupérer, via une seule clé, un ensemble d’informations structurées de manière hiérarchique. La même opération dans le monde relationnel impliquerait plusieurs jointures.
  • 5. 5 mongoDB mongoDB est un produit De MongoDB, Inc Version actuelle : 2.6.7 www.mongodb.org Cassandra Cassandra est un produit de DATASTAX & Apache foundation Version actuelle : 2.0.12 www.planetcassandra.org Couchbase Couchbase est un produit de Couchbase, Inc, Version actuelle : 3.0.2 www.couchbase.com NoSQL DataBase Open sources et leaders
  • 6. 6 MongoDB vs Cassandra vs Couchbase Caractèristiques techniques MongoDB Cassandra Couchbase Catégorie Base de données Base de données Base de données Licence AGPLv3 Apache Licence 2 Apache Licence 2 Model des données Document Colonnes, key/Value Key/Value, Document Storage des données Système de fichiers RAM, Disque dûr Système de fichiers Langage de manipulation API, REST, JavaScript API, Thrift protocol Memcached, REST, JavaScript Types de données JSON, BSON, BLOB JSON, BLOB JSON, BLOB Map Reduce OK OK OK Compression OK OK OK Intégrité de modèle Base Base MVCC Atomicité NON OK Conditionnel Indexation OK OK OK Recherche Full text OK NON OK Replication & Sharding OK OK OK
  • 7. 7 MongoDB FLEXIBILITE – SCALABILITE – PERFORMANCE- EXPRESSIVE – INDEXATION - COMMUNITE FLEXIBILITE Le modèle de données de document de MongoDB rend facile pour vous le stockage des données de n'importe quelle structure et permet de modifier dynamiquement vos schémas de base de données NoSQL. SCALABILITE Augmentez proportionnellement ou à l'échelle horizontale, un simple serveur aux milliers de nœuds. Déployez dans le Cloud et à travers des multiples data-centers. PERFORMANCE Systèmes très performants exécutés à échelle. Réalise des millions d'opérations par seconde. Il diminue ainsi le charge du travail pour les opérations de lectures ou écritures des données. EXPRESSIVE Le langage d'interrogation de données de MongoDB fournit des opérateurs de niveau de supérieur pour des mises à jour sur place. Les conducteurs pour à peu près tout les langages de programmation informatiques, tels que: Java, PHP, NodeJS, C#... INDEXATION L'accès rapide, au grain fin aux données, y compris des index entièrement cohérents sur n'importe quel champ, aussi bien que géospatial, qu’un texte de recherche et des index de types TTL. COMMUNITE MongoDB à l’avantage de possèder une grande communauté de développeurs et DBA connaissant une forte croissance, celle la plus rapide du monde de NoSQL, et scindé derrière leur logiciel pour assurer son succès, fournissant le logiciel des services pour rendre la vie plus facile aux développeurs. www.mongodb.org
  • 8. 8 Apache Cassandra FLEXIBILITE - SCALABILITE – PERFORMANCE - DISTRIBUTION – SIMPLICITE - TRANSACTION FLEXIBILITE Avec des données, semi-structuré et peu structuré, qui passe en courant dans des demandes des applications modernes d'aujourd'hui. Aussi satisfait dynamiquement des changements de vos structures de données quand vos besoins de données se développent. SCALABILITE Vous permet de facilement ajouter la capacité en ligne pour accueillir plus de clients et plus de données quand vous avez besoin. Ajout des nœuds et des clusters à la volée sans le besoin de redémarrer un serveur Cassandra PERFORMANCE Avec des réponse ultra-court face aux opérations de CRUD et avec une courbe linéaire de montée en charge par rapport à l’axe de temps qui permet de doublez les nœuds pour garantir une réponse conformes aux attentes de vos clients. DISTRIBUTION Vous donne la flexibilité maximale pour distribuer des données où vous avez besoin en reproduisant des données à travers des data- centers multiples, comme dans le Cloud public et privés dans lesquels deviennent des environnements de déploiement extrêmement communs. SIMPLICITE Avec tous l’incorporation des plusieurs nœuds dans un groupe ou cluster master, il n'y a aucune configuration complexe a mettre en œuvre, ainsi la gérance des rôles d'administration devient grandement simplifiée. TRANSACTION L'atomicité, l'isolement et la durabilité conforme au modèle ACID par le biais des journaux de logs assurent la durabilité de données en cas des échecs de matériel, aussi bien que l'isolement de transaction, l'atomicité, avec une cohérence et consistance élevée. www.planetcassandra.org
  • 9. 9 Couchbase FLEXIBILITE - SCALABILITE – PERFORMANCE – MOBILITE – TEMPS REEL - ADMINISTRATION FLEXIBILITE Des cross-data configurables pour une réplication, y compris actif/actif, pour une implémentation à grand échelle dans des cloud publics ou privés. SCALABILITE Ajoutez ou enlevez des nœuds dans un cluster à la demande grâce à un partage de l'architecture et avec aucun point d'échec. PERFORMANCE Un système de cache intégré, en occurrence Memcached qui assure pendant une basse latence l'accès aux données avec ou sans verrouillage pour assurer les opérations d’I/O au niveau des différents nœuds et cluster. MOBILITE Une base de données incorporée pour portable et demandes des applications IoT pour accès hors connexion et synchronisation automatique. TEMPS REEL L'intégration avec Hadoop, Elasticsearch et une API pour des données en continu pour prendre d'assaut pour l'analytique en temps réel. ADMINISTRATION Une administration intégrée en console et l'API scripting avec un large de groupe contrôle pour gérer de grands déploiements. www.couchbase.com
  • 10. 10 Environnement documentale de test Fichiers JSON - Fichiers CSV 10.000 Documents 10 Milles documents, avec un fichier de taille: 950 Ko Fichier JSON d’origine: 2,58 Mo Modèles pour les tests: Document et Clé-Valeur 1.000.000 Documents 1 Millions documents, avec un fichier de taille: 95 Mo Fichier JSON d’origine: 258 Mo Modèles pour les tests: Clé-Valeur 10.000.000 Documents 10 Millions documents, avec un fichier de taille 958 Mo Fichier JSON d’origine: 2,46 Go Modèles pour les tests: Clé-Valeur 100.000 Documents 100 Milles documents, avec un fichier de taille: 0.95 Mo Fichier JSON d’origine: 25,8 Mo Modèles pour les tests: Document et Clé-Valeur
  • 11. 11 Env-logiciels Les logiciels utilisés sont: MongoVue, DevOpsCenter, la console Web de Couchebase en mode graphique, la console mongo, la console cassandra et couchbase-cli. Env-matériels Ces tests sont effectués sur un PC de type Intel Core i5 de 8 Go de RAM, CPU 33,30 GHz, 500Go d’espace de stockage et Windows 7 Profesional 64 bits. Pour assurer un environnement équitable, les mêmes structures et données pour tous les documents, Key/Value sont utilisés pour les opérations de lecture, mise à jour, suppression ou création (CRUD: Create, Read, Update, Delete). Plusieurs tests sont réalisés pour chaque opération pour s’assurer que les réponses des nos systèmes NoSQL soient homogènes. Environnement matériels et logiciels Caractèristiques matérielles - Interfaces de tests
  • 12. 12 Nombre total de documents importer en occurence Comportement des databases pendant l’import massive de données
  • 13. 13 Import des fichiers CSV dans la base de données Latence pour les operations d’imports des données au format CSV
  • 14. 14 Lecture d’un flot de données - Read Latence des réponses pour les operations de lecture des résultats d’un flot de données
  • 15. 15 Lecture d’un seul document – Find By Latence des réponses pour les operations de lecture des résultats d’un seul élément
  • 16. 16 Insertion d’un document – Create Latence des réponses pour les operations de création d’un élément
  • 17. 17 Mise à jour d’un document - Update Latence des réponses pour les operations de mise à jour d’un document
  • 18. 18 Suppression d’un document - Delete Latence des réponses pour les operations de suppression d’un document
  • 19. 19 Récapitulatif des résultats Classement des moteurs NoSQL selon leurs statistiques pour un déployement dans un système IoT Analyse des résultats Suite à ces résultats et constats, et en prenant compte des circonstances applicatives d’un système IoT, le moteur de base de données Apache Cassandra peut constituer un meilleur choix, avec une alternative MongoDB intéressante au niveau de gérance de grande quantité et flot de données en mêmes temps. En ce qui concernat Couchbase, son comportement et ces performances sont proportionnelles par rapport aux aspects matériels et la quantité mémoire allouée pour les instance Buckets pour manipuler les données dans une situation normal exercé par les deux autres moteurs NoSQL. Couchbase à crasher 2 fois de suite pour un import massive de données. Contrairement à MongoDBb qui ne gère pas la tâche d’administration du cache et laisse cette approche pour une couche bas niveau du système d’exploitation pour la gérée. Apache cassandra fait des meilleures performances au niveau Read, Insert, Update et Delete, càd les opérations de CRUD nécessairement employées en masse dans une architecture moderne IoT.
  • 20. 20 Bibliographies Liens externes – Téléchargement - Mots clés MongoDB: www.mongodb.org Téléchargement: www.mongodb.org/downloads Apache Cassandra: www.planetcassandra.org Téléchargement: www.datastax.com/download Couchbase: www.couchebase.com Téléchargement: www.couchbase.com/nosql-databases/downloads Liens externes Mots clés Benchmarking NoSQL DataBase, IoT System, IoT Architecture, MongoDB, Apache Cassandra, Couchbase, Big-Data, Colonne, Clé/Valeur, Document, CSV Format, MongoVue, DevOpsCenter, Couchbase Web Console, Diagrammes de comparaisons, NoSQL Classement, import, operations CRUD, Create, Read, Update, Delete
  • 21. 21 A propos Pour vos remarques et suggéstions ALLAOUI Chaker Senior MEAN & Big Data Developer Mail: chaker.allaoui@opcma-tunisie.com Visit my profile in LinkedIn http://tn.linkedin.com/in/chakerallaoui Visit my web site http://allaoui-chaker.github.io