fbpx
维基百科

BSON

BSON/ˈbsən/)是一种计算机数据交换格式,主要被用作MongoDB数据库中的数据存储和网络传输格式。它是一种二进制表示形式,能用来表示简单数据结构关联数组(MongoDB中称为“对象”或“文档”)以及MongoDB中的各种数据类型。BSON之名缘于JSON,含义为Binary JSON(二进制JSON)[2]

BSON
扩展名.bson
互联网媒体类型[1]
格式类型数据交换
扩展自JSON
标准尚无RFC
网站bsonspec.org

数据类型和语法 编辑

BSON文档(对象)由一个有序的元素列表构成。[3][4]每个元素由一个字段名、一个类型和一个值组成。字段名为字符串。类型包括:

  • string
  • integer(32或64位)
  • double(64位IEEE 754浮点数)
  • decimal128(128位IEEE 754-2008浮点数;Binary Integer Decimal英语Binary Integer Decimal变体),适合作为任意精度为34个十进制数字的数字载体,最大值近似106145
  • date(整数,自UNIX时间的毫秒数)
  • byte array(二进制数组)
  • 布林truefalse
  • null
  • BSON对象
  • BSON数组
  • JavaScript代码
  • MD5二进制数据
  • 正则表达式Perl兼容的正则表达式,即PCRE英语PCRE,版本8.41,含UTF-8支持;与Python不完全兼容)[5]

BSON的类型名义上是JSON类型的一个超集(JSON没有date或字节数组类型[6]),但一个例外是没有像JSON那样的通用“数字”(number)类型。

效率 编辑

与JSON相比,BSON着眼于提高存储和扫描效率。BSON文档中的大型元素以长度字段为前缀以便于扫描。在某些情况下,由于长度前缀和显式数组索引的存在,BSON使用的空间会多于JSON。[2]

例子 编辑

一个内容为{"hello":"world"}的文档将存储为:

Bson:  \x16\x00\x00\x00 // 总文档大小  \x02 // 0x02 = 类型:String(字符串)  hello\x00 // 字段名  \x06\x00\x00\x00world\x00 // 字段值(值大小,值,空终止符)  \x00 // 0x00 = 类型:EOO('end of object',对象结尾) 

参见 编辑

  • 数据系列化格式比较英语Comparison of data-serialization formats
  • JSON
  • CBOR英语CBOR
  • Smile英语Smile_(data_interchange_format)(二进制JSON)
  • UBJSON英语UBJSON
  • Protocol Buffers
  • Action Message Format英语Action Message Format
  • Thrift
  • MessagePack
  • 文件導向的數據庫
  • ASN.1
  • Wireless Binary XML英语Wireless Binary XML(WBXML)
  • Efficient XML Interchange英语Efficient XML Interchange

参考文献 编辑

  1. ^ MIME Media Types - The Internet Assigned Numbers Authority. [2018-03-18]. (原始内容于2012-12-21). 
  2. ^ 2.0 2.1 BSON Specification. [2018-03-18]. (原始内容于2011-09-28). 
  3. ^ BSON (Binary JSON): Specification. [2018-01-17]. (原始内容于2018-01-17). 
  4. ^ Introducing NoSQL and MongoDB | What Is NoSQL? | InformIT. [2018-01-17]. (原始内容于2018-01-17). 
  5. ^ regex – Tools for representing MongoDB regular expressions — PyMongo 3.6.0 documentation. [2018-01-17]. (原始内容于2018-01-18). 
  6. ^ JSON Specification. [2018-03-18]. (原始内容于2011-02-23). 

外部链接 编辑

bson, 是一种计算机数据交换格式, 主要被用作mongodb数据库中的数据存储和网络传输格式, 它是一种二进制表示形式, 能用来表示简单数据结构, 关联数组, mongodb中称为, 对象, 文档, 以及mongodb中的各种数据类型, 之名缘于json, 含义为binary, json, 二进制json, 扩展名, bson互联网, 媒体类型无, cite, mime, class, reference, href, cite, note, mime, 格式类型数据交换扩展自json标准尚无rfc网站bson. BSON ˈ b iː s e n 是一种计算机数据交换格式 主要被用作MongoDB数据库中的数据存储和网络传输格式 它是一种二进制表示形式 能用来表示简单数据结构 关联数组 MongoDB中称为 对象 或 文档 以及MongoDB中的各种数据类型 BSON之名缘于JSON 含义为Binary JSON 二进制JSON 2 BSON扩展名 bson互联网 媒体类型无 sup id cite ref mime 1 0 class reference a href cite note mime 1 1 a sup 格式类型数据交换扩展自JSON标准尚无RFC网站bsonspec wbr org 目录 1 数据类型和语法 2 效率 3 例子 4 参见 5 参考文献 6 外部链接数据类型和语法 编辑BSON文档 对象 由一个有序的元素列表构成 3 4 每个元素由一个字段名 一个类型和一个值组成 字段名为字符串 类型包括 string integer 32或64位 double 64位IEEE 754浮点数 decimal128 128位IEEE 754 2008浮点数 Binary Integer Decimal 英语 Binary Integer Decimal 变体 适合作为任意精度为34个十进制数字的数字载体 最大值近似106145 date 整数 自UNIX时间的毫秒数 byte array 二进制数组 布林 true或false null BSON对象 BSON数组 JavaScript代码 MD5二进制数据 正则表达式 Perl兼容的正则表达式 即PCRE 英语 PCRE 版本8 41 含UTF 8支持 与Python不完全兼容 5 BSON的类型名义上是JSON类型的一个超集 JSON没有date或字节数组类型 6 但一个例外是没有像JSON那样的通用 数字 number 类型 效率 编辑与JSON相比 BSON着眼于提高存储和扫描效率 BSON文档中的大型元素以长度字段为前缀以便于扫描 在某些情况下 由于长度前缀和显式数组索引的存在 BSON使用的空间会多于JSON 2 例子 编辑一个内容为 hello world 的文档将存储为 Bson x16 x00 x00 x00 总文档大小 x02 0x02 类型 String 字符串 hello x00 字段名 x06 x00 x00 x00world x00 字段值 值大小 值 空终止符 x00 0x00 类型 EOO end of object 对象结尾 参见 编辑数据系列化格式比较 英语 Comparison of data serialization formats JSON CBOR 英语 CBOR Smile 英语 Smile data interchange format 二进制JSON UBJSON 英语 UBJSON Protocol Buffers Action Message Format 英语 Action Message Format Thrift MessagePack 文件導向的數據庫 MongoDB ASN 1 Wireless Binary XML 英语 Wireless Binary XML WBXML Efficient XML Interchange 英语 Efficient XML Interchange 参考文献 编辑 MIME Media Types The Internet Assigned Numbers Authority 2018 03 18 原始内容存档于2012 12 21 2 0 2 1 BSON Specification 2018 03 18 原始内容存档于2011 09 28 BSON Binary JSON Specification 2018 01 17 原始内容存档于2018 01 17 Introducing NoSQL and MongoDB What Is NoSQL InformIT 2018 01 17 原始内容存档于2018 01 17 regex Tools for representing MongoDB regular expressions PyMongo 3 6 0 documentation 2018 01 17 原始内容存档于2018 01 18 JSON Specification 2018 03 18 原始内容存档于2011 02 23 外部链接 编辑BSON Specification 页面存档备份 存于互联网档案馆 BSON documentation on the MongoDB website 页面存档备份 存于互联网档案馆 bsondump tool included with MongoDB 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title BSON amp oldid 77725320, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。