Format Atlas

Vergleichen

BSON vs. MessagePack

BSON und MessagePack können binäre, dokumentähnliche Daten darstellen. BSON ist jedoch eine mit MongoDB verbundene typisierte Dokumentdarstellung, MessagePack ein allgemeines Objektserialisierungsformat.

Welches Format sollten Sie wählen?

Verwenden Sie BSON für MongoDB-Dokumente und BSON-spezifische Werte wie ObjectId und Datumsangaben. MessagePack eignet sich für kompakten Objektaustausch außerhalb von MongoDB; vereinbaren Sie Erweiterungstypen und deren Unterstützung.

Geeignet für BSON

MongoDB-Dokumente serialisieren · Dokumente zwischen BSON-fähigen Werkzeugen austauschen

  • Typen wie Datumswerte und Binärdaten erhalten
  • Treiber und Werkzeuge verwenden, die BSON lesen und schreiben

Geeignet für MessagePack

JSON-ähnliche Daten binär serialisieren · Strukturierte Daten zwischen kompatiblen Anwendungen austauschen

  • JSON-artige Arrays, Maps und Grundwerte binär codieren
  • Erweiterungswerte und Zeitstempel zwischen kompatiblen Bibliotheken austauschen

Grundlegende Informationen

MerkmalBSONMessagePack
Dateiendung.bson.msgpack, .mpk
MIME-Typapplication/bsonapplication/octet-stream
Häufige VerwendungMongoDB-Dokumente serialisieren · Dokumente zwischen BSON-fähigen Werkzeugen austauschenJSON-ähnliche Daten binär serialisieren · Strukturierte Daten zwischen kompatiblen Anwendungen austauschen
ÖffnenLesen Sie die Datei mit mongorestore oder einem BSON-fähigen Werkzeug beziehungsweise einer Bibliothek. Zur Prüfung des Inhalts können Sie BSON in Extended JSON oder eine andere lesbare Darstellung umwandeln. Bearbeiten Sie die Binärdatei nicht im Texteditor.Lesen Sie die Datei mit einer MessagePack-fähigen Bibliothek oder einem Decoder. Zur Prüfung eignen sich Diagnose-Notation oder eine JSON-ähnliche Ansicht. Achten Sie darauf, wie Binärdaten und Erweiterungen angezeigt werden.
Exportieren oder konvertierenBei einer Umwandlung in JSON benötigen Datumswerte, ObjectId und Binärwerte möglicherweise Extended-JSON-Notation oder eine anwendungsspezifische Darstellung, da Standard-JSON keine passenden Typen hat. Wählen Sie für eine verlustarme Hin- und Rückumwandlung ein Verfahren, das Typinformationen erhält, und testen Sie echte Daten.Bei einer Umwandlung in JSON benötigen Binärdaten und Erweiterungen möglicherweise Arrays, Zeichenfolgen oder werkzeugspezifische Hüllen, da Standard-JSON keine direkten Entsprechungen hat. Testen Sie für Hin- und Rückumwandlungen echte Werte, Zahlenbereiche, Zeitstempel, Map-Schlüssel und Erweiterungstypen.

Nach Einsatzzweck wählen

Typen wie Datumswerte und Binärdaten erhalten

MongoDB-Dokumente serialisieren · Dokumente zwischen BSON-fähigen Werkzeugen austauschen

BSON

Treiber und Werkzeuge verwenden, die BSON lesen und schreiben

MongoDB-Dokumente serialisieren · Dokumente zwischen BSON-fähigen Werkzeugen austauschen

BSON

JSON-artige Arrays, Maps und Grundwerte binär codieren

JSON-ähnliche Daten binär serialisieren · Strukturierte Daten zwischen kompatiblen Anwendungen austauschen

MessagePack

Erweiterungswerte und Zeitstempel zwischen kompatiblen Bibliotheken austauschen

JSON-ähnliche Daten binär serialisieren · Strukturierte Daten zwischen kompatiblen Anwendungen austauschen

MessagePack

Wichtiger Punkt 1

BSON definiert längenpräfixierte Dokumente und Arrays mit expliziten Typen wie Datum, ObjectId und Decimal128. MessagePack bietet allgemeine Maps, Arrays, Zahlen, Text, Binärwerte und anwendungsspezifische Erweiterungen.

Unterschiede im Detail

Wichtiger Punkt 2

BSON passt zum MongoDB-Dokumentmodell und seinen Werkzeugen; MessagePack dient der allgemeinen Serialisierung ohne bestimmte Datenbank.

Unterschiede im Detail

Unterschiede im Detail

Wählen Sie BSON bei benötigten MongoDB-kompatiblen Dokumenttypen und MessagePack für ein datenbankunabhängiges Binärobjektprotokoll. Ordnen Sie vor der Konvertierung Datum, Ganzzahlbreite, Dezimalzahl, ObjectId und Erweiterungen zu und testen Sie den Rundlauf.

  • Beide Formate sind binär, unterscheiden sich aber in Struktur und Typsystem und sind nicht direkt gegenseitig lesbar.
  • BSON definiert dokumentbezogene Typen und Konventionen. Bei MessagePack muss die Anwendung die Bedeutung von Erweiterungscodes festlegen.
  • Eine Konvertierung kann Datumsangaben, Zahlenbereiche, Dezimalwerte oder Identifikatorsemantik ändern. Dokumentieren Sie Zuordnungen und validieren Sie Werte beim Empfänger.

Häufige Fragen

Kann ich eine BSON-Datei einfach in MessagePack umbenennen?

Nein. Eine andere Endung konvertiert weder Binärstruktur noch Typen; nötig sind Dekodierung und erneute Serialisierung mit expliziten Feldzuordnungen.

Mehr erfahren

Quellen und Spezifikationen