MongoDB存储JSON对象的问题?

如果Mongo数据库的的某一字段是一个JSON对象,是直接以对象存储比较好,还是序列化为字符串再存储起来比较好,两种方式各有什么优缺点,适用场景?在性能上与空间大小上是否有区别?为什么?

阅读 7.2k
1 个回答

如果有对这个对象中的字段的查询需求(或者潜在查询需求),显然以对象存储会更好,因为字符串根本就没有办法查询。
写入效率上,对象最终会序列化成为BSON,通常BSON都会比JSON更小,所以写入上字符串也并没有优势。
各种场景中,我只会觉得对象的序列化和反序列化会比字符串花费更多时间。但话说回来,既然是JSON,就算不在驱动的级别序列化与反序列化,也一定会在其他某个地方完成,这样来说其实就没有什么区别了。
总之从各个方面来看,对象都是会优于字符串的。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进