二进制Javascript对象表示法(BSON)是一种二进制编码的JSON文档的序列化。JSON是容易理解的,因为它是人类可读的,但与BSON相比,它支持更少的数据类型。BSON一直延伸到添加一些可选non-JSON-native数据类型,日期和二进制数据。

MongoDB BSON格式存储数据通过网络在内部和。它也用于mongodump生成的输出文件的格式。阅读BSON文档的内容,你需要将它转换成一个人类可读的格式(如JSON。

通过这篇文章,你将学习如何BSON文档转换为JSON。我将解释的方法包括使用bsondump mongoexport, Python, Bash。

BSON与bsondump JSON

bsondump转换BSON文件转换成人类可读的格式,包括JSON。例如,bsondump生成的输出文件是有用的阅读吗mongodumpbsondump工具的一部分MongoDB数据库工具包中。

运行bsondump从系统命令行:

它将创建一个JSON文件(集合. json从现有的BSON文档()集合.bson),类似于之后创建的备份你的数据库。

BSON与mongoexport JSON

mongoexport是一个命令行工具,产生一个JSON或CSV导出的数据存储在MongoDB实例。mongoexport工具的一部分MongoDB数据库工具包中。

运行mongoexport从命令行:

连接到本地MongoDB实例运行在端口27017上,你不需要指定主机和端口。如果另有需要,检查连接到MongoDB实例部分文档的更多信息。

- - -漂亮的选项将漂亮的JSON文件的内容格式。

BSON与Python JSON

如果你是一个Python开发人员,有两种方法用于读取BSON文档并将它转换为JSON。

  1. 使用bson模块从PyMongo

这是脚本做什么:

    1. 导入decode_all转储方法从bson模块。
    2. 打开文件读取和解码数据的内容。
    3. 创建一个JSON文件,编写JSON文档创建BSON数据的文件。

mongodump生成的脚本使用BSON文件。在运行脚本之前,您必须安装PyMongo:皮普安装pymongo

  1. 连接到数据库和查询数据与PyMongo, MongoDB的Python驱动程序。

这是脚本做什么:

    1. 导入方法MongoClientpymongo图书馆,转储方法从bson模块。
    2. 建立到数据库的连接。
    3. 设置数据库(例如,公司)和集合(例如,员工)你想查询。
    4. 检索文档的集合找到()方法和结果创建一个列表。如果你不传递任何参数,这种方法,结果将类似选择*在MySQL。
    5. 通过调用创建一个JSON对象转储方法。的缩进=2参数会告诉转储()漂亮的格式的JSON对象。
    6. 写的内容json_data变量的数据. json文件。

在运行脚本之前,您必须安装PyMongo:皮普安装pymongo

BSON与Bash JSON

我问的AIphind.com告诉我如何BSON文件转换为JSON,其中一个解决方案,它向我展示了创建一个Bash脚本BSON文件的目录。

脚本列出所有BSON文件在当前目录并将结果保存在一个数组,然后遍历该数组,每个BSON文件转换为JSON文件。该脚本使用bsondump

运行该脚本

  1. 向脚本添加执行权限:修改文件权限+xbson_to_json. sh
  2. 在命令行中执行这个命令:

结论

如果你想阅读BSON文档的内容,您可以使用bsondump和mongoexport BSON文档转换为一个人类可读的格式(如JSON。这些工具的一部分MongoDB数据库工具

如果你是一名开发人员,您可以使用MongoDB司机你的编程语言的选择和查询数据分析数据库中的集合的内容。对于Python,您可以安装PyMongo,连接到数据库,查询和使用的数据bson模块将内容保存为一个JSON文档。

还有其他的解决方案,如网上其他编程语言提供的工具和方法,但是在这里你学到了一些方法。

雷竞技下载官网MongoDB Percona分布是一个免费的MongoDB数据库选择,给你一个解决方案,结合了最好的和最重要的开放源码社区的企业组件,设计和测试一起工作。

今天下载Mongo雷竞技下载官网DB Percona分布!

订阅
通知的
客人

0评论
内联反馈
查看所有评论