La première étape pour utiliser MongoDB est de comprendre les concepts de base de MongoDB et le modèle de données (la structure des données), en sachant comment les données sont stockées. En fait, MongoDB est très similaire à MySQL, donc tout le monde qui connaît MySQL n'aura aucune difficulté à apprendre MongoDB.

Concepts de base de MongoDB

Base de données

La base de données MongoDB est la même que la base de données MySQL.

Collection

Une collection MongoDB fait référence à une collection de données de document, similaire au concept de table dans MySQL.

Document

Un document MongoDB, similaire à une ligne de données dans une table MySQL, est une donnée structurée en JSON composée de plusieurs champs, rendant la structure du document dans MongoDB très flexible.

Champ

Un champ de document MongoDB est similaire au concept de champ dans une table MySQL, représentant les données spécifiques à stocker, chaque champ ayant son propre type de données.

Index

L'index MongoDB est similaire à l'index MySQL, dans le but d'améliorer l'efficacité des requêtes.

Agrégation

Le concept d'agrégation MongoDB est similaire à l'analyse d'agrégation Group by/Count/Sum in MySQL, utilisée pour l'analyse statistique des données.

Comparaison des concepts entre MongoDB et MySQL

MySQL MongoDB
Base de données Base de données
Table Collection
Ligne Document
Colonne Champ de document
Index Index
Agrégation (par exemple, group by) Agrégation

Fondamentalement, les concepts de MongoDB peuvent être associés à MySQL, donc MongoDB est la donnée non relationnelle la plus similaire aux bases de données relationnelles (NoSQL).

Données de document MongoDB

Un document est simplement une structure JSON composée de plusieurs champs, chacun ayant son propre type de données. Lors du développement avec MongoDB, l'accent est principalement mis sur la manière de concevoir la structure du document, similaire à la façon dont le cœur de l'utilisation de MySQL implique de concevoir des structures de table.

Exemple de données de document MongoDB:

{
  "_id": "5cf0029caff5056591b0ce7d",
  "prenom": "Jane",
  "nom": "Wu",
  "adresse": {
    "rue": "1 Circle Rd",
    "ville": "Los Angeles",
    "etat": "CA",
    "codepostal": "90404"
  },
  "passions": ["surf", "codage"]
}

Il peut s'agir de n'importe quelle structure JSON arbitrairement imbriquée, quelque chose que les structures de table MySQL ne peuvent pas réaliser. Le champ _id sert de clé primaire du document, et si vous ne spécifiez pas de valeur spécifique, MongoDB générera une valeur unique de manière aléatoire.

La plus grande différence entre la structure de données de MongoDB et les tables MySQL est que MongoDB ne nécessite pas de pré-définir la structure du document. Avec MongoDB, vous pouvez insérer directement des données JSON dans une collection sans besoin de schéma prédéfini. Chaque fois que vous écrivez des données JSON dans une collection MongoDB, le format peut être différent, permettant d'ajouter ou de supprimer des champs à volonté.

Remarque : Bien que la structure de document de MongoDB soit assez flexible et puisse accueillir des formats de données variables pour chaque entrée, dans les applications pratiques, la structure des données au sein d'une collection est généralement uniforme. Sinon, si le format de chaque entrée est différent au sein de la collection, la maintenance sera un cauchemar car vous ne connaîtrez pas le format des données récupérées à chaque fois.