Tutoriel MongoDB Bson : Qu'est-ce que BSON et en quoi diffère-t-il de JSON ?

BSON (JSON binaire) : sérialisation binaire de documents JSON-like, utilisé par MongoDB. Cet article présente BSON, format de données de MongoDB.

Louis Dupont

Louis Dupont

5 June 2025

Tutoriel MongoDB Bson : Qu'est-ce que BSON et en quoi diffère-t-il de JSON ?

BSON (Binary JSON) est une sérialisation encodée en binaire de documents de type JSON utilisés dans les bases de données MongoDB. Cet article fournit un aperçu de BSON, le format de données binaire utilisé par MongoDB pour stocker des documents.

Il explique ce qu'est BSON, comment il étend les capacités de JSON et les principales différences entre BSON et JSON. De plus, il inclut comment Apidog gère cela automatiquement. Il montre également des exemples d'opérations CRUD de base et de commandes de base de données en utilisant Apidog pour interagir avec MongoDB.

button

Qu'est-ce que BSON dans MongoDB ?

BSON (Binary JSON) est le principal format de données utilisé dans les bases de données MongoDB. Quelques points clés à connaître sur BSON dans MongoDB :

Structure d'un document BSON

BSON (Binary JSON) est une sérialisation encodée en binaire de documents de type JSON utilisés dans les bases de données MongoDB. Un document BSON contient des paires champ-valeur ordonnées similaires aux objets JSON.

Les champs peuvent être des chaînes UTF-8 valides, tandis que les valeurs peuvent être l'un des nombreux types de données BSON comme chaîne, entier, double, données binaires, tableau, document, booléen, date, null, etc. La structure d'un document BSON commence par un entier de 4 octets indiquant la taille totale du document.

Vient ensuite une paire champ-valeur contenant le champ "_id" qui identifie de manière unique le document. Le contenu du document suit avec chaque paire champ-valeur encodée dans un format binaire spécifique basé sur le type de données.

Un exemple montrant la structure d'un document BSON :

// Sample BSON document
{
  _id: ObjectId("507f1f77bcf86cd799439011"), // 12-byte unique ID
  name: "John Doe", // String
  age: 35, // Integer
  address: { // Embedded document
    street: "123 Main St",
    city: "Anytown", 
    state: "CA"
  },
  hobbies: ["reading", "hiking","swimming"], // Array
  graduated: true, // Boolean
  birthday: ISODate("1980-05-15T00:00:00Z"), // Date
  data: BinData(0, "SGVsbG8gV29ybGQ="), // Binary data
  ts: Timestamp(1590583045633, 1) // Timestamp
}

Points clés à noter :

Quelle est la différence entre JSON et BSON ?

Voici les principales différences entre JSON et BSON :

Conversion JSON et BSON dans MongoDB avec Apidog

Apidog est une boîte à outils API qui simplifie le développement d'API. Il propose MongoDB comme l'un de ses choix de bases de données intégrées. En utilisant MongoDB avec Apidog, vous pouvez stocker des maquettes et des tests d'API dans MongoDB en tant que backend.

Les réponses d'API simulées fournies par Apidog peuvent être pilotées par des données stockées dans une base de données MongoDB. Cela permet à Apidog d'utiliser MongoDB comme source de données persistante pour les API simulées. Ensuite, nous allons vous expliquer la relation entre JSON et BSON.

button

MongoDB stocke les données sous forme de documents BSON, qui peuvent être considérés comme un sur-ensemble de JSON. Lors de l'utilisation de la base de données MongoDB avec Apidog, JSON est utilisé pour composer le contenu. Apidog mappera automatiquement chaque champ vers le type de données BSON correspondant en fonction du contenu JSON réel.

Un cas particulier est le champ _id. Selon les conventions MongoDB, chaque document doit avoir un champ _id comme clé primaire, avec ObjectId comme type de données par défaut au lieu de string.

Avec Apidog, pour déclarer un champ _id de type ObjectId, utilisez le format de chaîne normal. Si le contenu de la chaîne est conforme au format ObjectId, Apidog le mappera automatiquement vers le type ObjectId de BSON.

Par exemple, dans MongoDb, il existe un document BSON comme :

Copy code
{
    _id: ObjectId('654e056de3662b1c09477cc3
'),
    name: "Apidog"
}

Ensuite, pour interroger ce document par _id avec Apidog, le JSON à insérer dans la "Condition de requête" serait :

Copy code
{
    "_id": "654e056de3662b1c09477cc3"
}
MongoDB

Explore more

Fathom-R1-14B : Modèle de raisonnement IA avancé d'Inde

Fathom-R1-14B : Modèle de raisonnement IA avancé d'Inde

L'IA en expansion rapide. Fathom-R1-14B (14,8 milliards de paramètres) excelle en raisonnement mathématique et général, conçu par Fractal AI Research.

5 June 2025

Mistral Code : L'assistant de codage le plus personnalisable basé sur l'IA pour les entreprises

Mistral Code : L'assistant de codage le plus personnalisable basé sur l'IA pour les entreprises

Découvrez Mistral Code, l'IA d'aide au code la plus personnalisable pour les entreprises.

5 June 2025

Comment Claude Code transforme le codage de l'IA en 2025

Comment Claude Code transforme le codage de l'IA en 2025

Découvrez Claude Code en 2025 : codage IA révolutionné. Fonctionnalités, démo, et pourquoi il gagne du terrain après Windsurf d'Anthropic. Indispensable !

5 June 2025

Pratiquez le Design-first d'API dans Apidog

Découvrez une manière plus simple de créer et utiliser des API