gpt4 book ai didi

database - 为什么我们需要时态数据库?

转载 作者:太空狗 更新时间:2023-10-30 01:37:55 26 4
gpt4 key购买 nike

我正在阅读有关时态数据库的文章,它们似乎内置了时间方面的内容。我想知道为什么我们需要这样的模型?

它与普通的 RDBMS 有何不同?我们不能有一个普通的数据库,即 RDBMS,并说有一个触发器将时间戳与发生的每个事务相关联吗?可能会有性能下降。但我仍然怀疑时态数据库在市场上是否有强有力的案例。

目前的数据库是否支持这样的功能?

最佳答案

考虑一下您的约会/日记 - 从 1 月 1 日到 12 月 31 日。现在我们可以在日记中查询任何一天的约会/日记条目。此顺序称为有效时间。但是,约会/条目通常不会按顺序插入。

假设我想知道 4 月 4 日我的日记中有哪些约会/条目。也就是4月4日我日记里存在的所有记录。这是交易时间

鉴于可以创建和删除约会/条目等。典型的记录具有涵盖条目期间的开始和结束有效时间以及指示条目出现在期间的开始和结束事务时间日记。

当日记可能进行历史修改时,这种安排是必要的。假设在 4 月 5 日,我意识到我在 2 月 14 日的约会实际上发生在 2 月 12 日,即我发现我的日记中有错误 - 我可以更正错误以便更正有效时间图片,但现在,我查询的是什么在 4 月 4 日的日记中是错误的,除非,约会/条目的交易时间也被存储。在那种情况下,如果我查询 4 ​​月 4 日的日记,它会显示 2 月 14 日存在约会,但如果我查询 4 ​​月 6 日的日记,它会显示 2 月 12 日的约会。

时态数据库的这种时间旅行特性使得记录有关如何在数据库中更正错误的信息成为可能。这对于记录修改时间的真实数据审计图是必要的,并允许查询与数据修改方式相关的问题时间。

大多数业务信息应存储在这种双时态方案中,以便提供真实的审计记录并最大限度地提高商业智能 - 因此需要关系数据库的支持。请注意,每个数据项在二维时间模型中占据一个(可能是无限的)正方形,这就是为什么人们经常使用 GIST 索引来实现双时序索引的原因。这里的问题是 GIST 索引实际上是为地理数据设计的,对时态数据的要求有些不同。

PostgreSQL 9.0 排除约束应该提供组织时间数据的新方法,例如事务和有效时间 PERIOD 不应为同一个元组重叠。

关于database - 为什么我们需要时态数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/800331/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com