🍋
Menu
.bson Data

BSON(Binary JSON)

BSONはMongoDBがドキュメントを保存するために使用するバイナリシリアライゼーションフォーマットです。JSONを追加のデータ型(日付、バイナリ、ObjectId、decimal128)で拡張し、ドキュメントデータベース内での効率的なエンコーディング、スキャン、インプレース更新のために設計されています。

MIMEタイプ

application/bson

種類

バイナリ

圧縮

無劣化

メリット

  • + Rich type system beyond JSON (dates, ObjectId, binary, Decimal128)
  • + Efficient for database storage — length-prefixed for fast scanning
  • + Supports in-place updates without rewriting entire documents

デメリット

  • Can be larger than JSON for string-heavy documents
  • Not human-readable — requires tooling to inspect
  • Primarily MongoDB-specific — limited use outside that ecosystem

.BSONを使うタイミング

BSONは主にMongoDBの内部で使用されます。データ交換にはJSONまたはMessagePackを推奨します。

技術的詳細

BSONドキュメントは型タグ付き要素を持つ長さプレフィックス付きバイナリです。各要素は1バイトの型識別子、Cスタイルの文字列キー、型固有の値を持ちます。これによりO(1)のサイズチェックと効率的なトラバーサルが可能です。

歴史

MongoDB Inc.(当時10gen)は2009年にMongoDBの内部ストレージおよびワイヤーフォーマットとしてBSONを開発しました。仕様はオープンで、型付きJSON風バイナリフォーマットが必要な他のプロジェクトにも採用されています。

.BSONから変換

.BSONに変換

関連フォーマット