1
1
每次更改父级时,都会创建子级的副本:如果父级数据更改过多,则会很快耗尽存储空间。此外,将所有子记录更改存储在单个父记录中会导致父记录膨胀(因为有很多子记录往往会膨胀),这可能会影响数据检索的性能。 存储版本化数据有许多不同的方法,但它们分为两类:
在这些方法之间进行选择取决于您希望如何处理历史版本。它们只是为了回滚吗?还是用户会定期浏览更改? 另一个复杂的问题并不总是适用的,但我认为在这里可能是相关的(因为您建议的解决方案),是父母和孩子之间的关系变化:当您显示父母的历史版本时,您需要显示孩子的适当版本吗?反之亦然,如果显示的是旧版本的子级,是否需要显示其父级(和同级)的适当版本? 您需要确定的关键是:大多数用户大部分时间都要做什么?优先考虑。如果最常见的用例是 只查看所有记录的当前版本 然后,您应该使用单独的表来存储版本。 如果您需要记录应用于给定父版本的子版本,那么可以引入一个附加的框架表(父\u id、父\u version、子\u id、子\u version)。当只有一个父级和一个子级的表时,维护此表并不太麻烦。当你有多个孩子的时候,你需要跟踪,这会让你很不舒服。 |
Eddiex045 · 比较两个文本文件,匹配项转到一个新文件 2 年前 |
NOBUD · 最大堆插入函数实现C++ 2 年前 |
riasc · 嵌套贴图结构创建空贴图 6 年前 |
Akshay Barpute · cpp中的以下链表程序有什么问题? 6 年前 |
Batwoman05 · C++中是否有具有类似函数的树集数据结构 6 年前 |