当前位置: 首页 > 知识库问答 >
问题:

什么是BSON,它与JSON有什么不同?

霍建柏
2023-03-14

我刚刚开始使用MongoDB,我注意到它使用BSON在内部存储数据。然而,关于什么是BSON以及如何在MongoDB中使用BSON,文档并不十分清楚。有人能给我解释一下吗?

共有3个答案

颛孙昆
2023-03-14

MongoDB以二进制编码格式表示JSON文档,因此我们称之为幕后BSON。

BSON扩展了JSON模型以提供额外的数据类型,例如

换句话说,我们可以说

将Mongodb用作

更多mongoDB文章:https://om9x.com/blog/bson-vs-json/

周弘盛
2023-03-14

>

  • 什么是BSON?

    BSON[bee·sahn]是二进制JSON的缩写,是一种类似JSON文档的二进制编码系列。

    它与JSON有什么不同?

    BSON被设计为在空间上高效,但在某些情况下并不比JSON高效多少。在某些情况下,BSON甚至比JSON使用更多的空间。原因是BSON的另一个设计目标:可遍历性。BSON为文档添加了一些“额外”信息,如字符串和子对象的长度。这使得遍历更快。

    BSON也被设计成能够快速编码和解码。例如,整数存储为32(或64)位整数,因此它们不需要在文本之间进行解析。对于小整数,这比JSON使用更多的空间,但解析速度要快得多。

    除了紧凑之外,BSON还添加了JSON中不可用的其他数据类型,特别是BinData和Date数据类型。

    资料来源:http://bsonspec.org/

  • 劳韬
    2023-03-14

    BSON是MongoDB在集合中存储文档时使用的类似JSON文档的二进制编码。它增加了对数据类型(如日期和二进制)的支持,这些数据类型在JSON中不受支持。

    实际上,在使用MongoDB时,您不必对BSON了解太多,您只需要在构建文档时使用语言的本机类型及其驱动程序提供的类型(例如ObjectId),驱动程序会将它们映射到适当的BSON类型。

     类似资料:
    • 问题内容: 最近,我看到了带有“ webkit”标签的问题。这些问题通常是与CSS,jQuery,布局,跨浏览器兼容性问题等有关的基于Web的问题。 那么,这是什么“ Webkit”,它与CSS有什么关系?我还注意到各种网站的源代码中有很多属性。这两个有关系吗? 更新资料 因此,从到目前为止的答案来看… WebKit是Safari / Chrome的HTML / CSS Web浏览器呈现引擎。是否

    • 问题内容: 我们知道根目录是/,根据posix,还有另一个目录//与/不同。当使用ls /和ls //时,输出与stat相同,但是,如果cd /和cd //则输出不同,尽管目录内容相同。那真的让我感到困惑。有人得到答案了吗? 问题答案: 从Bash常见问题解答:

    • 本文向大家介绍contextType是什么?它有什么用?相关面试题,主要包含被问及contextType是什么?它有什么用?时的应答技巧和注意事项,需要的朋友参考一下 定义当前组件要使用哪一个context

    • 本文向大家介绍childContextTypes是什么?它有什么用?相关面试题,主要包含被问及childContextTypes是什么?它有什么用?时的应答技巧和注意事项,需要的朋友参考一下 childContextTypes用来定义context数据类型,该api从16.3开始已被废弃 使用方式

    • 问题内容: 我刚刚才知道有和值在这是从正常的不同和? 有人可以深入解释什么是真实和虚假的价值观吗? 我应该在哪里使用它们? 是什么区别和值和和价值观? 问题答案: 如评论所述,它仅指评估为True或False的值。 例如,查看列表是否不为空,而不是像这样检查: 您可以简单地做到这一点: 这是因为在评估布尔值时,某些值(例如空列表)被视为False。非空列表为True。 类似地,对于整数,对于,空字

    • 本文向大家介绍flex与其他有什么不同,用它有什么好处?相关面试题,主要包含被问及flex与其他有什么不同,用它有什么好处?时的应答技巧和注意事项,需要的朋友参考一下 flex 从根本上不同于之前常用的借助 定位、浮动 的布局。从逻辑思路上来说,flex 布局具有宏观性,提供了一种对于页面中元素如何排布的框架,开发者不需要关注细节和进行额外的操作,就能使得一系列元素按约定的规则排列。而之前常用的借