DEV Community

Cover image for 🔥Comparing Binary JSON formats 🎯
Loïc
Loïc

Posted on

🔥Comparing Binary JSON formats 🎯

TL;DR - Binary JSON formats are critical for databases. But are all these binary formats the same? What if the answer is: definitely NOT? What if they influence programming practices? Want to know more, you're at the right place 🍿👇


In this Comparing "Binary JSON formats" video, I deep dive into these 4 Binary JSON formats:

  • BSON used in MongoDB
  • JSON (or "BJSON" as I call it - which stands as "Binary JSON" 😅) used in MySQL
  • JSONB used in PostgreSQL
  • OSON used in Oracle

After re-positioning the JSON standard and what it means, I present these formats one by one using a tool I've developed to quickly identify the evolving structure of JSON documents modified in live.

One clear difference will be shown for the JSON field (scalar) values representation, you'll be surprised!

Hopefully, I came up with comparative tables that one can use as quick notes. I personally defined application development best practices when dealing with each of these binary formats.

Then I continue looking at document compression and I finish with partial document updates and what are the impacts on the underlying database.

Enjoy!

Top comments (2)

Collapse
 
sloan profile image
Sloan the DEV Moderator

Would you please consider embedding your video here instead of just linking to it? This way folks can see your content and discuss things on DEV without having to navigate elsewhere + it just looks nice. 😎

In case you didn't already know, DEV actually allows folks to embed YouTube & Vimeo videos using the following syntax:

{% embed https://... %}

For instance, this:

{% embed https://www.youtube.com/watch?v=dQw4w9WgXcQ %}

Creates:

Sorry, couldn't help it! 😈

By the way, here's a link to the editor guide where you can see our other available embeds and various MD formatting options.

Hope this is helpful! 🙂

Collapse
 
loiclefevre profile image
Loïc

Oh, thanks a lot for your tips!!! I'll modify the post :)