La base de données distribuée basée sur des documents MongoDB est une base de données générale, qui se situe entre une base de données relationnelle et une base de données non relationnelle (NoSQL). C'est la plus riche en fonctionnalités et la plus proche d'une base de données relationnelle parmi les bases de données non relationnelles.

Un exemple de document MongoDB

{
  "_id": "5cf0029caff5056591b0ce7d",
  "firstname": "Jane",
  "lastname": "Wu",
  "address": {
    "street": "1 Circle Rd",
    "city": "Los Angeles",
    "state": "CA",
    "zip": "90404"
  },
  "hobbies": ["surfing", "coding"]
}

Rien d'extraordinaire, juste un fragment de données JSON. Les données de documents stockées dans MongoDB sont similaires à ces données JSON. En raison du stockage de données au format JSON, le format de données stockées dans MongoDB est très flexible. Contrairement à MySQL, qui doit avoir une structure de table fixe, cela signifie que vous pouvez ajouter ou supprimer des champs à tout moment, et la vitesse est également très rapide.

Astuce : Si votre entreprise n'a pas de fortes exigences en matière de transactions complexes, de jointures, et de cohérence des données, et que vous recherchez simplement une lecture et écriture rapide des données, une grande concurrence, des formats de stockage flexibles et libres, et que vous n'avez pas besoin de définir les structures de table à l'avance, MongoDB est un bon choix.

Caractéristiques de MongoDB

Hautes performances

MongoDB assure une persistance des données à haute performance. En particulier,

  • L'utilisation d'un modèle de données intégré peut réduire les opérations d'E/S du système de base de données.
  • Il prend en charge l'indexation, ce qui rend l'efficacité des requêtes très élevée, et les champs indexés peuvent être des champs de documents imbriqués ou des clés de tableaux.

Langage de requête riche

MongoDB prend en charge un ensemble riche d'expressions de requête pour répondre à divers scénarios de requêtes métier.

Prise en charge des requêtes géospatiales

Pour les entreprises O2O et les entreprises liées à la localisation, des requêtes géospatiales fréquentes sont nécessaires, telles que la recherche de magasins à proximité, de personnes à proximité, ou la détermination si vous vous trouvez dans un quartier commercial. Tout cela nécessite une prise en charge de la recherche géospatiale.

Haute disponibilité

Le replica set de MongoDB offre :

  • Basculement automatique
  • Redondance des données

Un replica set est un groupe d'instances mongod qui maintiennent le même ensemble de données, offrant une redondance des données et une prise en charge de la haute disponibilité.

Scalabilité horizontale

MongoDB prend en charge la mise à l'échelle horizontale. En utilisant le sharding, les données sont réparties sur un cluster de machines.