mongodb是nosql数据库吗 8 NoSQL | MongoDB入门实战教程( 二 )

文档版本
适用场景:
任何有版本衍变的数据库
痛点总结:
文档模型格式多,无法知道其合理性;
升级的时候需要更新太多的文档;
解决方案:
一句话概括:增加一个版本号字段!
即 快速过滤掉不需要升级的文档,升级的时候对不同版本的文档做不同的处理 。
示例模型:
// 优化前:// v1.0{"_id" : ObjectId("5de26f197edd62c5d388babb"),"name" : "TJ",  "company" : "Tapdata"}// v2.0{"_id" : ObjectId("5de26f197edd62c5d388babb"),"name" : "TJ","company" : "Tapdata","wechat": "tjtang826"}// 优化后的v2.0{"_id" : ObjectId("5de26f197edd62c5d388babb"),"name" : "TJ","company" : "Tapdata","wechat": "tjtang826","schema_version": "2.0"}4 数据访问类模式
近似处理
适用场景:
(1)网页计数(每次访问一个页面都会产生一次DB计数更新操作)
(2)各种结果不需要准确的排名(统计结果的准确性并不是十分的重要)
痛点总结:
写入太频繁,消耗系统资源
解决方案:
一句话概括:近似处理(计算)!
即 间隔写入,每隔10次 或 100次,大量减少写入需求 。

mongodb是nosql数据库吗 8 NoSQL | MongoDB入门实战教程

文章插图
5 总结
本文简单介绍了MongoDB的模型设计中的三大类常用设计模式:表现形式类、数据访问类 和 组织结构类 。通过学习这些设计模式,使我们可以在模型设计场景中恰当地套用这些设计模式,从而达到提升数据读写效率 和 降低资源的需求,最终得到一个合适的文档模型 。
下一篇,我们会学习MongoDB的索引相关知识,善用索引提高查询效率 。
参考资料
唐建法,《MongoDB高手课》(极客时间)
郭远威,《MongoDB实战指南》(图书)


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: