BSON Document與JSON都是用于數據序列化和傳輸的格式。BSON簡單來說就是Binary JSON的縮寫,它是一種二進制的JSON格式。
和JSON相比,BSON在傳輸和存儲時更加高效,因為它是二進制的,所以不需要像JSON那樣進行文本解析。BSON也能夠存儲更多的數據類型。
下面代碼是一個BSON Document的例子:
{"name": "Lucy", "age": 25, "is_student": true, "grades": [80, 90, 95, 87], "address": { "zip": "123456", "city": "Beijing", "country": "China" } }
和JSON一樣,BSON Document可以存儲鍵值對以及嵌套的結構。BSON還額外支持了一些數據類型,比如日期和二進制數據。
下面代碼是一個包含了日期和二進制數據的BSON Document的例子:
{"name": "Alex", "birthday": {"$date": "1997-05-25T00:00:00Z"}, "profile_pic": {"$binary": "iVBORw0KGg...","$type": "00"} }
從這個例子中,我們可以看到$符號的作用。$符號是用來表示特殊類型的一個標識符。$date表示日期類型,$binary表示二進制數據類型。
BSON Document在MongoDB中得到了廣泛的應用,因為MongoDB是一個NoSQL數據庫,其數據存儲的核心就是BSON Document。