Dataformat — JSON, XML, CSV, BSON

Samma kundpost uttryckt i fyra olika format.


JSON

{
"id": 1,
"name": "Anna Andersson",
"email": "anna@example.com",
"address": {
"street": "Storgatan 1",
"city": "Stockholm",
"zip": "11122"
},
"tags": ["vip", "premium"]
}

XML

<?xml version="1.0" encoding="UTF-8"?>
<customer>
<id>1</id>
<name>Anna Andersson</name>
<email>anna@example.com</email>
<address>
<street>Storgatan 1</street>
<city>Stockholm</city>
<zip>11122</zip>
</address>
<tags>
<tag>vip</tag>
<tag>premium</tag>
</tags>
</customer>

CSV

id,name,email,address_street,address_city,address_zip,tags
1,"Anna Andersson","anna@example.com","Storgatan 1","Stockholm","11122","vip;premium"

CSV kan inte representera nested data — adressen plattas ut till separata kolumner.


BSON

BSON (Binary JSON) är Mongos lagringsformat — ett binärt format som ser ut ungefär så här konceptuellt:

\x16\x00\x00\x00 // Document size
\x10id\x00\x01\x00\x00\x00 // int32 id = 1
\x02name\x00\x10\x00\x00\x00Anna Andersson\x00
...

Du skriver aldrig BSON för hand — MongoDB sköter det automatiskt.


Jämförelsetabell

FunktionJSONXMLCSVBSON
Läsbarhet⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐ (binärt)
Kompakthet⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐⭐
Nested data✅✅❌✅
DatatyperBegränsadeString-baseradeIngaRika (Date, ObjectId, etc.)
Parsing-hastighetSnabbLångsamMycket snabbMycket snabb
Vanlig användningAPI:er, configSOAP, äldre systemExcel, exportMongoDB