mongodb应用程序设计

原创
2016/12/28 12:47
阅读数 20

在设计应用程序设计时,应更加注意内嵌数据和引用数据之间的权衡

下面有一个表格,来具体分析:

更适合内嵌 更适合引用
子文档较小 子文档较大
数据不会定期改变 数据经常改变
最终数据一致即可 中间阶段数据必须一致
文档数据小幅增加 文档数据大幅增加
数据通常需要执行二次查询才能获得 数据通常不包含在结果中
快速读取 快速写入

优化数据操作

1.优化文档增长

当某一字段随着用户不断添加的标签而增长,可以再文档的最后添加一个大字段进行手工填充,之后再更新时移除这个字段
目的是问了减少文档的移动频率 提高写入速度

db.test.update({“_id”:id},
{“push”:
{“tag”:{“$each”:”french”,”finedining”,”hamburgers”}
}
},
“unset”:{“garbage”:”true”})

2. 删除旧数据

通过使用固定集合capped collection
通过使用TTL集合 精确控制
通过使用多个集合

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部