实时数据库技术

上传人:206****923 文档编号:52303568 上传时间:2018-08-20 格式:PPT 页数:89 大小:226.50KB
返回 下载 相关 举报
实时数据库技术_第1页
第1页 / 共89页
实时数据库技术_第2页
第2页 / 共89页
实时数据库技术_第3页
第3页 / 共89页
实时数据库技术_第4页
第4页 / 共89页
实时数据库技术_第5页
第5页 / 共89页
点击查看更多>>
资源描述

《实时数据库技术》由会员分享,可在线阅读,更多相关《实时数据库技术(89页珍藏版)》请在金锄头文库上搜索。

1、实时数据库技术1 实时应用的数据处理 随着计算机应用技术的发展,实时系统处理的数 据信息量越来越大,对数据处理的功能要求也越 来越高。这些应用有着与传统应用不同的特征, 主要表现在两个方面:一方面,要维护大量共享 数据和控制知识;另一方面,其应用活动(任务或 事务)有很强的时间性,要求在规定的时刻和(或) 一定的时间内完成其处理;所以,这种应用对数 据库和实时处理两者的功能及特性均有需求,既 需要数据库来支持大量数据的共享,维护其数据 的一致性,又需要实时处理来支持其任务(事务) 与数据的定时限制。 但是,传统的数据库系统旨在处理永久、稳定的 数据,强调维护数据的完整性、一致性,其性能 目标是

2、高的系统吞吐量和低的代价,并不考虑有 关数据及其处理的定时限制,所以,传统的数据 库管理系统(DBMS)不能满足这种实时应用的需要 。 而传统的实时系统(RTS)虽然支持任务的定时限 制,但它针对的是结构与关系很简单、稳定不变 和可预报的数据,不涉及维护大量共享数据及它 们的完整性和一致性,尤其是时间一致性。 因此,只有将两者的概念、技术、方法与机制“无 缝集成”(Seamless Integration)的实时数据库才能 同时支持定时和一致性。2 实时数据库简介2.1 实时数据库系统定义 实时数据库技术是实时系统和数据库技术相结合的产物。 概括地讲,实时数据库(Real Time Datab

3、ase,RTDB)就 是其数据和事务都有显式定时限制的数据库,系统的正确 性不仅依赖于事务的逻辑结果,而且依赖于该逻辑结果所 产生的时间。 但是,必须注意的是:实时数据库并非实时系统和数据库 技术在概念、结构和方法上的简单集成。它在概念、理论 、技术、方法和机制方面具备自身特点。如:数据和数据 库的结构与组织;数据处理的优先级控制、调度和并发控 制协议与算法;数据和事务特性的语义及其与一致性、正 确性的关系;数据查询/事务处理算法与优化;I/O调度、 恢复和通信的协议与算法等,这些问题之间彼此高度相关 。需要针对不同的应用需求和应用特点,对实时数据模型 、实时事务调度与资源分配策略、实时数据查

4、询语言、实 时数据通信等大量问题作深入的理论研究。2.2 实时系统的主要特性 实时应用系统主要特性包括及时性、可预 测性和可靠性等。 1. 及时性 实时系统所产生的结果在时间上有着严格的要求 ,只有符合时间约束的结果才是正确的。在实时 系统中,每个任务都有一个截止期,截止期内完 成任务所得到的结果才是正确的结果。具体应用 实现时必须落实到实时任务(事务)的各项定时 特性:事务的松缓度、截止期的粒度和严格性( 事务软、硬性)、优先顺序限制、起点到终点的 定时限制、价值函数的形状(任务价值随时间的 变化情况)等。这些都是定义和处理实时事务以 及实现实时数据库系统的基本因素。 2. 可预测性 实时系

5、统的行为必须在一定的时间限度内,而这 个限度是可以从系统的定义获得的。这意味着系 统对来自于外部输入的反应必须全部是可预测的 ,就算在最坏的条件下,系统也必须严格遵守时 间约束。因此,在出现过载时,系统必须要能以 一种可预测的方式来降低它的性能级别。这就要 求事先知道任务(事务)的最坏情况执行时间及 所需的数据与资源,并要求这种最坏情况的预测 与实际的的差别尽可能小。 3. 可靠性 实时系统的可靠性主要是系统的正确性, 即系统所产生的结果不仅在值上是正确的 ,而且在时间上也是正确的。 结构复杂性 实时任务(事务)往往具有各种结构上的 相互联系,无结构的、原子和隔离的传统 事务模型不完全适用,而

6、实时系统有时要 求嵌套或层次结构事务,有时要求分裂和 合并、通信与数据交换等,因此必须研究 适应实时系统要求的具有复杂结构的事务 模型。 5. 分布规律性 实时任务(事务)通常是按一定周期执行的,但 也有非周期或随机的,还有一些是长寿(循环或 无终止事务)的。为了实现有效调度,必须事先 知道各种任务(事务)的类型及其到达的分布规 律。长寿事务和周期事务的实现比较容易,而非 周期和随机事务则很困难。处理时可以将一个非 周期事务的两次执行间的最小间隔时间视作其周 期,从而将其当作周期事务来调度;而对于随机 事务就只能由系统动态地进行处理。 6. 不可逆性 实时应用中有很多活动是不可逆的,如过 程控

7、制的器件加工、物料投放等活动,记 录飞行体的位置、速度、方向的事务等, 它们都是不可逆的。还原或重启动对于不 可逆事务是毫无意义的,因此必须为实时 事务的恢复开发新的概念、技术和方法。 7. 替代性 当实时系统认定某个任务不能按时完成时 ,可以调用其它活动进行替代或补偿,这 称为实时系统的应急计划,它可以提供虽 非最佳但可用的结果。如何确定应急计划 以及应急计划的选择评估及实施都是实时 系统应该考虑的部分。2.3 实时数据库与传统数据库 传统数据库的事务具有ACID( Atomaicity,Consistency,Isolation,Durability)特征,其特 点如下: 1强调一致性、可

8、恢复性和永久性; 2事务无内部构造,是平坦的,彼此间无合作(交互作 用、通信); 3事务执行时没有可预测性,其执行时间不可预测; 无“时间维”,更不显式地考虑时间。 在传统数据库中,事务的原子性和可串行化是普遍接受的 正确性和一致性标准。 实时数据库系统和传统数据库有着根本性的不同,实时事 务由以下特性确定: 1可见性:事务执行时可以查看另一事务的操作结果的 能力; 2正确性:事务本身的正确性及提交事务所产生的数据 库状态一致性; 3可恢复性:发生故障时使数据库恢复到某种认为是正 确状态的能力; 永久性:事务记录其结果到数据库及识别其中数据的有效 期的能力; 5可预报性:事先预测一个事务是否会

9、满足其时限的能 力。 最根本的区别在于数据与事务的定时限制。2.4 实时数据库与其它高级数据库的联系1. 实时数据库与内存数据库为了实现实时系统中数据和事务的实时(及时)性,必须尽可能加快 实时数据库的响应和处理速度,同时实时数据库中的实时事务要求系 统能较准确地预报事务的运行时间。但对磁盘数据库而言,由于磁盘 存取、内外存的数据传递、缓冲区管理、排队等待及锁的延迟等使得 事务实际平均执行时间与估算的最坏情况执行时间相差很大,不能满 足部分实时系统的“及时性”要求。如果将整个数据库或其主要的“工作” 部分放入内存;使每个事务在执行过程中没有磁盘I/O,则为系统较准 确估算和安排事务的运行时间,

10、使之具有较好的动态可预报性提供了 有力的支持,同时也为实现事务的定时限制打下了基础。内存数据库的设计应该打破传统磁盘数据库的设计观念,考虑内存直 接快速存取的特点,以CPU和内存空间的高效利用为目标来重新设计 开发各种策略与算法、技术、方法及机制。也可以说,内存数据库是 在实际应用系统的实时性要求下而产生的。 2. 实时数据库与主动数据库 今后,实时数据库的应用可能越来越复杂 ,为了满足各种复杂的应用要求,有必要 使实时数据库系统具备高度的动态性、自 适应性和智能行为。而主动数据库(ADB )技术与实时数据库(RTDBS)的结合为 RTDBS的自适应性及智能性的实现创造了 合理的机制。主动数据

11、库(ADB)技术现 在已经在实时数据库(RTDBS)领域广泛 应用。 3. 实时数据库与分布式数据库 随着Internet的迅速推广,实时系统应用范围和规模不断 扩大,也对实时数据库系统提出了分布式计算的要求,因 而有必要将分布式数据库技术运用于实时系统中。为了满 足对数据的实时和分布的要求,分布式实时数据库 (DRTDB)将具有执行期限的数据和事务分布在不同的结点 上,由分布式实时数据库管理系统来统一管理、调度执行 。国内的实时数据库产品与国外的产品相比,都有一定的 差距,主要体现在其事务处理层并没有实现完全的分布式 事务处理,与实时数据库的理论有一定的距离。实时数据 库与内存数据库、主动数

12、据库、分布式数据库的有效集成 才可以满足现代数据库的需求。 实时数据库与时态数据库与时态数据库相同之处是,实时数据库也涉及时间信息。但是,时态 数据库与实时数据库存在区别,主要表现在: 时态数据库目的在于处理包含随时间变化的信息,维护数据库中对 象经历的历史变化;而实时数据库则更侧重考虑信息的“及时”性,它 的查询与事务处理都有与之相联系的定时限制,结果产生的时间与结 果本身一样重要。 时态数据库保存数据库对象随着时间变化的特征,但缺乏维护数据 有效性的机制,不显式考虑查询与事务有关的时间限制。在TDB中, 随时间变化而改变的数据的处理是保留“历史”,增加新的数据项,可 以查询某个过去时间曾经

13、有效的数据。RTDB则提供维护数据有效性 和事务及时性的机制,一般只存取数据库当前“有效”的信息。事务必 须维护数据库对象的“时间一致性”,所以有时间限制与之联系。 时态数据库更多考虑“结构”,实时数据库则侧重考虑“行动”(控制实 时),有时“及时”性比正确性更重要。3 实时数据库的特征 一个典型的实时系统由三个紧密结合的子系统组 成:被控系统、执行控制系统、数据系统。被控 系统就是实际的应用过程,称为外部环境或物理 世界,执行控制系统监视被控系统的状态,协调 和控制它的活动,称为逻辑世界;数据系统有效 地存储、操纵与管理实时(准确和及时)信息,称 为内部世界;执行控制系统和数据系统统称为控

14、制系统。内部世界的状态是外部环境状态在控制 系统中的映像,执行控制系统通过内部世界状态 而感知外部环境状态,并在此基础上与被控系统 交互作用,所有这些都与时间紧密相联。 3.1 RTDB的数据特征 RTDB中的一个数据对象D由3个分量组成(dv,dtp,devi), 它们分别为D的当前值、采样时间、外部有效期(外部现实 对象状态变化的时间间隔),外部有效期devi即自dtp算起 dv有效的时间长度。对于RTDB中的每一个数据对象D, 都有内部一致性、外部一致性和相互一致性特征。 由定义可以看到,实时数据具有时间特征。实时数据给外 部世界提供了一个真实和及时的表示,随着外部环境的变 化,反映外部

15、环境状态的实时数据也随之变化.在实时数 据库中,实时数据的时标dtp必须足够地接近真实时间, 当前值dv只是在一定的时间devi内有效,在超过devi以前 ,数据一定要被最新的外部数据更新。 内部一致性 dv满足预先定义的数据库内部状态的完整 性和一致性限制。这就是传统意义下的数 据正确性。 数据库的变更都是以事务的形式进行的, 因而事务操作的完整性校验和可串行化能 提供内部一致性保证。 外部一致性外部一致性(又称为绝对一致性)是指实时数据库中的数据应与外部 数据(又称为环境数据)相一致,即要求数据库中的数据能及时地反映 外部环境的状态。 设tc为当前或检测时间,当且仅当(tcdtp)devi

16、,则说D是外部一致 的,即dv和对应的外部现实对象的状态是一样的。数据的外部有效期dtp,可以通过足够的外部环境对应参数的取样来 获取。外部一致性与时间限制紧密相关,它难以用可串行化的处理技 术来实现,因为现有的确保可串行性的并发控制协议都是基于封锁或 还原/重起动(Rollback/Restart)的。封锁可能导致优先级颠倒(低优先 级的事务阻塞高优先级事务);而还原/重起动除浪费系统资源从而引 起事务超出时限外。实时系统有的事务根本不能还原/重启动,对于这 种反映外部环境不可逆事件的事务,不能封锁或还原,必要时只有先 牺牲内部一致性而确保外部一致性,然后再来恢复内部一致性。 相互一致性 相互一致性用来决策或导出新数据的一组相关数 据称为一个相互一致集,记为R,其中的数据必 须尽可能地在一个允许的公共时间期内被采取(或 导出),这个公共时间期就称为R的相互有效期, 记为Rmvi,对于R中的任两个

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号