Transcript
Page 1: Toutes les raisons d'adopter MongoDB

Toutes les raisons (et +) d’adopter MongoDB

Adrien Mogenet

14 juin 2012

Page 2: Toutes les raisons d'adopter MongoDB

À propos

• Est une première (!)

• Pour convaincre sa hiérarchie

• Pour convaincre ses équipes

Cette présentation :

Page 3: Toutes les raisons d'adopter MongoDB

/usr/bin/whoami

• Un adepte de MongoDB, depuis + de 2 ans

• Dans un cadre professionnel, mais pas seulement

• Pas un anti-MySQL

Page 4: Toutes les raisons d'adopter MongoDB

#0

• Les vraies fausses raisons :

• C’est écrit en C++

• C’est libre

• Les gens qui contribuent sont sympathiques

Page 5: Toutes les raisons d'adopter MongoDB

#1

• Facilité extrême :

• Déploiement en 2 minutes

• API simples et intuitives

• ... mais possibilité d’écrire des requêtes complexes.

Page 6: Toutes les raisons d'adopter MongoDB

#1

Demo

Page 7: Toutes les raisons d'adopter MongoDB

Situations

• Je suis un [DBA | Développeur | Patron], je veux me rendre compte rapidement des possibilités offertes, sans perdre une semaine de déploiement et configuration.

• Je ne veux pas fondamentalement modifier mes méthodes d’interrogation des données.

Page 8: Toutes les raisons d'adopter MongoDB

#2• Souple :

• Modèle de données simple

« Ça, c’était avant. »

Page 9: Toutes les raisons d'adopter MongoDB

Situations

• Mon modèle relationnel s’est complexifié avec le temps, je vois une occasion de le simplifier.

• Évolutions simplifiées

• Rationaliser les motifs d’accès

{ _id: 1234, name: ‘Mogenet’, likes: [‘scala’, ‘haskell’] }

{ _id: 1234, name: ‘Mogenet’, likes: [‘scala’, ‘haskell’], sex: H }

Page 10: Toutes les raisons d'adopter MongoDB

#3

• Produit performant :

• Écrit en C++ (Pas de pauses « Stop The World » à cause du GC Java)

• Indexes

• Gestion de la mémoire efficace (Memory mapped files, LRU de l’OS)

Page 11: Toutes les raisons d'adopter MongoDB

Situations

• Je veux écrire massivement des données, et satisfaire 10.000 connexions concurrentes avec accès aléatoires.

• Je veux fournir des accès en temps réels à ces nouvelles données (monitoring, messagerie instantanée...)

Page 13: Toutes les raisons d'adopter MongoDB

• Extensible, tolérant aux pannes

• Pas de SPOF

• Ajout de shards à la volée

• = Extensibilité R/W

#4

Page 14: Toutes les raisons d'adopter MongoDB

Situations

• Je suis dépassé par le succès, scaler MySQL me revient cher.

• Je ne veux pas intervenir la nuit pour un problème de BDD.

Page 15: Toutes les raisons d'adopter MongoDB

#5

• Intégration avec les nouvelles technologies

• Node.JS

• Hadoop

• Azure

• Scala

• Talend (github.com/adrien-mogenet)

• Mais aussi aux classiques (PHP, Java...)

Page 16: Toutes les raisons d'adopter MongoDB

Situations

• Typiquement, je suis une start-up jeune et innovante.

• Je modernise mon infrastructure

• Je veux une solution intégrable dans un S.I. aux technologies variées.

Page 17: Toutes les raisons d'adopter MongoDB

#6

• Polyvalent :

• Indexes géographiques

• Système de fichiers distribué (GridFS)

Page 18: Toutes les raisons d'adopter MongoDB

Situations

• Éviter la multiplication d’outils « proches »

• MongoDB « incite » les équipes à imaginer de nouveaux usages :

• Utilisations d’informations géographiques

• Stockage extensible

Page 19: Toutes les raisons d'adopter MongoDB

#7

• Rentabiliser des données vaporeuses :

• Agrégation de logs

• Tracking

Utilisation de Map/Reduce a posteriori

Page 20: Toutes les raisons d'adopter MongoDB

Situations

• Je veux prendre un avantage concurrentiel. Je veux mieux connaître mes clients, et mes futurs clients.

• Je m’autorise à stocker un maximum de données inutiles à un instant T. Le cadre concurrentiel/législatif/autre change. Je rentabilise mes données.

Page 21: Toutes les raisons d'adopter MongoDB

#8

• Communauté active :

• Correction de bugs

• Ajout de fonctionnalités pertinentes

• Éco-système riche (IHM d’administration...)

Page 22: Toutes les raisons d'adopter MongoDB

#8

Page 23: Toutes les raisons d'adopter MongoDB

#8

Page 24: Toutes les raisons d'adopter MongoDB

Situations

• Besoin de garantie sur la longévité du projet.

• S’approprier rapidement la solution via les documentations et les mailing-lists.

• Assister à MongoDB Paris

Page 25: Toutes les raisons d'adopter MongoDB

Conclusion

• Simple

• Performant

• Fiable

• Extensible

• Communauté active

Page 26: Toutes les raisons d'adopter MongoDB

{ end: ‘Questions ?’ }


Top Related