阅读 66

bson和json

mongodb中的数据存储是以Bson的形式存储的,Bson是二进制的json,所以看上去记录的形式类似于json数据。
mongodb集合中的数据,不同于sql型数据库中的数据,mongodb中文档结构可以不同,可以使用嵌套的文档结构,因此扩展性非常好

JSON 是把对象序列化为字符串,BSON 是把对象序列化为二进制。
BSON 还比 JSON 多支持了几种数据类型,如Date和BinData类型
JSON修改要大动大移,需要扫字符串,而BSON就不需要,可以直接定位。(可遍历)
BSON的编码与解码速度很快。(高效)
(1)更快的遍历速度
对JSON格式来说,太大的JSON结构会导致数据遍历非常慢。在JSON中,要跳过一个文档进行数据读取,需要对此文档进行扫描才行,需要进行麻烦的数据结构匹配,比如括号的匹配,而BSON对JSON的一大改进就是,它会将JSON的每一个元素的长度存在元素的头部,这样你只需要读取到元素长度就能直接seek到指定的点上进行读取了。
2.操作更简易
对JSON来说,数据存储是无类型的,比如你要修改基本一个值,从9到10,由于从一个字符变成了两个,所以可能其后面的所有内容都需要往后移一位才可以。而使用BSON,你可以指定这个列为数字列,那么无论数字从9长到10还是100,我们都只是在存储数字的那一位上进行修改,不会导致数据总长变大。当然,在MongoDB中,如果数字从整形增大到长整型,还是会导致数据总长变大的。

原文:https://www.cnblogs.com/kopok/p/15196402.html

文章分类
代码人生
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐