Format Atlas

FORMAT COMPARISON

BSON vs JSON

BSONは長さ情報を持つバイナリ文書形式で、JSONに似た文書構造に加えて日付、バイナリ、ObjectId等の型を表現します。JSONはRFC 8259のテキスト形式で、可読性と幅広いツール対応が強みです。

最終確認: 2026-09-27

BSONとJSON、どちらを選ぶ?

MongoDB互換の文書データ、明示的な型やバイナリ値が必要ならBSONを検討します。人による確認、Web APIやテキスト設定との連携ではJSONが扱いやすい候補です。利用ライブラリ・プロトコルが期待する厳密な型、数値範囲、日付表現を確認してください。

BSON向き

MongoDB文書データのシリアライズ・BSON対応アプリ間での文書データ交換

  • 日付やバイナリなどJSONにない型を扱う
  • BSONを直接読み書きするドライバーやツールを使う

JSON向き

Web API・設定ファイル・データ交換

  • 構造化データの受け渡し

基本情報を比較

BSONとJSONの主な違いを確認できます。

項目BSONJSON
拡張子.bson.json
MIME Typeapplication/bsonapplication/json
主な用途MongoDB文書データのシリアライズ・BSON対応アプリ間での文書データ交換Web API・設定ファイル・データ交換
圧縮none該当なし
開く方法MongoDBのmongorestoreやBSON対応ツール・ライブラリで読み込みます。中身を確認する場合はBSONをExtended JSONなどへ変換して表示します。バイナリファイルをテキストエディタで編集しないでください。テキストエディタ、IDE、JSON対応ビューアで開けます。
書き出し・変換JSONへ変換する際、日付・ObjectId・バイナリなどは標準JSONに対応する型がないため、Extended JSONの表記やアプリ固有の表現に置き換わる場合があります。往復変換が必要なら型情報が保たれる方法を選び、実データで確認します。アプリケーションや変換ツールでCSVなどへ変換できます。

用途別の選び方

作りたいものや使う場面から選べます。

日付やバイナリなどJSONにない型を扱う

MongoDB文書データのシリアライズ・BSON対応アプリ間での文書データ交換

BSON向き

BSONを直接読み書きするドライバーやツールを使う

MongoDB文書データのシリアライズ・BSON対応アプリ間での文書データ交換

BSON向き

構造化データの受け渡し

Web API・設定ファイル・データ交換

JSON向き

確認ポイント 1

BSONは文書の長さと要素型をバイナリで記録し、string、document、array、date、binary、ObjectIdなどを持ちます。JSONは文字列で送受信するテキスト構文で、日付やバイト列専用の基本型を定義しません。

使い分け

確認ポイント 2

JSONは汎用的に読めますが、数値の範囲や精度は実装差に注意が必要です。BSONにはint32、int64、double等がある一方、JSONへ変換すると型の区別やバイナリ値の表し方が失われる場合があります。

使い分け

選ぶ理由を詳しく

  • BSONは「JSONをそのままバイナリ化したもの」ではありません。変換時はObjectId、日付の時刻帯・精度、binary subtype、Decimal128、整数精度、配列順序、重複キーの扱いを確認してください。

詳しく見る

参考資料・仕様