0
0
MongodbConceptBeginner · 3 min read

Binary Data Type in MongoDB: Explanation and Usage

In MongoDB, the Binary data type stores raw binary data such as images, files, or encrypted content. It allows you to save data that is not plain text by encoding it in a special format within documents.
⚙️

How It Works

The Binary data type in MongoDB is like a container that holds any kind of raw data made up of bytes. Imagine you have a box where you can put anything that computers understand as a sequence of 0s and 1s, such as pictures, audio files, or encrypted messages. MongoDB stores this data inside documents using a special format that keeps the data intact without changing it.

This is useful because not all data fits nicely into text or numbers. For example, a photo is not just letters but a complex set of bytes. MongoDB’s binary type lets you save this data directly in your database, so you can retrieve and use it later exactly as it was saved.

💻

Example

This example shows how to store and retrieve binary data in MongoDB using the Node.js driver. It saves a small piece of binary data and then reads it back.
javascript
const { MongoClient, Binary } = require('mongodb');

async function run() {
  const client = new MongoClient('mongodb://localhost:27017');
  await client.connect();
  const db = client.db('testdb');
  const collection = db.collection('files');

  // Create some binary data (a buffer with bytes)
  const binaryData = new Binary(Buffer.from([0x01, 0x02, 0x03, 0x04]));

  // Insert document with binary data
  await collection.insertOne({ name: 'myfile', data: binaryData });

  // Find and print the binary data
  const doc = await collection.findOne({ name: 'myfile' });
  console.log('Binary data:', doc.data.buffer);

  await client.close();
}

run();
Output
Binary data: <Buffer 01 02 03 04>
🎯

When to Use

Use the Binary data type when you need to store data that is not text or numbers, such as images, audio files, videos, or encrypted information. It is perfect for saving files directly inside your MongoDB documents without converting them to strings.

For example, if you build an app that uploads user profile pictures, you can store the image data as binary in MongoDB. Another use case is saving encrypted passwords or tokens where the data is in binary form.

Key Points

  • Binary type stores raw byte data like images or encrypted content.
  • It preserves data exactly as it is without conversion.
  • Useful for files or data that don’t fit text or numbers.
  • MongoDB drivers provide easy ways to create and read binary data.

Key Takeaways

MongoDB's Binary data type stores raw byte sequences like files or images.
It keeps binary data intact without converting it to text.
Use it when you need to save non-text data inside documents.
Most MongoDB drivers support creating and reading binary data easily.