BSON

BSON

BSON(/ˈbiːsən/)是一種計算機數據交換格式,主要被用作MongoDB資料庫中的數據存儲和網路傳輸格式。它是一種二進制表示形式,能用來表示簡單數據結構關聯數組(MongoDB中稱為“對象”或“文檔”)以及MongoDB中的各種數據類型。BSON之名緣於JSON,含義為Binary JSON(二進制JSON)。

基本介紹

  • 中文名:BSON
  • 外文名:Binary Serialized Document Format
  • 存儲格式:類json的一種二進制形式
  • 例子:title:"MongoDB",
  • 支持:內嵌的文檔對象和數組對象
簡介,數據類型和語法,效率,參見,

簡介

BSON(/ˈbiːsən/)是一種計算機數據交換格式,主要被用作MongoDB資料庫中的數據存儲和網路傳輸格式。它是一種二進制表示形式,能用來表示簡單數據結構關聯數組(MongoDB中稱為“對象”或“文檔”)以及MongoDB中的各種數據類型。BSON之名緣於JSON,含義為Binary JSON(二進制JSON)。

數據類型和語法

BSON文檔(對象)由一個有序的元素列表構成。每個元素由一個欄位名、一個類型和一個值組成。欄位名為字元串。類型包括:
  • string
  • integer(32或64位)
  • double(64位IEEE 754浮點數)
  • decimal128(128位IEEE 754-2008浮點數;Binary Integer Decimal變體),適合作為任意精度為34個十進制數字的數字載體,最大值近似10
  • date(整數,自UNIX時間的毫秒數)
  • byte array(二進制數組)
  • 布爾(true或false)
  • null
  • BSON對象
  • BSON數組
  • JavaScript代碼
  • MD5二進制數據
  • 正則表達式Perl兼容的正則表達式,即PCRE,版本8.41,含UTF-8支持;與Python不完全兼容)
BSON的類型名義上是JSON類型的一個超集(JSON沒有date或位元組數組類型),但一個例外是沒有像JSON那樣的通用“數字”(number)類型。

效率

與JSON相比,BSON著眼於提高存儲和掃描效率。BSON文檔中的大型元素以長度欄位為前綴以便於掃描。在某些情況下,由於長度前綴和顯式數組索引的存在,BSON使用的空間會多於JSON。

參見

Wireless Binary XML(WBXML)
Efficient XML Interchange
Sereal

相關詞條

熱門詞條

聯絡我們