基准测试:BSON vs JSON

8

根据这个基准测试,BSON需要更多的磁盘空间、创建时间、序列化时间、反序列化时间和遍历所有元素的时间。BSON的最大优势在于,遍历速度更快。那么这个基准测试有什么问题呢?


在C++版本中,BSONObj反序列化是一个无操作。应该非常快。 - ArtemGr
1个回答

8
您的问题不够清晰。谁声称"BSON的最大优势在于遍历速度更快"?维基百科说BSON被设计为"在存储空间和扫描速度方面都很高效"——但那只是设计者尝试过,不代表他们成功了。
请注意,这个基准比较了许多JSON实现,有些更快,有些更慢;显然有人花费了大量时间编写经过优化的JSON解析器——事实上,FastJson网站解释了一些高级实现技术(用谷歌翻译读取的中文)。
另请参见《高性能实体序列化:BSON vs MessagePack (vs JSON)》 底线是:这个基准测试可能是错误的,也可能没有错。作者建议尝试为特定场景重现数据,因为基准测试只是数据点。因此,请使用对您来说代表性的数据运行BSON和FastJSON(或其他对JSON具有有趣性能的程序),以便验证其性能。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接