深入理解Tripod:空间与非空间历史对象的综合模型
历史机制概述
Tripod历史机制为随时间变化的实体提供了存储、管理和查询的功能。历史模型记录了实体(或其属性、所参与的关系)因赋值操作而发生的变化。在Tripod对象模型中,任何可赋值的构造都可以请求维护其历史,历史是值变化的记录,通过时间戳标识变化事件,每个这样的值称为快照。历史可以记录对象标识符、属性值和关系实例的变化。
历史的结构
历史被定义为一个四元组H = ⟨V, θ, γ, Σ⟩,其中:
- V:表示H记录其变化的值的域。
- θ:可以是Instants或TimeIntervals。
- γ:是θ的粒度。
- Σ:是形式为⟨τ, σ⟩的对的集合,称为状态,其中τ是时间戳,σ是快照。
对于任何历史H = ⟨V, θ, γ, Σ⟩,有以下不变性:
1. Σ中出现的每个时间戳的类型为θ ∈{Instants, TimeIntervals},且具有粒度γ。
2. 对于Σ中出现的每个快照σ,σ ∈V。
3. 一个特定的时间戳最多与一个快照相关联,即历史不会记录同一时间的不同有效值。
4. 一个特定的快照最多与一个时间戳相关联,即历史中所有值相等的快照会合并成一个基于集合时间戳的单一状态,这个过程称为合并。
时间间隔值表示为[ts1 − te1, …, tsn − ten],每个元素是一个闭区间。简单整数用于表示时间,而不是基于日历的日期。单个状态表示为⟨[1 − 5, 6 − 9], r1⟩,历史表示为{V, θ, γ, ⟨[1−3, 7−9], {r1}⟩, ⟨[4−5], {r1, r3, r4}
超级会员免费看
订阅专栏 解锁全文
656

被折叠的 条评论
为什么被折叠?



