18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 信息时代 > 实时数据建模(数据库)

实时数据建模(数据库)

时间:2022-11-12 10:30:01 | 来源:信息时代

时间:2022-11-12 10:30:01 来源:信息时代

    实时数据建模 : 对实时数据模型的一种建模技术,其中包括对实时数据语言(real-time data language)的研究。因为通常的层次、网状和关系模型都不能描述有关时间的信息(除与一般属性无任何差别的时间域属性,如“日期”外),没有时间语义。
当前有两种修改关系模型以支持实时查询处理的方法: ①使用“近似关系”查询,经反复修改来获得更好的结果和查询响应; ②使用关系的“片段网格”以改善查询处理。但这两者都未引入时间维,更未考虑定时限制。
与任何数据模型一样,一个实时数据模型也由数据对象、约束、数据操作所组成。
1. 实时数据对象
实时数据库由三大类数据对象组成: 映像对象(image object,IMO),导出对象(derived object,DEO)和不变对象(invariant object,IVO)。
(1)映像对象(IMO):是实现世界对象(real world object,RWO)经传感器周期或无定期地采样而写入数据库中的数据对象。所以,一个IMO就是一个RWO在RTDB中的一个映像。因此,一个IMO有一个对应的RWO采样时间与之相联,该时间称为“采样/事件时标”(sampling/event timestamp)。自此开始至下一次采样的时间区间就是该IMO的“有效时间”(valid time)或“外部有效期”。一个IMO一旦记入数据库,一般不被更改,而是对应RWO在后来时刻的采样在RTDB中写入一个新的IMO。RTDB要维护一些IMO的档案式存储,所以同一RWO在不同时间点的“快照” (snapshot)在RTDB中是有效的。例如,雷达跟踪一个空中飞行体时,在时刻ti采样到的高度、速度和飞行方向等都是IMO,对应不同的ti分别有多个IMO。
(2)导出对象(DEO): 是在一个事务的执行过程中由一组IMO和/或其他数据对象计算而得的数据对象,与DEO相联的时标是导出它的事务时间。不像IMO,DEO的值在数据库中可能被更新,其档案式存储可以维护,也可以不被维护。
(3)不变对象(IVO): 是不随时间而变的常数。它可以看作是或不是实时数据,若是,则为实时数据的特例,其相联时间总是“当前”,其有效期是自RTDB建立时起到“当前”的时间区间。
与上述各数据对象相联的时间可以是有效时间或事务时间维,其时间量子可以是时间点或时片。
2. 时间一致性限制
RTDB具有外部一致性和相互一致性(统称时间一致性)要求。外部一致性保证数据能反映现实世界的当时状态。令tc表示“当前”时间,tx表对象x的时间(这里假定对象时间为一个时间点,它可以是有效或事务时间)。定义对象x的“年龄”a(x)为:a(x)=tc-tx。若对于数据对象x有a(xi)≤Sx,Sx>0为一指定的时间阈值,则x是外部(绝对)一致的。指定的阈值Sx就是对象x的外部有效期。对于数据库DB的任一数据集XDB, 若∀x∈X(a(x)≤Sx)成立,则说数据集X是外部一致的。
数据的相互一致性保证用来作决策或导出新数据对象的一组数据对象的时间差距是在指定的阈值范围内。两个不同数据对象xi,xj的时间差距定义为:d(xi,xj)=|txi-txj|。若对于两个数据对象xi和xj,有d(xi,xj)≤Sh,Sh>0为一给定阈值,则说xi和xj是相互一致的。 对于数据库DB的任一对象集YDB,若∀xi,xj∈Y,xi≠xj(d(xi,xj)≤Sh)成立, 则说Y是相互一致的,称为一个相互一致集。相互一致集的数据共同描述现实世界某时刻的同一状态。
若用来导出一个新数据对象的数据对象集既是外部一致又是相互一致的,则该新对象被认为是时间一致的。
作为实时数据特例的IVO总被认为是时间一致的。因为任一IVO x,总是tx=tc(当前时间),对于任何Sx>0,总有a(x)=tc-tx=0<Sx,所以是外部一致的。而对于任意两个IVO xi,xj,有d(xi,xj)=|txi-txj|=|tc-tc|=0<Sh,所以任何IVO总是相互一致的。
3.实时关系代数
定义关系代数有五种基本操作: 选择、投影、笛卡儿积、差和并。它们对实时数据仍然需要。这里简要给出针对数据时间维的代数操作:
(1)时间选择:限制所选取的数据对象的生存期为时间条件表达式所定,而不影响数据对象的值。
(2)时间投影:类似于传统投影操作,只不过是在“生存期”上投影而已。
(3)时间笛卡儿积:两个数据对象在其公共生存期间的传统笛卡儿积。
(4)时间差:针对具有相同值的数据对象求其生存期的差。
(5)时间并:将数据对象集中所有同值而不同生存期的数据对象分别并成一个,其生存期为各生存期之并。
4.实时数据库语言
实时数据库语言与现有数据库语言的最大不同在于时间语义的描述能力上。具体地有:
(1)实时数据描述语言: 除了像一般的DDL能定义实时数据的结构外,还能说明数据与时间的关系及其约束。
(2)实时数据操纵语言: 除了像一般的DML能进行数据操作外,还能进行实时关系代数操作。
(3)实时事务描述语言: 是一般数据库所没有的,用来描述事务的截止期等定时限制,其说明语句格式一般形为:
<事务事件名>IS<时间事件说明>
其中<事务事件名>有事务的 BEGIN 、COMMIT、ABORT等。<时间事件说明>则指定一个绝对、相对或周期时间。例如:
“事务t1在事务t2提交5秒后开始”说明为:
BEGIN(t1)IS 5s AFTER COMMIT(t2)
“事务X在每天九点后10秒内完成”说明为:
COMMIT(X) IS EVERY 9:00:00 WITHIN 10s

74
73
25
news

版权所有© 亿企邦 1997-2022 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭