Vergleichen
BSON oder JSON
BSON ist ein längenpräfixiertes Binärdokumentformat mit JSON-ähnlicher Struktur und zusätzlichen Typen wie Datum, Binärwert und ObjectId. JSON ist ein Textformat nach RFC 8259 mit guter Lesbarkeit und breiter Werkzeugunterstützung.
Welches Format sollten Sie wählen?
BSON eignet sich für MongoDB-kompatible Dokumente und explizite Datums-, Binär- oder Kennungstypen. JSON ist oft einfacher für menschliche Prüfung, Web-APIs und Textkonfigurationen.
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 JSON
Web-APIs, Konfigurationsdateien und Datenaustausch
- Übertragen strukturierter Daten
Grundlegende Informationen
| Merkmal | BSON | JSON |
|---|---|---|
| Dateiendung | .bson | .json |
| MIME-Typ | application/bson | application/json |
| Häufige Verwendung | MongoDB-Dokumente serialisieren · Dokumente zwischen BSON-fähigen Werkzeugen austauschen | Web-APIs, Konfigurationsdateien und Datenaustausch |
| Öffnen | Lesen 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. | Öffnen Sie die Datei in einem Texteditor, einer IDE oder einem JSON-fähigen Viewer. |
| Exportieren oder konvertieren | Bei 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. | Anwendungen oder Konvertierungswerkzeuge können sie in Formate wie CSV umwandeln. |
Nach Einsatzzweck wählen
Typen wie Datumswerte und Binärdaten erhalten
MongoDB-Dokumente serialisieren · Dokumente zwischen BSON-fähigen Werkzeugen austauschen
BSONTreiber und Werkzeuge verwenden, die BSON lesen und schreiben
MongoDB-Dokumente serialisieren · Dokumente zwischen BSON-fähigen Werkzeugen austauschen
BSONÜbertragen strukturierter Daten
Web-APIs, Konfigurationsdateien und Datenaustausch
JSONWichtiger Punkt 1
BSON speichert Dokumentlängen und Elementtypen binär, darunter date, binary und ObjectId. JSON ist Text und kennt in seinen Grundtypen weder Datum noch Bytefolge.
Unterschiede im DetailWichtiger Punkt 2
BSON unterscheidet int32, int64 und double. JSON-Zahlen tragen diese Typkennzeichnungen nicht; Laufzeiten können Wertebereich und Genauigkeit unterschiedlich behandeln.
Unterschiede im DetailUnterschiede im Detail
Verwenden Sie BSON, wenn Datenbank oder Protokoll BSON-Typen und Dokumentrahmung erwarten. Verwenden Sie JSON, wenn Textinteroperabilität und Prüfung wichtig sind. Legen Sie die Abbildung spezieller Werte fest und testen Sie konkrete Treiber und Verbraucher.
- BSON ist nicht einfach JSON in binärer Serialisierung. Die Spezifikation definiert typisierte Dokumente mit expliziten Längen und BSON-spezifischen Werten.
- Bei BSON-zu-JSON-Konvertierung können ObjectId-Identität, Datumspräzision oder Zeitzonenannahmen, Binär-Subtype, Decimal128-Verhalten, Ganzzahlgenauigkeit oder Semantik doppelter Schlüssel verloren gehen.
- Prüfen Sie Zahlenbereiche, Array-Reihenfolge, eingebettete Dokumente, null und fehlende Felder, Binärcodierung und Konventionen erweiterter JSON-Darstellungen.
Häufige Fragen
Kann Standard-JSON jeden BSON-Wert direkt darstellen?
Nein. JSON hat keine nativen Typen für ObjectId, Datum oder beliebige Bytefolgen. Anwendungen nutzen Konventionen oder Extended JSON, die beide Seiten vereinbaren müssen.