作者回复: 无法工作了
作者回复: 对的,频繁修改是一个设计的考量,通常这个时候要考虑分出去另外一个集合,通过引用来表示关系。
作者回复: 头像图片文件,如果只是几十KB那样,完全可以直接放在JSON里面。除非是大到数个MB,就建议分开存放了。
至于是否文件系统,有别的考量了。文件系统不容易扩展,量达到亿/十亿级别管理会很麻烦。
作者回复: 对这个动态模型就是MongoDB的特色。如果是非强类型语言如python / nodejs 会更加简单,直接JSON入库,JSON可以增加属性。
模型处理mongodb端并不需要做任何工作,主要是你Java里面要能够给一个对象动态增加属性,然后把新对象交给Mongo就可以了
作者回复: 之前的版本嵌套超过2层就会导致无法in place update, 需要把整个子文档读到应用端整体修改更新。新版本使用arryFilter可以更新任意深度了,从这个角度上来讲还好。