勵志

勵志人生知識庫

bson格式

BSON(Binary Serialized Document Format)是一種高效的二進制數據序列化格式,主要用於存儲和交換數據,特別是在文檔型資料庫中。它基於JSON格式,但與JSON相比,BSON在存儲和傳輸數據時占用更少的空間,並且在解析和處理數據時更高效。BSON支持嵌套的文檔和數組,具有輕量性、可遍歷性和高效性的特點,能有效描述非結構化和結構化數據。

BSON的主要改進包括:

更快的遍歷速度:BSON在每個元素的頭部存儲了元素的長度,使得數據可以直接跳轉到指定位置進行讀取,而不是像JSON那樣需要掃描整個文檔。

操作更簡易:BSON提供了一種更高效的修改機制,特別是對於數字類型的值,避免了數據遷移的問題。

增加了額外的數據類型:如「byte array」,這使得二進制的存儲不再需要先base64轉換後再存成JSON。

BSON的主要套用場景包括MongoDB資料庫中的數據存儲和網路傳輸。在MongoDB中,BSON不僅是數據存儲格式,也是查詢和數據交換的基礎。

BSON文檔(對象)由一個有序的元素列表構成,每個元素由一個欄位名、一個類型和一個值組成。欄位名為字元串,類型包括BSON的類型名義上是JSON類型的一個超集,但沒有像JSON那樣的通用「數字」(number)類型。與JSON相比,BSON著眼於提高存儲和掃描效率。BSON文檔中的大型元素以長度欄位為前綴以便於掃描。