时态数据库
事务数据库中的时态信息挖掘
(即集合上的 “交” ) , 则=在! 中, = 的支持度都大于最小支持度 中是频繁集。 该算法还可以计算 “模糊支持度” , 即如 “时间 ! 之 等。此算法实际上将时间作为 内有 &"K的天数中 = 为频繁集” 单独的一 , 因此无法按照具体需要来进行挖掘, 无法 处理时间重叠的信息; 无法挖掘出诸如 “买 电 视 机 的 客 户 ! 个 月内都会买 GHG ” 或者 “在 !"") 年, 购买 彩 屏 手 机 的 顾 客 也 购 买数码摄像头” 等这些涉及超过两个事务的规则; 也无法挖掘 出象 “每 年 ) 月 和 + 月 买 电 脑 的 顾 客 中 学 生 最 多 ” 等跨越两个 时间段的关联规则。
! 时态信息挖掘的一些基本概念 可信度和关联规则 !$% 支持度、
设 ! ;<"%, …, (4>7? ) 的集合, 记数据库 $ 为事务 "!, "#= 是 项 (>./:9/@>45: ) 这里 % 是项的 集 合 , 并 且 %!!。 每 一 个 % 的集合, 事务有唯一 的 标 识 , 记 作 ABC 。 关 联 规 则 是 形 如 & "’ 的 蕴 涵 式, 这里 & #!, 并且 & $’ (!。规则 & "’ 在事务数据库 ’ #!, (9D335.> ) 是事务集中包含 & 和 ’ 的事务数与所 $ 中的支持度 有事务数之比, 记 为 9D335.> (& " ’ ) (& %’ ) , 在事务集中的 () 是指包含 & 和 ’ 的事务数与包含 & 的事 可信度 (@5:E4F7:@7 ) 务数之比, 记为 @5:E4F7:@7 (& "’ ) (& %’ *& ) 。 () 给定一个事务集 $ , 挖掘关联规则问题就是产生支持度和 可信度分别大于用户给定的最小支持度 (#"+,-.. ) 和最小可信 度 (#"+/0+1) 的关联规则。
时态数据库技术
现 实 世界 是 一个 四 维 的世界 , 十 事物 都有 其 时 间维 , 每
伴 随着 物 理 流 的信 息 流包 含 着 事 件 的 时态 信 息 ( e T m. p r nomai ) 其 中 包 括 时 刻 信 息 ( ntn no. oa I f l r tn , o Isa tlfr mai ) 时 间 区间 信 息 (nevlIfr t n 和相 对 时 rn 、 o I tra nomai ) o 间信 息 。 即在不 同 的 历史 时 刻其 值是 不 同 的 。而 传 统 的数 据库 管 理 系统 对 时 态数 据 处理 则 只是 作为 一般 的 属 性 值 , 用 户 自定 义时 间进行 存 储 和管理 , 让 并未 对 时 态数 据作 专 f 1的处 理 和 对 待 。需 要 迫 切 解 决 两 个 问 题: 一是 要 求 管 理 披 处 理 事 件 的 历 史 性 信 息 , 与 人 如 事 、 务 、 融 和 自然 灾 害 等 有 关 的历 史 资 料 , 中可 财 金 从 看 出 事 物发 展 的本 质 规律 ; 是 要 求 管 理 数 据 库 系 统 二 中元 事 件 的时 态信 息, 增 查删 改 的 时刻 和 时间 区 间 、 如
摘
要: 主要 阐述 时态 数据 库在 发展 过 程中 . 别是 近 几 年的 特
数 据 , 能 反映 出其 历 史和 揭示 其 未 来 。 还 2 1 时 态数 据 库 的分类 按其 功能 分 为历 史 数据 库 、 务 数 据 库 和双 时 态 事 数 据库 。 历史 数据库 : 管 理 对 象 的 生 命 周 期 称 为 有 效 时 筏 间( ldT me . 象 的历 史 由 D MS内部 机制 完 成 ; Va i ) 对 i B 事务 数据 库 : 据 库 本 身 筏 查 增 删 改 的时 间 为 事 数 物 时间 ( ascinTi ) 其 历 史 由 DB Tr at n o me . MS的 内部 机 制处理; 双时 态数 据库 : 能管 理对 象 的 历史 . 既 又能管理 数 据 库 本身 筏查 增 删改 的 历史 。 2 2 历史数 据 库 的时 间维 . 传统 的关 系数 据 库 是 1 性 } : 组 l 二 维 结 属 × 元 的 构 。 表 L记录 了 系 的当前 系 主 任 的信 息。
Lecture 5 Tempral DB(2010)
表示数据模型
• 数据模式为R(A1,…,An,Ts,Te,Vs,Ve),其中, A1,…,An为关系数据的属性,Ts,Te,Vs,Ve 为增加的4个时间属性,分别为事务时间的 起始值,终止值,有效时间的起始值,终 止值。这些都是原子的。 • 与BCDM不同,该模型中,若关系数据属性 相同,而时间属性不同,须表示成不同的 元组。
Temporal DB Architecture
• Integration of Temporal Functionality in the snapshot DBMS • The Temporal Server Approach • Building Temporal support into the client application
李玉菁 副教授 800 1991
时态管理的困难
• 1. 取多大的时间间隔保存快照?间隔大则不足以 保证数据的准确翔实。间隔太小,则数据冗余大, 占空间多。 • 2. 因为同一个元组同一属性下的值在不同快照中 可能不同,多个快照之间常常不能简单进行传统 的关系运算,存在结果合并问题。 • 3. 传统数据库中,对数据库本身历史的维护支持 不足,一般只提供事务日志,缺乏相应的事务查 询命令。 因此有必要设计实现能够管理和有效使用时间 信息的数据库,称为时态数据库。
199412-31 事 务 时 间
李玉菁
有 效 时 间
20109-30
• • • • •
例 查询李玉菁在1990年1月1日的职务和工资。 Select 职务,工资 From 教职工 Where 姓名=‘李玉菁’ And VALID(教职工) OVERLAPS DATE ‘1990-01-01’ 以当前事务时间为准,查询结果为:“校长 助理,1000,1989-10-01,1991-05-31”
时态数据库
时态数据库时态数据库是一种设计用于存储和管理时间相关数据的数据库系统。
它具有能够跟踪数据变化历史记录的能力,因此可以在不同时间点上检索和分析数据。
时态数据库在许多领域都有广泛的应用,包括金融、医疗、交通等行业。
时态数据库的主要特点之一是能够存储和查询数据的历史变化。
它通常会记录每个数据项的有效时间范围,即数据项在何时开始有效,在何时结束有效。
这使得用户可以在不同时间点上访问数据,并了解其历史变化。
例如,在金融领域,一家银行可以使用时态数据库来跟踪客户的银行账户余额变化,这样就可以追溯用户的过去的交易记录。
另一个重要的特点是时态数据库能够处理数据的不确定性。
在现实世界中,数据常常会存在不确定性,尤其是在时间方面。
时态数据库可以处理数据的不确定性,并提供一种方法来表示和处理不确定的数据。
例如,在医疗领域,一位医生可以使用时态数据库来跟踪患者的病情变化,这样就可以处理由于医学诊断的不确定性而导致的数据不确定性。
除了存储和查询数据的历史变化,时态数据库还可以支持各种时间相关的数据操作。
例如,它可以支持时间窗口查询,即查询在某个时间段内的数据。
它还可以支持时间序列分析,即分析时间序列数据的趋势和模式。
这些功能使得时态数据库成为处理时间相关数据的有力工具。
时态数据库的设计和实现面临着一些挑战。
其中之一是数据访问效率的问题。
由于时态数据库需要记录数据的历史变化,因此需要额外的存储空间来存储历史记录。
此外,查询历史变化的效率也是一个挑战,因为需要在大量的历史记录中进行查询。
为了解决这些问题,时态数据库通常采用了一些优化技术,如索引和压缩算法,来提高数据访问的效率。
总之,时态数据库是一种用于存储和管理时间相关数据的数据库系统。
它具有存储和查询数据历史变化的能力,并能够处理数据的不确定性。
时态数据库在许多领域都有广泛的应用,它为用户提供了一种强大的工具来分析和理解时间相关的数据。
时态数据库及其发展趋势刍议
时态数据库中属性被扩展为时态属性 , —个时态属性可以是一个普 通属性和一个时间区间组成的二元组 。生命周期是系统时间域的子集 , 生 命周期经过集合运算后 , 其值仍是生命周期。 3 Tmp Q . e S L模型 2 S ah K a i h si . d G a于 1 8 建 立 了 同时 性 关 系模 型 ( o oeeu 9 6年 H m gnos
fr h tmp r sma tc a d au a ln u g q eyn o hsoia o te e oa e nis n n trl a g a e u r ig f itr l l c
止点 , 并不作物理删除。 一般而言 , 时态数据库 中的历史不能删除、 不能修
改, 只能追加和查询。
性 和 效 率 。 因此 引入 时态 数 据库 。 关键词 : 时态; 数据库 ; 发展
时态数据库 T B (e p r a bs )是一种能够记 录对象变化历 D T m oa D t ae l a 史, 即能够维护数据 的 变化经历的数据库 。RT ndTs 给时态数据库的 . og s S a 定义是 : 不仅能够支持用户 自定义时间, 还能支持其 它某种时间关 系的数 据库。 目 前时态数据库领域 已经形成了专有 的术语 , 并被百科全书收录。 在时态数据库 中, 一般要表达 3 种基本时间 , 即用户 自 义时间( s 定 U— e . f e i e、 r e ndTm )有效 时间( a dTm ) - i . d V l i e和事务时间( r s t nTm ) i T a a i i e。 n co 用户 自 定义时间是指用户根据 自己的实际需要或理解定义的时间,由用 户 自己负责解释含义。有效时间指的是现实世界中一个对象或事件发生 的时间,或者该对象在现实世界中为真的时间 , 它可能是一个时刻或时 段。事务时间指的是对一个数据库对象进行操作的时间 , 是一个事实存储 在数据库中的时间, 它记录着对数据库修改或更新 的各种操作历史 。 有效 时间和事务时间是正交的。比如图书管理 系统中 , 学生借阅图书的时间是 有效时间, 而将学生借书这件事存储在数据库中的时间就是事务时间。 有 效时间可以覆盖全部时间范围 , 开始 ” 从“ 直到“ 永久” 。有效 时间是 由系统 的具体用户( 图书管理员 ) 如 给出或 由系统给出缺省值 。事务 时间是 由系 统本身 自动给出的, 并且永远不会超过“ 当前” 。 1 研究动向 18 年 J cf r 9 2 ’ lf d在纽约大学完成了博士论文“  ̄ a f m o i o al cl r ew r o a k
时态数据库多级安全模型研究
Ke wo d :t mp r ,oe, aa a e s c rt d l y r s e o a r l d tb s u i mo e l e y
l 前 言
随 着数 据 库 应 用 的 广 泛 深 入 , 的 应 用 不 断涌 现 . 如 时 新 比 态数 据 库1 如何 保 证 不 同 类 型数 据 库 的 安 全 性 、 何 改 进 现有 3 ] 。 如 安 全 模 型 使 之适 应新 应 用 的安 全需 求 。 为 目前 数 据 库 安 全急 成 需 解 决 的关 键 问题 。 文 针 对 时 态 数据 库 应 用 技 术 的 特 点 和时 本
( a a U i r t o n ier g Wu h 4 0 3 ) e i n n
Ab t a t I h s p p r t e t mp r l l gc s i t d c d t e aa a e s c rt mo e B s d o h d f a o n sr c : n t i a e , e o a o i nr u e o t d tb s e u i h i o h y d 1 a e n t e mo i c t n a d i i
维普资讯
时态 数 据 库 多级 安全 模 型 研 究
朱 圣刚 刘 欣 1 韩 臻 - , 2 ( 京 交通 大 学计算机 学院信 息安全 体 系研 究 中心 , 北 北京 1o 4 ) oo4
( 海军 工程 大学 , 武汉 4 0 3 ) 30 3
文章 编 号 10 — 3 1 (0 6 2 - 13 0 文 献标 识 码 A 0 2 83 一 2 0 )0 0 4 — 4 中 图分 类号 T 3 1 P 1
TDSQL全时态数据库系统--典型案例
经典案例增量抽取、增量计算等都T-TDSQL的经典案例。
如下以增量计算为例,来分析T-TDSQL在金融中的典型应用。
增量计算基于T-TDSQL全时态数据存储的特性,们可以方便的进行增量式的数据查询、抽取和计算。
对于单表的数据增量抽取/计算[1],T-TDSQL首先通过快照差读方法,获取对应与给出快照范围的增量数据集,然后根据用户定义的计算规则,组合调用系统内置的聚集函数,如SUM,AVG,GROUP BY等,实现增量计算的功能。
上任何时间段内的的数据都可以通过增量计算的技术进行“增量抽取”。
对于多表增量计算,T-TDSQL通过“快照差连接”支持增量计算场景。
即首先得到两个快照差集合R和S,然后通过连接操作将两表合并,之后再使用聚集函数等完成计算。
本节通过在互联网金融中常用的对账来对增量计算的原理和实际应用进行介绍。
对账互联网金融行业对数据的准确性要求极高,而在互联网环境中,数据不一致或数据时有发生,因此,通过对账来降低账户余额等数据造成的风险十分重要。
在计费中,采用将账户余额表(user)和账户流水表(water)按小时/天为周期进行比对的,来发现账户余额与交易流水的不一致现象,从而及时对交易进行。
传统的对账采用按固定时间段(如分钟/小时/天)为单位进行对账。
如现对2018年4月11日的交易进行对账,首先需要得到4月11日期初账户余额表和期末账户余额表,以及当天的交易流水表;然后对账户表通过按用户ID分组,并计算每个用户的期末余额减去期初余额,记为结果A,对流水表按用户ID分组,并将交易金额分组求和,记为结果B;最后将每个用户的结果A和结果B进行比对,如果A=B,则交易没有问题,否则该用户在当天的交易存在。
对于按固定时间段对账,主要存在以下三个问题:1.时效性差:对于交易,不能立即发现并反馈,延迟了以固定时间段为单位的一段时间后才能发现。
2.对账不精准:定位交易较复杂。
例如:如果用户在一天内发生的多笔交易,其中一笔出现了,通过按天对账的不能直接定位到具体的哪条交易出现,而只能定位到用户级别,即仍然需要人工参与,将该用户的当天交易都确认一遍,才能找到具体的交易。
时态数据库理论研究
关键词 : 时态数据库 ; 时态初 等关键 字范式 ; 时态简单 范式; 时态 多值依赖 ; 时态第 四范式 作者简介 : 李跃( 9 9一) 男 , 龙江 大庆人 , 17 , 黑 大庆师 范学 院科研处 干事 , 主要从事数据库理论研 究。 中图分类号 :P 9 文献标识码 : 文章 编号 :06— 15 20 )5— 11— 5 收稿 日期 :0 6— 6— 5 T 32 A 10 2 6 (0 6 0 0 0 0 20 0 2
时 态 数 据 库 理 论 研 究
李 跃, 张 华
( 大庆 师 范 学 院 科 研 处 , 龙 江 大庆 13 1 ) 黑 6 7 2
摘
要: 一个好 的时态数据库逻 辑设计 目标是消除数据冗余 以及插入 、 删除和更 新异常。 因此 , 我们 对 时态初 等 函
数依赖 , 时态初 等关键字, 时态初等 主属 性, 时态简单关键 字, 时态简单主属性进行 了定义 , 并研 究 了时态初 等关键
维普资讯
第2 6卷
第 5期
大庆 师范学院学报
J OURN AQI AL OF D NG NOR MAL UNI RST VE I Y
Vo . No. 1 26 5
20 0 6年 1 月 0
0co e . 0 6 tb r 2 o
数 依 赖 ( F 的 定 义 , 于 Wa g的 T D能 较 好 地 反 映 客 观 世 界 , je T D) 由 n F Wi n又 将 其 扩 展 到 复 杂 对 象 的 依 赖 约 s
束 。
2时 态数据 库 简介
2 1三 种 时 间 .
时态数 据库 涉及 三种 时 间 :
对 于 时 态 数 据 库 , 鉴 传 统 关 系 数 据 依 赖 依 赖 理 论 , 多 研 究 人 员 为 寻 找 合 适 的 数 据 依 赖 约 束 也 做 了 借 许 大 量 的 工 作 。 Vin a u提 出 了 动 态 函数 依 赖 ( D ) 概 念 。 而 Wi e DF s 的 j n定 义 了 4种 类 型 的依 赖 : 照 函 数 依 s 快 赖 ( F s , 态 函数 依 赖 ( Ds , 态 函 数 依 赖 ( F s 及 间 隔 依 赖 ( Ds 。 J n e S D )动 DF ) 时 TD) I ) e sn讨 论 了 基 于 B DM 模 C
一种可行的时态数据库索引技术
Av i be T me I d x i DBMS al l i n e n T a
L U n s e g,YOU An I Yu — h n
( ol eo o p t c ne u zog U iri S i c Tc nl y C lg e fC m ue Si c,H ah n nv syo ce e& ehoo ,Wu a u e4 0 7 C i r e e tf n g h nH bi 3 0 4, hn a)
Ab t a t sr c :T i p p rd s r e e i d x n e h i u s h i n e , a e n h so ia ea in ld tb s n g h s a e e c i s a n w e i g tc n q e :t e t b n me i d x b s d o i r lr lt a aa a e ma a e t c o
作为建立 时态 索引 的基础 , 由两 个表 ( 它 R和 s 组 成 。关 系 R ) 为雇员工作单 位登 记 表 , 保存 着 雇员 何 时在 何公 司工作 的简 历; 关系 s 为雇员工 资表 , 存储 雇员 的工 资变 动情况 。该数 据
库如表 1表 2所 示。 、
表 1 关 系 R: 工作 部门登记表
行 了改进 和优 化 , 并将其 与数 据库 传 统技 术 一起 应 用以适 应各种 时态数据 操 作的 需要 。
关键词 :时 态索 引;历 史 关 系数据 库 ;时 态查 询
中图法分 类号 :T 3 5 P1
文 献标 识码 :A
文章 编号 :10 —65 20 )0 06 —3 0 139 (0 6 1 —0 30
E mp i d
数据库设计开题报告
数据库设计开题报告1.设计(或研究)的依据与意义1基本概念时态数据库中的一些基本概念主要涉及时态信息模型、时间粒度、有效时间和事务时间等。
1.1时态信息模型随时间变化的信息称为时态信息(TemporalInformation)。
在自然界中,时间是每时每刻都存在、连续发生且一去不复的,它在时间轴上是连续存在的。
1.2时间粒度由于计算机的数字化特点,不可能将时间存贮为一个连续的实体,而必须用离散形式来表示。
时间粒度是对离散化程序的度量,当以固定时间粒度对实体状态采样时,粒度越小表示越精确,但同时所占用的内存就越大。
1.3有效时间和事务时间有效时间和事务时间是时态建模中最重要的两个概念。
有效时间(ValidTime)是指一个对像(事件)在现实世界中发生并保持的那段时间,或者该对象在现实世界中为真的时间。
由定义可知,有效时间表示了事物的有效性,即事物在现实世界中存在或发生的时间。
2时态数据库分类按时态信息的表示的方式,可以将数据库分为4个类型:快照数据库(SnapshotDatabase)、回滚数据库(RollbackDatabase)、历史数据库(HistoricalDatabase),双时态数据库(TemporalDatabase)。
2.1快照数据库快照数据库(SnapshotDatabase)顾名思义就是指在特定时刻的瞬间快照来建立模型,考虑现实世界。
快照数据库只反应了某一瞬间的情况。
所有的传统数据库都属于这一类。
之所以把这类数据库归结为时态数据库,主要是因为它支持用户自定义时间。
用户自定义时间是指用户根据自己的需求或理解定义的时间。
2.2回滚数据库回滚数据库(RollbackDatabase)只支持事务时间。
它保存过去的每一次事务操作的历史,即状态演变之前的状态。
2.3历史数据库历史数据库只支持有效时间。
在历史数据库当中,每一个关系记录了一个“历史”状态,它建模了现实世界中事物在有效时间点或现实世界状态的变化历程。
基于关系数据库实现时态数据库
【 摘 要】事 物随 时间变化 的特 性广 泛存在 ,在其 属性 的特征 值上存在 着 大量 时态数据 。然 而关系数据 库 由于 关
系模型本 身 限制 ,基于 关 系的时态信 息处 理难 以有 效表示 时态对 象复 杂的数据 结构 ,不具备 直接 的时态数据 管
发 时态数 据库 表示模 式应结 合实 际应用从 以下 四个 方
统 虽然 也定 义 了时间数 据 类 型 , 它 没有对 时 间作 专 但 门的处 理 , 只是作为 一般属 性值进 行存储 和管理 。 而 传 统 数据 库管 理 系统 提供 的一 些修 改 操 作 ( DML) 现 实 了数据库状 态之 间的变迁 , 随着 时间 的改变 , 的状态 新
定 义和操 作 , 而可 以实现查 询语 言的定义或 改进 。 进 这
基 于 关 系 数 据 库实 现 时 态 数 据 库
文 章 编 号 : 0 3 5 5 ( 0 0 0 — 0 6 0 10 —8 0 2 1 )70 5—3
基 于 关 系数 据 库 实 现 时态 数 据 库
Re lz to f Te p r IDa a a e b s d o l to lDa a a e a i a i n o m o a t b s a e n Re a i na t b s
覆 盖 旧的状 态 , 据库修 改语 句一 旦提交 , 数 旧的状 态在 数据 库管理 系统 中消失 。然 而现 实 中很 多新 的应 用都 需要 保 留和 处理“ 去 ”“ 在 ” 至“ 过 、现 甚 未来 ” 的数据 。 例
如, 财经 系统数 据库必 须保 留股票 市场的历 史数据 , 保 险系 统数据 库 必须指 明保 险条 款 的有效 时 问 , 事 系 人
有效时间不确定性研究
主要内容
时态数据库简介 有效时间变量Now的研究与分析 传统有效时间不确定时态数据模型 Now复杂语义不确定时态数据模型
一、时态数据库简介
区别于传统的关系型数据库(RDBMS),时态数据库 (Temporal Database)主要用于记录和管理记录那些随着 时间变化而变化的值的历史,而这些历史值对应用领域而 言又是重要的,这类应用有:金融、保险、预订系统、决 策支持系统等。时态数据库有着深厚的理论基础和丰富的 应用技术知识。
2.传统处理方法
对有效时间不确定性问题很多学者进行了讨论和研究, 处理方法主要有以下三种: ①最大值法将数据库允许的最大时间作为有效时间不确 定性时态数据库的VTe值进行存储。最大值法假设不确 定性的元组或事件将永远有效。 ②变动常量法将常量作为有效时间不确定定时态数据库 的VTe值进行存储,但是VTe值随着时间不断推进,每更 新一个粒子时间就要对其赋以新的时间值CT。 ③绑定CT法不将不确定时间终点与具体的时间相联系, 只有当需要对数据进行访问和操作时才对时态变量Now 进行具体绑定运算,将其赋值。
四、Now复杂语义不确定时态数据模型
前面提到一些不确定时态数据模型用概率动态刻画时态变量的不确定 性,用概率的多少来反应时态信息的可靠程序。但是这些模型还存在 许多不足:查询结果中的可信度不科学;只考虑了区间查询,不能处 理点查询;需要对存储的元组添加额外属性,降低了可行性;需要对 SQL进行扩展,影响了可移植性。 在多项前人研究成果的启发下,针对有效时间不确定性处理问题,本 文提出了新的解决模型一一Now复杂语义不确定时态数据模型TDMSCIN, 在该模型中,定义了两个Now变量时间参数——有效时间跨度和预期 有效度。 有效时间跨度VTspan:是指事物保持其原有性质不变的可能的时间区 间长度,如电子元器件的寿命、产品的保质期等。 预期有效度EVD:是指事物在有效时间跨度后未破坏其原有性质的概率, 如电子产品在保质期后的合格率等。 当指定查询时间QT,要求查询数据库中符合条件的元组时,显然满足 条件的元组的有效时间区间必定包含查询时间QT。当有效时间确定时, 直接就可以进行判断;当有效时间不确定时,情形就比较复杂。在此, 对不确定的有效时间的查询进行分析。
时态数据库
3.事务时间维度(Transaction Time)
事务时间记录对数据库更新的各种操作历史,。例如,数据录入 数据库的时间,对其进行查询的时间,对其进行删除或修改 的时间。
时态数据库的分类
分类基础是数据的时间维度
1.快照数据库(Snapshot Database) 反映其某一个瞬间的情况,只进行当前数据库状态 的查询和更新,不能进行以往历史数据的查询,而 且随着时间演进,其更改的历史数据将会丢失。 2.回滚数据库(Rollback Database) 按事务时间进行编址,保存过去每次事务提交,状 态演变之前的状态。 3.历史数据库(History Database) 4.双时态数据库(Bitemporal Database)
数据的时间维度
是时间元素的一个集合 通常需要研究
1.用户定义时间维度(User-defined Time)
定义一个具有“生日”数据类型的属性,相应元组中对应的该属性的 值为“1985-10-21”
2.有效时间维度(Valid Time)
指一个对象(事件)在现实世界中发生并保持的那段时间,或者 该对象在现实世界中为真的时间
历史数据库举例
时态数据查询语言+管理系统
时态数据查询语言
TempSQL TQuel TSQL2
时态数据库管理系统
TimeDB TempDB ( /cn/download.htm )
ATSQL2+TimeDB实现合同关系的CREATE TABLE合同(合同号 integer, 合同名称 varchar(30), 签约单位 varchar(30), 签约金额 integer) AS VALIDTIME; 2)插入数据 VALIDTIME PERIOD[2006.3.10-2006.5.10] INSERT INTO 合同 VALUES(00003,‘ZZZ合同’,’C公司’,20000); 3)查询合同有效期在2002.5.1~2003.5.1间有效的合同 VALIDTIME PERIOD[2002.5.1-2003.5.1] SELECT 合同,合同名称,签约单位,签约金额 FROM 合同; 则显示结果如下: lidtime 合同号 合同名称 签约单位 签约金额 --------------------------------------002.6.1-2002.10.1] 00001 AAA合同 A公司 10000 003.1.10-2003.2.10] 00002 BBB合同 B公司 12000
组态软件中实时数据库的研究
组态软件中实时数据库的研究摘要随着信息技术的快速发展,组态软件在工业自动化中的应用越来越广泛。
而实时数据库则是组态软件的重要组成部分。
本文将探讨实时数据库在组态软件中的作用以及一些常见的实时数据库技术。
前言工业自动化领域中,组态软件是不可缺少的重要工具,用于系统的配置、调试和监控。
组态软件通常由人机界面、实时数据库、通信协议和算法优化等多个组成部分构成。
其中实时数据库是组态软件中非常重要的组成部分,它可以监控现场设备采集的实时数据,并进行统计分析和预处理,为组态软件提供强大的数据支撑。
实时数据库的作用在组态软件中,实时数据库是整个系统重要的数据存储和管理核心,它不仅是系统运作的关键,更是系统性能的决定性因素。
简单来说,实时数据库可以通俗的理解为存放实时数据的地方。
对于实时数据这个概念,我们通常可以理解为在特定的时间段内,从系统现场采集到的各个设备的数据。
实时数据库将这些数据进行整合、分析、存储,并提供给组态软件进行实时的绘图及判断工作。
综上所述,实时数据库在组态软件中扮演着相当重要的角色。
只有通过实时数据库对设备数据进行缓存处理,才能保证数据的实时性、可靠性和准确性。
同时,实时数据库能够为组态软件提供高效、稳定的数据支撑,进而提高系统的性能和稳定性。
实时数据库的技术在实时数据库技术中,有很多方法可以使用。
下面简单介绍一下几种常见的实时数据库技术。
拓扑数据库技术拓扑数据库技术是一种基于实时数据库的基础架构,它采用数据结构按照拓扑网络结构方式进行存储。
拓扑数据库技术主要适用于大规模的金属、石化、船厂等过程控制系统上。
在这些系统中,设备数量通常非常庞大,而且设备之间相互关联非常密切。
因此,采用拓扑数据库技术可以在处理大量数据的同时,快速找到设备间的相互关系,方便进行监控、管理和调试。
时态数据库技术时态数据库技术是一种基于时间序列数据的存储和处理技术。
它广泛应用于电力、交通、水利等行业。
在这些行业中,数据的时间粒度一般很小,因此需要采用高效的时态数据库技术来处理这些数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.时态数据库的定义区别于传统的关系型数据库(RDBMS),时态数据库(Temporal Database)主要用于记录那些随着时间而变化的值的历史,而这些历史值对应用领域而言是重要的,这类应用有:金融、保险、预订系统、决策支持系统等。
目前时态数据库还没有像如Oracle、SQL Server等大型关系数据库那样的产品。
在当前时态数据库技术尚未完全成熟的现状下,DBMS提供商不会轻易把时态处理功能引入现有的DBMS中,因此,利用成熟的RDBMS数据库,建立时态数据库的中间件,在现阶段是一个较好的选择,因此就应运而生TimeDB和TempDB了。
2.时态数据库的类型时态数据库理论提出了三种基本时间:用户自定义时间、有效时间和事务时间。
同时把数据库分为四种类型:快照数据库、回滚数据库、历史数据库和双时态数据库。
1)用户自定义时间:指用户根据自己的需要或理解定义的时间。
时态数据库系统不处理用户自己定义的时间类型。
因此,用户自定义时间是和应用相关的,不在时态数据库处理的范围之内。
2)有效时间(Valid-Time):指一个对象在现实世界中发生并保持的时间,即该对象在现实世界中语义为真的时间,包含Valid-From和Valid-To两个值。
它可以指示过去、现在和未来。
例如,考虑事实‚小明从2003年到2007年是大学生‛,那么时间区间[2003, 2007]是事实‚小明是大学生‛的有效时间区间,该事实在该时间区间内为真。
有效时间可以是时间点、时间点的集合、时间区间或者时间区间的集合,或者是整个时间域。
有效时间由时态数据库系统解释并处理,在查询的过程中对用户透明。
用户也可以显式地查询和更新有效时间。
3)事务时间(Transaction-Time):指一个数据库对象发生操作的时间,是一个事实存储在数据库、或者在数据库中发生改变的时间,包含Transaction-From和Transaction-To两个值。
当用户对数据库状态进行更改时,会产生各种操作历史,事务时间真实地记录了数据库状态变更的历史。
有时也称事务时间为系统时间。
4)快照数据库:快照数据库是反映现实世界某一瞬间情况的数据模型。
它记录了特定时刻的数据库状态。
快照数据库采用这样的假设:一个存储在数据库中的元组,一定是真实世界中的有效事实。
5)历史数据库:数据库中被管理对象的生命周期是对象的有效时间,每一个元组记录了数据的一个‚历史‛状态。
历史数据库中没有约束时间的表示方法,可以是时间点的集合、时间区间或者区间集合等形式表示。
6)回滚数据库:数据库中被管理对象的生命周期是事务时间的数据库。
它保存了数据库中事务提交、状态演变的历史状态。
7)双时态数据库:数据库中元组包含一个系统支持的有效时间和一个系统支持的事务时间的数据库,称为双时态数据库。
双时态数据库具备了快照数据库、历史数据库和回滚数据库的特点,存储了现实世界和数据库系统的变更历史。
8)Now:Now的中文意思是当前时间,是一个时间变元,随着当前时间的变化而变化,记录了随时间变化的信息,它的有效值依赖于当前时间。
但在很多应用当中,now 值还能表示‚过去‛和‚未来‛时间,这就是now语义的研究课题,它对于提高时态系统查询效率具有比较重要的意义。
3.时态数据库脚本ATSQL的使用时态数据处理构件根据ATSQL2的语法引入了Now、Beginning和Forever三个变元。
Beginning和Forever分别表示时态数据处理构件所能表示的时间起点和终点。
Now表示当前时间。
每次执行操作时必须使Now绑定到一个固定的值(操作执行的当前时间),这样后继操作才能正常进行。
在下面的ATSQL2中表示的这几个单词是具有具体的含义的。
ATSQL2的数据定义语句包括以下几项功能:创建表、创建视图、删除表、删除视图。
ATSQL2语言和普通SQL语句一样,使用‚create table‛关键字创建数据库表,关键字‚as validtime‛用于指示系统创建具有有效时间支持的数据库表。
1)创建员工表Employee, 是在标准的创建表SQL结尾,加入AS VALIDTIME关键字即可。
CREATE TABLE Employee(ID VARCHAR(30) NOT NULL,NAME VARCHAR(50) NOT NULL)AS VALIDTIME;2) 插入一条记录的ATSQL, 需要通过VALIDTIME PERIOD来指定一个时间范围的,其他部分和标准SQL一样VALIDTIME PERIOD [1981-1985) Insert into Employee values ('112', 'Jack');3) 记录查询: 查询所有记录,在标准SQL前加VALIDTIME关键字即可,查询指定时间段的记录,可以通过PERIOD关键字指定时间区间:VALIDTIME SELECT*FROM Employee;VALIDTIME PERIOD [1983-1986) SELECT * FROM Employee;VALIDTIME PERIOD [1983-forever) SELECT * FROM Employee;4) 向员工表里添加人员信息插入记录前后分别如表 3-1和表 3-2所示VALIDTIME period [ date "2008-1-1" – now)Insert into Staff Values ( 132202, 'Zhang Jinning', '信息部');5) 为employee表创建一个视图,该视图包含所有1999-9-9前离职的工人信息,其中VALIDTIME(R)表示取元组R的有效时间区间:Create view employee_v asValidtime select * from employeeWhere VALIDTIME(employee) before date "1999-9-9";6) 删除员工表的ATSQL和一般的SQL语句一样,如下DROP TABLE Employee;7) 几个查询相关的概念快照查询:查询当前时刻的数据库状态。
对于非时态表(快照数据库),快照查询是一种向上兼容的查询方式,可以查询非时态数据库的数据。
对于时态表(历史数据库或回滚数据库),快照查询截取当前数据库状态,返回当前状态下的查询结果。
顺序查询:顺序查询是一种时态查询,通过关键字VALIDTIME或者TRANSACTIONTIME指示系统执行哪个时间维(有效时间维、事务时间维,或者两个维度)的时态查询。
在这种查询中系统运用时态代数操作自动处理元组的时间戳(有效时间、事务时间,或两者的结合)。
非顺序查询:执行非顺序查询时,系统不再根据时态代数操作解释时间戳,只是把有效时间和事务时间当作普通的用户定义属性对待。
非顺序查询适合特殊的查询需求,例如查询条件涉及状态的变化的查询。
时态归并:时态归并是作用于时态数据库的一种重构操作[23] 。
归并把具有相同属性值并且时间戳相邻或重叠的元组合并成一个元组,归并的过程保持时态数据库的状态不被改变。
4.时态数据的变元时态数据处理构件根据ATSQL2的语法引入了Now、Beginning和Forever三个变元。
Beginning和Forever分别表示时态数据处理构件所能表示的时间起点和终点。
Now表示当前时间。
每次执行操作时必须使Now绑定到一个固定的值(操作执行的当前时间),这样后继操作才能正常进行。
时态数据处理构件使用重写底层比较过程的方法绑定Now的语义。
它把Now、Beginning和Forever分别用以下三个具体的时间值表示:Now = ‘9999-01-01 00:00:00’;Beginning = ‘1000-01-01 00:00:00’;Forever = ‘9999-12-31 23:59:59’.因为使用了特殊值表示这三个变元,一方面使得时态数据处理构件能处理的时间范围比原商业数据库能处理的时间范围小,另一方面使得原商业数据库底层对时间类型数据的比较算子有了新的意义。
例如,如果当前时间是2007年12月1日,考虑‚2009-1-1>Now‛的意义时,应当先把Now替换为2008-07-18,比较结果为真。
在TimeDB中Now只是当前时间的别名。
在时态插入语句的执行过程中,Now作为一个标记被替换为语句执行的当前时间。
5.时态数据库的应用介绍(2)--时态数据库之TimeDB前面介绍了TimeDB(/Software/Software.html)是一种结合关系型数据库来实现时间数据库应用的技术,它支持时态数据库脚本:ATSQL2 [SBJS96a,SBJS96b,SBJS98]。
它可以认为是关系数据库的一个前端,把时态数据库语句转换为关系型数据库的脚本进行执行,它的运用场景如下所示。
TimeDB是传统的数据库管理系统的前端软件,应用程序中使用的时态ATSQL语句,通过TimeDB转换后形成标准的SQL语言和操作,这些标准SQL语句和操作传入到后台数据库中操作实际的数据。
TimeDB支持ATSQL2语言和时态模型,实现了时态查询、时态更新、时态视图和部分的时态完整性约束等基本的时态功能。
TimeDB 2.0版本使用Java语言开发,具有平台无关的有点;基于JDBC访问数据库,目前仅支持Oracle、Sybase和IBM的Cloudscape’s JBMS三种数据库,下一版本可能支持Microsoft's Access、SQL Server 7.0、Informix等数据库;具有较友好的用户界面;优化了辅助表的创建过程;具有可以供Java应用程序调用的接口TDBCI,可供Java应用程序调用以执行ATSQL2语句。
TimeDB2.0的程序运行界面如下:TDBCI提供的接口函数如下所示//设置访问参数public boolean setPrefs(String Path, int DBMS, String JDBCDriver, String URL);//初始化/清除执行ATSQL语句所需的表public boolean createDB();public boolean clearDB();//打开或者关闭数据库public boolean openDB(String Login, String Password);public void closeDB();//执行 ATSQL语句public ResultSet execute(String stmt);其中setPrefs是用来设置TimeDB的相关访问参数的,如下所示if (t.setPrefs("C:\\TimeDB 2.2\\", // Path to TimeDB2.0 directory1, // Using Oracle DBMS"oracle.jdbc.driver.OracleDriver", // Oracle's JDBC driver"jdbc:oracle:thin:1521:ORCL")) // URLcreateDB是用来创建一些基础表,以便支持执行ATSQL的,而clearDB则是清除这些表,对数据库而言,只需要开始的时候调用createDB一次即可。