列出适用于嵌入式文档设计的mongodb应用场景(预规范化预防)

日期:2019-09-08 10:34点击数:

网站订购系统适用于反范式设计。
首先,让我们比较规范化和范式之间的差异和关系。各种文档中使用的数据可以是在线(反规范化)或引用(范例)。
(1)非规范化产生不一致的数据。
如果不能容忍某些不一致,则应使用标准化。
但是,反规范化可以有效地阻止阅读速度,效果不太一致。
(2)在阅读频率高于写入频率的系统上,反小精灵是有意义的。
如果您需要有效地读取冗余数据但很少更改它,那么更新是值得的。
更新频率越高,此设计的好处就越少。
因此,使用范例设计的应用程序应在每次验证时执行其他搜索。如果您不能支付此类费用并且不强调一致性,请使用非规范化。
查询无法检索完整订单。读取速度较慢,但??所有订单的一致性都得到保证。
几个文档将自动更新(因为只更新参考文档)。
因此,在选择范式化和反规范化时,主要考虑以下因素:你读过几乎没有变化的数据吗?
更新越少,防止规范化的效果越好。很难提及很少改变的数据,例如姓名,生日股票代码和地址。
2.一致性非常重要吗?
如果一致性很重要,请选择一个范例。否则,可以考虑非规范化。
你想尽快阅读吗?
然后,根据上面的讨论,对应用场景进行简单分析:在网站订购系统中,主要考虑读取的效率和速度,自动将订单的产品信息变更为一些文件它不会更新。
由于应用程序可以控制一致性保证,因此订单信息非常适合非标准化,因为产品信息不会经常更改,也不必更新。顺序