我遵循了Google的Bookshelf App教程(在node.js中),而不是书籍目录,我希望对生产零件目录进行建模。
零件由“子”零件和任务组成。 每个“子”部分都可以再次具有“子”部分和任务(制造步骤)。
当前实现 :目前,我只有两种 Parts 和 Tasks 。 部件之间的关系是通过将父部件的唯一键(parentId)存储在其子部件中的属性来管理的。例如,我目前最大的麻烦是,高度嵌套的子部件的价格变化将需要递归地更新所有父部件...
问题:对于此类应用程序,推荐的数据存储设计是什么?
它应该解决或提高效率:
答案 0 :(得分:0)
一种潜在的解决方案是避免将总价格完全存储在数据存储区中。相反,每个零件或任务上的“价格”应仅包括该零件本身的成本,而不包括子零件的成本。
取而代之的是在需要时即时计算价格,将整个零件/子零件/任务树加起来。如果要加快计算速度,请将其存储在内存缓存中(但在更新价格时请确保删除内存缓存键)。