实时数据库技术讲义教材

上传人:yuzo****123 文档编号:141432279 上传时间:2020-08-08 格式:PPT 页数:89 大小:240.50KB
返回 下载 相关 举报
实时数据库技术讲义教材_第1页
第1页 / 共89页
实时数据库技术讲义教材_第2页
第2页 / 共89页
实时数据库技术讲义教材_第3页
第3页 / 共89页
实时数据库技术讲义教材_第4页
第4页 / 共89页
实时数据库技术讲义教材_第5页
第5页 / 共89页
点击查看更多>>
资源描述

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

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

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

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

4、主要特性包括及时性、可预测性和可靠性等。,1. 及时性 实时系统所产生的结果在时间上有着严格的要求,只有符合时间约束的结果才是正确的。在实时系统中,每个任务都有一个截止期,截止期内完成任务所得到的结果才是正确的结果。具体应用实现时必须落实到实时任务(事务)的各项定时特性:事务的松缓度、截止期的粒度和严格性(事务软、硬性)、优先顺序限制、起点到终点的定时限制、价值函数的形状(任务价值随时间的变化情况)等。这些都是定义和处理实时事务以及实现实时数据库系统的基本因素。,2. 可预测性 实时系统的行为必须在一定的时间限度内,而这个限度是可以从系统的定义获得的。这意味着系统对来自于外部输入的反应必须全部

5、是可预测的,就算在最坏的条件下,系统也必须严格遵守时间约束。因此,在出现过载时,系统必须要能以一种可预测的方式来降低它的性能级别。这就要求事先知道任务(事务)的最坏情况执行时间及所需的数据与资源,并要求这种最坏情况的预测与实际的的差别尽可能小。,3. 可靠性 实时系统的可靠性主要是系统的正确性,即系统所产生的结果不仅在值上是正确的,而且在时间上也是正确的。,4. 结构复杂性 实时任务(事务)往往具有各种结构上的相互联系,无结构的、原子和隔离的传统事务模型不完全适用,而实时系统有时要求嵌套或层次结构事务,有时要求分裂和合并、通信与数据交换等,因此必须研究适应实时系统要求的具有复杂结构的事务模型。

6、,5. 分布规律性 实时任务(事务)通常是按一定周期执行的,但也有非周期或随机的,还有一些是长寿(循环或无终止事务)的。为了实现有效调度,必须事先知道各种任务(事务)的类型及其到达的分布规律。长寿事务和周期事务的实现比较容易,而非周期和随机事务则很困难。处理时可以将一个非周期事务的两次执行间的最小间隔时间视作其周期,从而将其当作周期事务来调度;而对于随机事务就只能由系统动态地进行处理。,6. 不可逆性 实时应用中有很多活动是不可逆的,如过程控制的器件加工、物料投放等活动,记录飞行体的位置、速度、方向的事务等,它们都是不可逆的。还原或重启动对于不可逆事务是毫无意义的,因此必须为实时事务的恢复开发

7、新的概念、技术和方法。,7. 替代性 当实时系统认定某个任务不能按时完成时,可以调用其它活动进行替代或补偿,这称为实时系统的应急计划,它可以提供虽非最佳但可用的结果。如何确定应急计划以及应急计划的选择评估及实施都是实时系统应该考虑的部分。,4.2.3 实时数据库与传统数据库,传统数据库的事务具有ACID(Atomaicity,Consistency,Isolation,Durability)特征,其特点如下: 1强调一致性、可恢复性和永久性; 2事务无内部构造,是平坦的,彼此间无合作(交互作用、通信); 3事务执行时没有可预测性,其执行时间不可预测; 4无“时间维”,更不显式地考虑时间。 在传

8、统数据库中,事务的原子性和可串行化是普遍接受的正确性和一致性标准。,实时数据库系统和传统数据库有着根本性的不同,实时事务由以下特性确定: 1可见性:事务执行时可以查看另一事务的操作结果的能力; 2正确性:事务本身的正确性及提交事务所产生的数据库状态一致性; 3可恢复性:发生故障时使数据库恢复到某种认为是正确状态的能力; 4永久性:事务记录其结果到数据库及识别其中数据的有效期的能力; 5可预报性:事先预测一个事务是否会满足其时限的能力。 最根本的区别在于数据与事务的定时限制。,4.2.4 实时数据库与其它高级数据库的联系,1. 实时数据库与内存数据库 为了实现实时系统中数据和事务的实时(及时)性

9、,必须尽可能加快实时数据库的响应和处理速度,同时实时数据库中的实时事务要求系统能较准确地预报事务的运行时间。但对磁盘数据库而言,由于磁盘存取、内外存的数据传递、缓冲区管理、排队等待及锁的延迟等使得事务实际平均执行时间与估算的最坏情况执行时间相差很大,不能满足部分实时系统的“及时性”要求。如果将整个数据库或其主要的“工作”部分放入内存;使每个事务在执行过程中没有磁盘I/O,则为系统较准确估算和安排事务的运行时间,使之具有较好的动态可预报性提供了有力的支持,同时也为实现事务的定时限制打下了基础。 内存数据库的设计应该打破传统磁盘数据库的设计观念,考虑内存直接快速存取的特点,以CPU和内存空间的高效

10、利用为目标来重新设计开发各种策略与算法、技术、方法及机制。也可以说,内存数据库是在实际应用系统的实时性要求下而产生的。,2. 实时数据库与主动数据库 今后,实时数据库的应用可能越来越复杂,为了满足各种复杂的应用要求,有必要使实时数据库系统具备高度的动态性、自适应性和智能行为。而主动数据库(ADB)技术与实时数据库(RTDBS)的结合为RTDBS的自适应性及智能性的实现创造了合理的机制。主动数据库(ADB)技术现在已经在实时数据库(RTDBS)领域广泛应用。,3. 实时数据库与分布式数据库 随着Internet的迅速推广,实时系统应用范围和规模不断扩大,也对实时数据库系统提出了分布式计算的要求,

11、因而有必要将分布式数据库技术运用于实时系统中。为了满足对数据的实时和分布的要求,分布式实时数据库(DRTDB)将具有执行期限的数据和事务分布在不同的结点上,由分布式实时数据库管理系统来统一管理、调度执行。国内的实时数据库产品与国外的产品相比,都有一定的差距,主要体现在其事务处理层并没有实现完全的分布式事务处理,与实时数据库的理论有一定的距离。实时数据库与内存数据库、主动数据库、分布式数据库的有效集成才可以满足现代数据库的需求。,4. 实时数据库与时态数据库 与时态数据库相同之处是,实时数据库也涉及时间信息。但是,时态数据库与实时数据库存在区别,主要表现在: 时态数据库目的在于处理包含随时间变化

12、的信息,维护数据库中对象经历的历史变化;而实时数据库则更侧重考虑信息的“及时”性,它的查询与事务处理都有与之相联系的定时限制,结果产生的时间与结果本身一样重要。 时态数据库保存数据库对象随着时间变化的特征,但缺乏维护数据有效性的机制,不显式考虑查询与事务有关的时间限制。在TDB中,随时间变化而改变的数据的处理是保留“历史”,增加新的数据项,可以查询某个过去时间曾经有效的数据。RTDB则提供维护数据有效性和事务及时性的机制,一般只存取数据库当前“有效”的信息。事务必须维护数据库对象的“时间一致性”,所以有时间限制与之联系。 时态数据库更多考虑“结构”,实时数据库则侧重考虑“行动”(控制实时),有

13、时“及时”性比正确性更重要。,4.3 实时数据库的特征,一个典型的实时系统由三个紧密结合的子系统组成:被控系统、执行控制系统、数据系统。被控系统就是实际的应用过程,称为外部环境或物理世界,执行控制系统监视被控系统的状态,协调和控制它的活动,称为逻辑世界;数据系统有效地存储、操纵与管理实时(准确和及时)信息,称为内部世界;执行控制系统和数据系统统称为控制系统。内部世界的状态是外部环境状态在控制系统中的映像,执行控制系统通过内部世界状态而感知外部环境状态,并在此基础上与被控系统交互作用,所有这些都与时间紧密相联。,4.3.1 RTDB的数据特征,RTDB中的一个数据对象D由3个分量组成(dv,dt

14、p,devi),它们分别为D的当前值、采样时间、外部有效期(外部现实对象状态变化的时间间隔),外部有效期devi即自dtp算起dv有效的时间长度。对于RTDB中的每一个数据对象D,都有内部一致性、外部一致性和相互一致性特征。 由定义可以看到,实时数据具有时间特征。实时数据给外部世界提供了一个真实和及时的表示,随着外部环境的变化,反映外部环境状态的实时数据也随之变化.在实时数据库中,实时数据的时标dtp必须足够地接近真实时间,当前值dv只是在一定的时间devi内有效,在超过devi以前,数据一定要被最新的外部数据更新。,内部一致性 dv满足预先定义的数据库内部状态的完整性和一致性限制。这就是传统

15、意义下的数据正确性。 数据库的变更都是以事务的形式进行的,因而事务操作的完整性校验和可串行化能提供内部一致性保证。,外部一致性 外部一致性(又称为绝对一致性)是指实时数据库中的数据应与外部数据(又称为环境数据)相一致,即要求数据库中的数据能及时地反映外部环境的状态。 设tc为当前或检测时间,当且仅当(tcdtp)devi,则说D是外部一致的,即dv和对应的外部现实对象的状态是一样的。 数据的外部有效期dtp,可以通过足够的外部环境对应参数的取样来获取。外部一致性与时间限制紧密相关,它难以用可串行化的处理技术来实现,因为现有的确保可串行性的并发控制协议都是基于封锁或还原/重起动(Rollback

16、/Restart)的。封锁可能导致优先级颠倒(低优先级的事务阻塞高优先级事务);而还原/重起动除浪费系统资源从而引起事务超出时限外。实时系统有的事务根本不能还原/重启动,对于这种反映外部环境不可逆事件的事务,不能封锁或还原,必要时只有先牺牲内部一致性而确保外部一致性,然后再来恢复内部一致性。,相互一致性 相互一致性用来决策或导出新数据的一组相关数据称为一个相互一致集,记为R,其中的数据必须尽可能地在一个允许的公共时间期内被采取(或导出),这个公共时间期就称为R的相互有效期,记为Rmvi,对于R中的任两个数据D和D,有|dtpdtp|Rmvi(即两个数据的采样时间在公共时间期间内),则说R中的数据是相互一致的。 相互一致性保证了用来作决策或导出新数据的一组数据是在允许的时间范围内彼此接近地产生的。Rmvi的获得不像devi那么简单,且它们之间存在着相互性,R中的各数据的devi的最小者对Rmvi起着决定作用。,时间一致性 外部一致性和相互一致性都是关于时间的,故统称时间一致性。 状态正确性 既是内部一致又是时间一致的数据才是正确的。,4.3.2 RTDB的事务特征,RTDB标识性特

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

当前位置:首页 > 中学教育 > 教学课件 > 高中课件

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