Introduction à MongoDB
Qu'est-ce que MongoDB ?
MongoDB est écrit en langage C++ et est un système de base de données open source basé sur le stockage de fichiers distribués.
Dans des conditions de charge élevée, l'ajout de nœuds supplémentaires peut garantir les performances du serveur.
MongoDB vise à fournir des solutions de stockage de données évolutives et performantes pour les applications WEB.
MongoDB stocke les données sous forme de document et la structure des données se compose de paires clé-valeur (clé =>valeur). Les documents MongoDB sont similaires aux objets JSON. Les valeurs de champ peuvent contenir d'autres documents, tableaux et tableaux de documents.
Caractéristiques principales
MongoDB fournit un stockage orienté document qui est relativement simple et facile à utiliser.
Vous pouvez définir l'index de n'importe quel attribut dans l'enregistrement MongoDB (par exemple : FirstName="Sameer",Address="8 Gandhi Road") pour obtenir un tri plus rapide.
Vous pouvez créer des miroirs de données localement ou sur le réseau, ce qui rend MongoDB plus évolutif.
Si la charge augmente (nécessitant plus d'espace de stockage et une puissance de traitement plus élevée), elle peut être répartie sur d'autres nœuds du réseau informatique. C'est ce qu'on appelle le sharding.
Mongo prend en charge les expressions de requête riches. La commande query utilise le balisage JSON pour interroger facilement les objets et les tableaux intégrés dans le document.
MongoDb utilise la commande update() pour remplacer le document complété (données) ou certains champs de données spécifiés.
Map/reduce dans Mongodb est principalement utilisé pour le traitement par lots et l'agrégation de données.
Cartographier et réduire. La fonction Map appelle submit(key, value) pour parcourir tous les enregistrements de la collection et transmet la clé et la valeur à la fonction Réduire pour traitement.
La fonction Map et la fonction Reduction sont écrites en Javascript et peuvent effectuer des opérations MapReduce via db.runCommand ou la commande mapreduce.
GridFS est une fonctionnalité intégrée à MongoDB qui peut être utilisée pour stocker un grand nombre de petits fichiers.
MongoDB permet d'exécuter des scripts côté serveur Vous pouvez écrire une fonction en Javascript et l'exécuter directement côté serveur. Vous pouvez également stocker la définition de la fonction sur le serveur. côté serveur et appelez-le directement la prochaine fois.
MongoDB prend en charge divers langages de programmation : RUBY, PYTHON, JAVA, C++, PHP, C# et d'autres langages.
MongoDB est facile à installer.
Histoire En octobre 2007, MongoDB a été développé par l'équipe 10gen. Lancé pour la première fois en février 2009.
Le 23 mai 2012, la branche de développement MongoDB2.1 est sortie ! Cette version adopte une nouvelle architecture et contient de nombreuses améliorations !
Le 6 juin 2012, MongoDB 2.0.6 est sorti, une base de données de documents distribuée.
Le 23 avril 2013, MongoDB 2.4.3 a été publié. Cette version inclut des optimisations de performances, des améliorations de fonctionnalités et des corrections de bugs.
Le 20 août 2013, MongoDB 2.4.6 est sorti, qui est la dernière version stable.
Téléchargement MongoDB
Vous pouvez télécharger le package d'installation depuis le site officiel de mongodb à l'adresse : http://www.mongodb.org/downloads . MonggoDB prend en charge les plateformes suivantes :
OS X 32 bits
OS X 64 bits
Linux 32 bits
Linux 64 bits
Windows 32 bits
Windows 64 bits
Solaris i86pc
Solaris 64
Outils MongoDB
Il existe plusieurs outils de gestion disponibles pour MongoDB.
Surveillance
MongoDB fournit l'outil de surveillance du réseau et du système Munin, qui est utilisé dans MongoDB en tant que plug-in.
Gangila est un outil de surveillance du système hautes performances pour MongoDB. Il est utilisé dans MongoDB comme plug-in.
Cacti, un outil open source basé sur une interface graphique, est utilisé pour visualiser la charge CPU et l'utilisation de la bande passante du réseau. Il fournit également un plug-in pour surveiller MongoDB.
GUI
Fang of Mongo – basé sur le Web, composé de Django et jQuery.
Futon4Mongo – Une version copiée mongodb de CouchDB Futon web.
Mongo3 - écrit en Ruby.
MongoHub – Application pour OSX.
Opricot – Une console MongoDB basée sur un navigateur et écrite en PHP.
Database Master — outil de gestion mongodb pour Windows
RockMongo — Le meilleur outil de gestion MongoDB en langage PHP, léger, prend en charge plusieurs langues de pays.
Cas d'application MongoDB
Voici quelques applications pratiques de MongoDB en entreprise :
Craiglist utilise MongoDB pour archiver des milliards d'enregistrements.
FourSquare, un site de réseautage social géolocalisé, utilise MongoDB pour partager des données sur les serveurs Amazon EC2.
Shutterfly, un service de publication sociale et personnelle basé sur Internet, utilise MongoDB pour une variété d'exigences de stockage de données persistantes.
bit.ly, un service de raccourcissement d'URL basé sur le Web, utilise MongoDB pour stocker ses données.
spike.com, une filiale de MTV Networks, Spike.com utilise MongoDB.
Intuit, un fournisseur de logiciels et de services destinés aux petites entreprises et aux particuliers, utilise MongoDB pour les petites entreprises pour suivre les données des utilisateurs.
sourceforge.net, un site Web de ressources pour trouver, créer et publier gratuitement des logiciels open source, en utilisant le stockage backend MongoDB.
etsy.com, un site Web d'achat et de vente d'articles faits à la main, utilise MongoDB.
Le New York Times, l'un des principaux portails d'information en ligne, utilise MongoDB.
Le CERN, le célèbre institut de physique des particules, utilise MongoDB pour les données du Grand collisionneur de hadrons du Centre européen de recherche nucléaire.