《实时数据库技术优秀PPT.ppt》由会员分享,可在线阅读,更多相关《实时数据库技术优秀PPT.ppt(89页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第第4章章 实时数据库技术实时数据库技术4.1 实时应用的数据处理实时应用的数据处理随着计算机应用技术的发展,实时系统处理的数据信息量越来越大,对数据处理的功能要求也越来越高。这些应用有着与传统应用不同的特征,主要表现在两个方面:一方面,要维护大量共享数据和限制学问;另一方面,其应用活动(任务或事务)有很强的时间性,要求在规定的时刻和(或)确定的时间内完成其处理;所以,这种应用对数据库和实时处理两者的功能及特性均有需求,既须要数据库来支持大量数据的共享,维护其数据的一样性,又须要实时处理来支持其任务(事务)与数据的定时限制。但是,传统的数据库系统旨在处理永久、稳定的数据,强调维护数据的完整性、
2、一样性,其性能目标是高的系统吞吐量和低的代价,并不考虑有关数据及其处理的定时限制,所以,传统的数据库管理系统(DBMS)不能满足这种实时应用的须要。而传统的实时系统(RTS)虽然支持任务的定时限制,但它针对的是结构与关系很简洁、稳定不变和可预报的数据,不涉及维护大量共享数据及它们的完整性和一样性,尤其是时间一样性。因此,只有将两者的概念、技术、方法与机制“无缝集成”(Seamless Integration)的实时数据库才能同时支持定时和一样性。4.2 实时数据库简介实时数据库简介4.2.1 实时数据库系统定义实时数据库系统定义实时数据库技术是实时系统和数据库技术相结合的产物。概括地讲,实时数
3、据库(Real Time Database,RTDB)就是其数据和事务都有显式定时限制的数据库,系统的正确性不仅依靠于事务的逻辑结果,而且依靠于该逻辑结果所产生的时间。但是,必需留意的是:实时数据库并非实时系统和数据库技术在概念、结构和方法上的简洁集成。它在概念、理论、技术、方法和机制方面具备自身特点。如:数据和数据库的结构与组织;数据处理的优先级限制、调度和并发限制协议与算法;数据和事务特性的语义及其与一样性、正确性的关系;数据查询/事务处理算法与优化;I/O调度、复原和通信的协议与算法等,这些问题之间彼此高度相关。须要针对不同的应用需求和应用特点,对实时数据模型、实时事务调度与资源安排策略
4、、实时数据查询语言、实时数据通信等大量问题作深化的理论探讨。4.2.2 实时系统的主要特性实时系统的主要特性实时应用系统主要特性包括刚好性、可预料性和牢靠性等。1.刚好性刚好性实时系统所产生的结果在时间上有着严格的要求,实时系统所产生的结果在时间上有着严格的要求,只有符合时间约束的结果才是正确的。在实时系只有符合时间约束的结果才是正确的。在实时系统中,每个任务都有一个截止期,截止期内完成统中,每个任务都有一个截止期,截止期内完成任务所得到的结果才是正确的结果。具体应用实任务所得到的结果才是正确的结果。具体应用实现时必需落实到实时任务(事务)的各项定时特现时必需落实到实时任务(事务)的各项定时特
5、性:事务的松缓度、截止期的粒度和严格性(事性:事务的松缓度、截止期的粒度和严格性(事务软、硬性)、优先依次限制、起点到终点的定务软、硬性)、优先依次限制、起点到终点的定时限制、价值函数的形态(任务价值随时间的变时限制、价值函数的形态(任务价值随时间的变更状况)等。这些都是定义和处理实时事务以及更状况)等。这些都是定义和处理实时事务以及实现实时数据库系统的基本因素。实现实时数据库系统的基本因素。2.可预料性可预料性实时系统的行为必需在确定的时间限度内,而这实时系统的行为必需在确定的时间限度内,而这个限度是可以从系统的定义获得的。这意味着系个限度是可以从系统的定义获得的。这意味着系统对来自于外部输
6、入的反应必需全部是可预料的,统对来自于外部输入的反应必需全部是可预料的,就算在最坏的条件下,系统也必需严格遵守时间就算在最坏的条件下,系统也必需严格遵守时间约束。因此,在出现过载时,系统必须要能以一约束。因此,在出现过载时,系统必须要能以一种可预料的方式来降低它的性能级别。这就要求种可预料的方式来降低它的性能级别。这就要求事先知道任务(事务)的最坏状况执行时间及所事先知道任务(事务)的最坏状况执行时间及所需的数据与资源,并要求这种最坏状况的预料与需的数据与资源,并要求这种最坏状况的预料与实际的的差别尽可能小。实际的的差别尽可能小。3.牢靠性牢靠性实时系统的牢靠性主要是系统的正确性,实时系统的牢
7、靠性主要是系统的正确性,即系统所产生的结果不仅在值上是正确的,即系统所产生的结果不仅在值上是正确的,而且在时间上也是正确的。而且在时间上也是正确的。4.结构困难性结构困难性实时任务(事务)往往具有各种结构上的实时任务(事务)往往具有各种结构上的相互联系,无结构的、原子和隔离的传统相互联系,无结构的、原子和隔离的传统事务模型不完全适用,而实时系统有时要事务模型不完全适用,而实时系统有时要求嵌套或层次结构事务,有时要求分裂和求嵌套或层次结构事务,有时要求分裂和合并、通信与数据交换等,因此必需探讨合并、通信与数据交换等,因此必需探讨适应实时系统要求的具有困难结构的事务适应实时系统要求的具有困难结构的
8、事务模型。模型。5.分布规律性分布规律性实时任务(事务)通常是按确定周期执行的,但实时任务(事务)通常是按确定周期执行的,但也有非周期或随机的,还有一些是长寿(循环或也有非周期或随机的,还有一些是长寿(循环或无终止事务)的。为了实现有效调度,必需事先无终止事务)的。为了实现有效调度,必需事先知道各种任务(事务)的类型及其到达的分布规知道各种任务(事务)的类型及其到达的分布规律。长寿事务和周期事务的实现比较简洁,而非律。长寿事务和周期事务的实现比较简洁,而非周期和随机事务则很困难。处理时可以将一个非周期和随机事务则很困难。处理时可以将一个非周期事务的两次执行间的最小间隔时间视作其周周期事务的两次
9、执行间的最小间隔时间视作其周期,从而将其当作周期事务来调度;而对于随机期,从而将其当作周期事务来调度;而对于随机事务就只能由系统动态地进行处理。事务就只能由系统动态地进行处理。6.不行逆性不行逆性实时应用中有很多活动是不行逆的,如过实时应用中有很多活动是不行逆的,如过程限制的器件加工、物料投放等活动,记程限制的器件加工、物料投放等活动,记录飞行体的位置、速度、方向的事务等,录飞行体的位置、速度、方向的事务等,它们都是不行逆的。还原或重启动对于不它们都是不行逆的。还原或重启动对于不行逆事务是毫无意义的,因此必需为实时行逆事务是毫无意义的,因此必需为实时事务的复原开发新的概念、技术和方法。事务的复
10、原开发新的概念、技术和方法。7.替代性替代性当实时系统认定某个任务不能按时完成时,当实时系统认定某个任务不能按时完成时,可以调用其它活动进行替代或补偿,这称可以调用其它活动进行替代或补偿,这称为实时系统的应急支配,它可以供应虽非为实时系统的应急支配,它可以供应虽非最佳但可用的结果。如何确定应急支配以最佳但可用的结果。如何确定应急支配以及应急支配的选择评估及实施都是实时系及应急支配的选择评估及实施都是实时系统应当考虑的部分。统应当考虑的部分。4.2.3 实时数据库与传统数据库实时数据库与传统数据库传统数据库的事务具有ACID(Atomaicity,Consistency,Isolation,Du
11、rability)特征,其特点如下:1强调一样性、可复原性和永久性;2事务无内部构造,是平坦的,彼此间无合作(交互作用、通信);3事务执行时没有可预料性,其执行时间不行预料;4无“时间维”,更不显式地考虑时间。在传统数据库中,事务的原子性和可串行化是普遍接受的正确性和一样性标准。实时数据库系统和传统数据库有着根本性的不同,实时事务由以下特性确定:1可见性:事务执行时可以查看另一事务的操作结果的实力;2正确性:事务本身的正确性及提交事务所产生的数据库状态一样性;3可复原性:发生故障时使数据库复原到某种认为是正确状态的实力;4永久性:事务记录其结果到数据库及识别其中数据的有效期的实力;5可预报性:
12、事先预料一个事务是否会满足其时限的实力。最根本的区分在于数据与事务的定时限制。4.2.4 实时数据库与其它高级数据库的联系实时数据库与其它高级数据库的联系1.实时数据库与内存数据库实时数据库与内存数据库为了实现实时系统中数据和事务的实时(刚好)性,必需尽可能加快为了实现实时系统中数据和事务的实时(刚好)性,必需尽可能加快实时数据库的响应和处理速度,同时实时数据库中的实时事务要求系实时数据库的响应和处理速度,同时实时数据库中的实时事务要求系统能较精确地预报事务的运行时间。但对磁盘数据库而言,由于磁盘统能较精确地预报事务的运行时间。但对磁盘数据库而言,由于磁盘存取、内外存的数据传递、缓冲区管理、排
13、队等待及锁的延迟等使得存取、内外存的数据传递、缓冲区管理、排队等待及锁的延迟等使得事务实际平均执行时间与估算的最坏状况执行时间相差很大,不能满事务实际平均执行时间与估算的最坏状况执行时间相差很大,不能满足部分实时系统的足部分实时系统的“刚好性刚好性”要求。假如将整个数据库或其主要的要求。假如将整个数据库或其主要的“工作工作”部分放入内存部分放入内存;使每个事务在执行过程中没有磁盘使每个事务在执行过程中没有磁盘I/O,则为系,则为系统较精确估算和支配事务的运行时间,使之具有较好的动态可预报性统较精确估算和支配事务的运行时间,使之具有较好的动态可预报性供应了有力的支持,同时也为实现事务的定时限制打
14、下了基础。供应了有力的支持,同时也为实现事务的定时限制打下了基础。内存数据库的设计应当打破传统磁盘数据库的设计观念,考虑内存干内存数据库的设计应当打破传统磁盘数据库的设计观念,考虑内存干脆快速存取的特点,以脆快速存取的特点,以CPU和内存空间的高效利用为目标来重新设计和内存空间的高效利用为目标来重新设计开发各种策略与算法、技术、方法及机制。也可以说,内存数据库是开发各种策略与算法、技术、方法及机制。也可以说,内存数据库是在实际应用系统的实时性要求下而产生的。在实际应用系统的实时性要求下而产生的。2.实时数据库与主动数据库实时数据库与主动数据库今后,实时数据库的应用可能越来越困难,今后,实时数据
15、库的应用可能越来越困难,为了满足各种困难的应用要求,有必要使为了满足各种困难的应用要求,有必要使实时数据库系统具备高度的动态性、自适实时数据库系统具备高度的动态性、自适应性和智能行为。而主动数据库(应性和智能行为。而主动数据库(ADB)技术与实时数据库(技术与实时数据库(RTDBS)的结合为)的结合为RTDBS的自适应性及智能性的实现创建了的自适应性及智能性的实现创建了合理的机制。主动数据库(合理的机制。主动数据库(ADB)技术现)技术现在已经在实时数据库(在已经在实时数据库(RTDBS)领域广泛)领域广泛应用。应用。3.实时数据库与分布式数据库实时数据库与分布式数据库随着随着Internet
16、的快速推广,实时系统应用范围和规模不断的快速推广,实时系统应用范围和规模不断扩大,也对实时数据库系统提出了分布式计算的要求,因扩大,也对实时数据库系统提出了分布式计算的要求,因而有必要将分布式数据库技术运用于实时系统中。为了满而有必要将分布式数据库技术运用于实时系统中。为了满足对数据的实时和分布的要求足对数据的实时和分布的要求,分布式实时数据库分布式实时数据库(DRTDB)将具有执行期限的数据和事务分布在不同的结点上,由分将具有执行期限的数据和事务分布在不同的结点上,由分布式实时数据库管理系统来统一管理、调度执行。国内的布式实时数据库管理系统来统一管理、调度执行。国内的实时数据库产品与国外的产
17、品相比,都有确定的差距实时数据库产品与国外的产品相比,都有确定的差距,主主要体现在其事务处理层并没有实现完全的分布式事务处理要体现在其事务处理层并没有实现完全的分布式事务处理,与实时数据库的理论有确定的距离。实时数据库与内存数与实时数据库的理论有确定的距离。实时数据库与内存数据库、主动数据库、分布式数据库的有效集成才可以满足据库、主动数据库、分布式数据库的有效集成才可以满足现代数据库的需求。现代数据库的需求。4.实时数据库与时态数据库实时数据库与时态数据库与时态数据库相同之处是,实时数据库也涉刚好间信息。但是,时态与时态数据库相同之处是,实时数据库也涉刚好间信息。但是,时态数据库与实时数据库存
18、在区分,主要表现在:数据库与实时数据库存在区分,主要表现在:时态数据库目的在于处理包含随时间变更的信息,维护数据库中对时态数据库目的在于处理包含随时间变更的信息,维护数据库中对象经验的历史变更;而实时数据库则更侧重考虑信息的象经验的历史变更;而实时数据库则更侧重考虑信息的“刚好刚好”性,性,它的查询与事务处理都有与之相联系的定时限制,结果产生的时间与它的查询与事务处理都有与之相联系的定时限制,结果产生的时间与结果本身一样重要。结果本身一样重要。时态数据库保存数据库对象随着时间变更的特征,但缺乏维护数据时态数据库保存数据库对象随着时间变更的特征,但缺乏维护数据有效性的机制,不显式考虑查询与事务有
19、关的时间限制。在有效性的机制,不显式考虑查询与事务有关的时间限制。在TDB中,中,随时间变更而变更的数据的处理是保留随时间变更而变更的数据的处理是保留“历史历史”,增加新的数据项,增加新的数据项,可以查询某个过去时间曾经有效的数据。可以查询某个过去时间曾经有效的数据。RTDB则供应维护数据有效则供应维护数据有效性和事务刚好性的机制,一般只存取数据库当前性和事务刚好性的机制,一般只存取数据库当前“有效有效”的信息。事的信息。事务必需维护数据库对象的务必需维护数据库对象的“时间一样性时间一样性”,所以有时间限制与之联系。,所以有时间限制与之联系。时态数据库更多考虑时态数据库更多考虑“结构结构”,实
20、时数据库则侧重考虑,实时数据库则侧重考虑“行动行动”(限限制实时制实时),有时,有时“刚好刚好”性比正确性更重要。性比正确性更重要。4.3 实时数据库的特征实时数据库的特征一个典型的实时系统由三个紧密结合的子系统组成:被控系统、执行限制系统、数据系统。被控系统就是实际的应用过程,称为外部环境或物理世界,执行限制系统监视被控系统的状态,协调和限制它的活动,称为逻辑世界;数据系统有效地存储、操纵与管理实时(精确和刚好)信息,称为内部世界;执行限制系统和数据系统统称为限制系统。内部世界的状态是外部环境状态在限制系统中的映像,执行限制系统通过内部世界状态而感知外部环境状态,并在此基础上与被控系统交互作
21、用,全部这些都与时间紧密相联。4.3.1 RTDB的数据特征的数据特征RTDB中的一个数据对象D由3个重量组成(dv,dtp,devi),它们分别为D的当前值、采样时间、外部有效期(外部现实对象状态变更的时间间隔),外部有效期devi即自dtp算起dv有效的时间长度。对于RTDB中的每一个数据对象D,都有内部一样性、外部一样性和相互一样性特征。由定义可以看到,实时数据具有时间特征。实时数据给外部世界供应了一个真实和刚好的表示,随着外部环境的变更,反映外部环境状态的实时数据也随之变更.在实时数据库中,实时数据的时标dtp必需足够地接近真实时间,当前值dv只是在确定的时间devi内有效,在超过de
22、vi以前,数据确定要被最新的外部数据更新。内部一样性dv满足预先定义的数据库内部状态的完整性和一样性限制。这就是传统意义下的数据正确性。数据库的变更都是以事务的形式进行的,因而事务操作的完整性校验和可串行化能供应内部一样性保证。外部一样性外部一样性(又称为确定一样性)是指实时数据库中的数据应与外部数据(又称为环境数据)相一样,即要求数据库中的数据能刚好地反映外部环境的状态。设tc为当前或检测时间,当且仅当(tcdtp)devi,则说D是外部一样的,即dv和对应的外部现实对象的状态是一样的。数据的外部有效期dtp,可以通过足够的外部环境对应参数的取样来获得。外部一样性与时间限制紧密相关,它难以用
23、可串行化的处理技术来实现,因为现有的确保可串行性的并发限制协议都是基于封锁或还原/重起动(Rollback/Restart)的。封锁可能导致优先级颠倒(低优先级的事务堵塞高优先级事务);而还原/重起动除奢侈系统资源从而引起事务超出时限外。实时系统有的事务根本不能还原/重启动,对于这种反映外部环境不行逆事务的事务,不能封锁或还原,必要时只有先牺牲内部一样性而确保外部一样性,然后再来复原内部一样性。相互一样性相互一样性用来决策或导出新数据的一组相关数据称为一个相互一样集,记为R,其中的数据必需尽可能地在一个允许的公共时间期内被实行(或导出),这个公共时间期就称为R的相互有效期,记为Rmvi,对于R
24、中的任两个数据D和D,有|dtpdtp|Rmvi(即两个数据的采样时间在公共时间期间内),则说R中的数据是相互一样的。相互一样性保证了用来作决策或导出新数据的一组数据是在允许的时间范围内彼此接近地产生的。Rmvi的获得不像devi那么简洁,且它们之间存在着相互性,R中的各数据的devi的最小者对Rmvi起着确定作用。时间一样性外部一样性和相互一样性都是关于时间的,故统称时间一样性。状态正确性既是内部一样又是时间一样的数据才是正确的。4.3.2 RTDB的事务特征的事务特征RTDB标识性特征:定时性以及语义相关性。1.定时性定时性定时性是定时性是RTDB事务的根本特点,定时可以是确事务的根本特点
25、,定时可以是确定、相对或周期时间。定、相对或周期时间。RTDB的定时性一方面由的定时性一方面由数据的时间一样性引起,此时它往往取周期或定数据的时间一样性引起,此时它往往取周期或定期性限制的形式,如期性限制的形式,如“每每5秒取样一次秒取样一次”、“7:00启动机器人启动机器人”等;等;定时性的另一根源是对现实世界施加于系统的反定时性的另一根源是对现实世界施加于系统的反应时间的要求,这时它典型地取施加于非周期事应时间的要求,这时它典型地取施加于非周期事务的截止时间限制的形式,如务的截止时间限制的形式,如“若温度达到若温度达到1000度,则在度,则在5秒内加冷却剂到反应堆秒内加冷却剂到反应堆”。定
26、时性包含两方面的含义:(1)定时限制截止时间:实时事务完成的最终期限。它可以有硬、软之分,具有硬截止时间的事务(称为硬实时事务),必需在其截止时间以前完成,否则将带来灾难性的后果,故到达其截止时间还不能完成的硬实时事务必需夭折。具有软截止时间的事务(称为软实时事务),应当在其截止期完成,但超过其截止时间也还有确定意义(尽管不断下降),故软实时事务到达其截止时间后不必马上夭折它。到达时间:事务在系统中生成的时间。它可以是可预报的,也可以是不行预报的。可预报的到达时间可显式地给出或者作为一个导出函数,如周期事务的到达时间是可预报的。不行预报的到达时间是指当相应事务到达系统时才能知道,非周期事务的到
27、达时间就是不行预报的。期望执行时间:估算的最坏状况执行时间。由于各种不行预报性因素,往往很难做到精确,估算的最坏状况执行时间可能与实际状况相差很大。然而,为了合理地得到事务的截止时间及适当地调度以使其满足,又必需事先较精确地估算其执行时间。(2)定时正确性即事务能按指定的时间要求正确执行,它要求权衡定时限制与数据一样性要求等多方面因素供应合适的调度与并发限制算法。2.语义相关性语义相关性(1)结构相关结构相关结构相关来自于困难事务模型的结构特征,用来建模困难事务内部并结构相关来自于困难事务模型的结构特征,用来建模困难事务内部并发事务行为的一种约束。不同的困难事务模型有不同的结构相关性,发事务行
28、为的一种约束。不同的困难事务模型有不同的结构相关性,但它们可以通过事务间的但它们可以通过事务间的“执行依靠性执行依靠性”来定义,实时嵌套事务中基来定义,实时嵌套事务中基本的事务依靠有:本的事务依靠有:子事务对父事务的起先依靠子事务对父事务的起先依靠(BD):子事务起先前父事务已经起先。:子事务起先前父事务已经起先。父事务对子事务的提交依靠父事务对子事务的提交依靠(CD):父事务提交前子事务已经结束:父事务提交前子事务已经结束(提提交或夭折交或夭折)。子事务对父事务的夭折依靠子事务对父事务的夭折依靠(AD):父事务夭折则子事务确定夭折。:父事务夭折则子事务确定夭折。(2)数据相关数据相关数据相关
29、就是不同事务间的共享数据联系,但此数据相关就是不同事务间的共享数据联系,但此“共享共享”概念比传统概念比传统的具有更广的意义。实时嵌套事务中的子事务共享父事务数据,子事的具有更广的意义。实时嵌套事务中的子事务共享父事务数据,子事务提交时对数据库的更改托付给父事务,只有父事务提交时才能真正务提交时对数据库的更改托付给父事务,只有父事务提交时才能真正地写入数据库。地写入数据库。(3)结果补偿一个实时应用常常由若干任务组成,而一个任务有时可以通过不同途径来实现。一个应用建模为一个事务,一个任务则建模为一组功能等价的子事务,称为该任务的替代集。若一个任务的替代集中的子事务之一能成功执行,则该任务是可完
30、成的。若对应一个事务的全部任务可完成,则该事务是成功的(可提交)。功能替代导致了事务执行路径的不确定性,即一个事务成功执行的路径依靠于执行过程中(子事务)失败的发生,且即使某些子事务失败了,事务仍可能顺当提交。这还体现了实时事务的健壮性要求,即有的事务(任务)不能失败。由于事务的结构困难性和功能替代性,事务的执行经验是不确定,一个子事务的执行直到提交时还不能确定它是否须要。另一方面,一个实时事务可以物理变更现实世界的状态,换句话说,事务可以启动各种活动,这些活动在它提交前就已经影响了现实世界,因而当这种事务夭折时,不能进行传统意义下的“还原”(Undo)。所以,须要一种“补偿”活动来抵消它全部
31、的影响,这种补偿活动也是事务。对于一个(子)事务,若存在能抵消它提交后所产生的全部影响的(子)事务,则称其为是可补偿的,否则是不行补偿的。当然,不是每一个(子)事务都是可补偿的,不行补偿的(子)事务在知道它的确是须要的以前,确定不能提交。3.实时事务的正确性实时事务的正确性在正确性概念及内涵方面,实时事务与传统事务的本质区在正确性概念及内涵方面,实时事务与传统事务的本质区分就在于其有定时限制。因此,事务处理必需同时满足一分就在于其有定时限制。因此,事务处理必需同时满足一样性要求和定时限制。数据库状态正确性包含内部一样和样性要求和定时限制。数据库状态正确性包含内部一样和时间一样,事务执行正确性则
32、包含其结果正确性、行为正时间一样,事务执行正确性则包含其结果正确性、行为正确性、结构正确性和时间正确性。确性、结构正确性和时间正确性。传统数据库中的原子性和可串行化包含了事务正确性的全传统数据库中的原子性和可串行化包含了事务正确性的全部概念。而实时嵌套事务正确性的内容更为丰富,实现的部概念。而实时嵌套事务正确性的内容更为丰富,实现的手段也就更为困难。考虑一种新颖手段也就更为困难。考虑一种新颖的准一样性可串行的准一样性可串行化并发限制策略,将事传统可串行化标准在实时环境下显化并发限制策略,将事传统可串行化标准在实时环境下显得太严格,限制了系统中事务执行的并发度,对于满足事得太严格,限制了系统中事
33、务执行的并发度,对于满足事务定时限制是不利的。所以,须要务执行给系统带来的不务定时限制是不利的。所以,须要务执行给系统带来的不一样限定在确定的范围内,并在确定的时机复原数据库到一样限定在确定的范围内,并在确定的时机复原数据库到一样状态。而实时事务的时间正确性须要一样状态。而实时事务的时间正确性须要“识时识时”协议实协议实现,结构正确性须要事务管理检查事务间的结构相关性来现,结构正确性须要事务管理检查事务间的结构相关性来实现。实现。4.4 实时数据库管理系统实时数据库管理系统一个实时数据库管理系统(RTDBMS)也是一个数据库管理系统(DBMS),但是有新的特性。4.4.1 实时数据库系统的主要
34、问题实时数据库系统的主要问题1数据模型及语言数据模型及语言数据模型及其语言是数据模型及其语言是RTDB领域首先要探讨领域首先要探讨解决的主要问题之一。要开发实时数据模解决的主要问题之一。要开发实时数据模型,就必需设计好允许用户说明实时数据型,就必需设计好允许用户说明实时数据模型中所含的语义学问的、运用户能以各模型中所含的语义学问的、运用户能以各种方式运用的实时数据定义和查询语言,种方式运用的实时数据定义和查询语言,以及能说明以及能说明“困难事务困难事务”的结构及相互作的结构及相互作用的实时事务执行说明语言。用的实时事务执行说明语言。2事务模型与特性事务模型与特性具有具有ACID特性的传统事务模
35、型在实时数据库系统特性的传统事务模型在实时数据库系统中已不适用,必需进行扩展或开发新的中已不适用,必需进行扩展或开发新的“困难事困难事务务”模型。与传统的事务是原子的、平淡的数据模型。与传统的事务是原子的、平淡的数据操作序列的概念相反,困难事务为可以形成各种操作序列的概念相反,困难事务为可以形成各种“内部结构内部结构”的数据操作集合,它可以具有嵌套的数据操作集合,它可以具有嵌套或层次的内部结构、分裂或合并结构、交互合作或层次的内部结构、分裂或合并结构、交互合作或通信结构等,传统事务仅是其最简洁的特例状或通信结构等,传统事务仅是其最简洁的特例状况。况。3事务处理事务处理RTDB系统中事务处理必须
36、要满足事务的各系统中事务处理必须要满足事务的各种定时限制,并发限制是实时事务处理的种定时限制,并发限制是实时事务处理的另一个方面。另一个方面。4数据存储管理数据存储管理数据库操作基本上是数据库操作基本上是I/O受限的,对于实时受限的,对于实时事务而言,传统数据库的磁盘存取延迟带事务而言,传统数据库的磁盘存取延迟带来的影响是不能忍受的。来的影响是不能忍受的。RTDB系统必需考系统必需考虑如何消退数据库操作中的磁盘存取延迟虑如何消退数据库操作中的磁盘存取延迟以满足实时事务的定时限制,这将要求以满足实时事务的定时限制,这将要求“内存数据库内存数据库”的支持。的支持。5I/O与缓冲区管理与缓冲区管理除
37、除CPU与数据外,磁盘与数据外,磁盘I/O和缓冲区对和缓冲区对RTDB系统也是很重要的资源。系统也是很重要的资源。I/O调度对调度对实时系统是一个很重要的探讨方面,实时系统是一个很重要的探讨方面,RTDB系统须要系统须要“识时识时”的的I/O调度算法,其目标调度算法,其目标是支持事务的定时限制。是支持事务的定时限制。缓冲区是另一重要资源,缓冲区管理涉及缓冲区是另一重要资源,缓冲区管理涉及在当前事务之间的存储空间安排问题,其在当前事务之间的存储空间安排问题,其目标是高优先级的执行不因此而受阻。目标是高优先级的执行不因此而受阻。6复原问题复原问题复原在传统数据库中已经是一个困难的问题,而复原在传统
38、数据库中已经是一个困难的问题,而在在RTDB系统中,会变得更为困难。必须要考虑系统中,会变得更为困难。必须要考虑到以下因素:到以下因素:复原过程会影响正在进行的事务,使其超过截止复原过程会影响正在进行的事务,使其超过截止期,这对硬实时事务是不行接受的。期,这对硬实时事务是不行接受的。RTDB系统有时宁愿接受部分不一样的数据以确系统有时宁愿接受部分不一样的数据以确保其刚好性。保其刚好性。对于不行逆的事务、短暂的数据,数据库的复原对于不行逆的事务、短暂的数据,数据库的复原是没有意义的。是没有意义的。4.4.2 实时数据库系统结构实时数据库系统结构RTDBMS的设计目标首先是对事务定时限制的满足,其
39、基本原则是:宁要部分正确而刚好的信息,也不要确定正确但过时的信息。系统性能指标是满足定时限制的事务的比率,它要求必需确保硬实时事务的截止期,必要时宁肯牺牲数据的精确性与一样性。软实时事务满足截止期的比率相对较高,当然100满足截止期是特别困难的。因此,除了上述一般DBMS的功能外,RTDBMS还具有以下功能特性:(1)数据库状态的最新性,即尽可能地保持数据库的状态为不断变更的现实世界当前最真实状态的映像。(2)数据值的时间一样性,即确保事务读取的数据是时间一样的。(3)事务处理的“识时”性,即确保事务的刚好处理,使其定时限制尤其是执行的截止期得以满足。因此,RTDBMS是传统DBMS与实时处理
40、两者功能特性的完善或无缝集成(Seamless Integration)。它与传统DBMS的根本区分就在于具有对数据与事务施加和处理“显式”定时限制的实力,即运用“识时协议”来进行有关数据事务的处理。(1)实时应用:是指具有定时限制的数据库任务,是实时事务产生源。(2)实时事务管理:管理实时事务的生存期,包括产生、执行和结束。(3)识时并发限制:实现识时的并法限制算法。(4)识时调度:实现识时的优先级调度算法。(5)实时资源管理:包括CPU管理、缓冲区管理、实时数据管理、实时数据管理又包括数据操作、存储和复原管理等。(6)实时I/O调度:实现定时限制的磁盘调度算法。4.4.3 实时数据库执行模
41、型实时数据库执行模型1.任务任务/事务模型事务模型传统的传统的ACID(原子、一样、隔离和永久原子、一样、隔离和永久)性性的事务模型对的事务模型对RTDB已不适用,须要具有内已不适用,须要具有内部构造和部构造和/或彼此相关性的或彼此相关性的“困难困难”事务模事务模型,即嵌套、合并型,即嵌套、合并/分裂、通信和合作事务分裂、通信和合作事务模型等。故模型等。故RTDBMS必需支持这种困难事必需支持这种困难事务,处理事务间的结构、行为和时间相关务,处理事务间的结构、行为和时间相关性。性。2.资源模型资源模型它确定系统资源的类型及其管理策略,包括安排、它确定系统资源的类型及其管理策略,包括安排、运用与
42、回收策略。运用与回收策略。RTDBMS必需接受基于优先级必需接受基于优先级和考虑定时限制尤其是截止期的安排策略;资源和考虑定时限制尤其是截止期的安排策略;资源运用的运用的“中断中断”策略也是优先级式的,即高优先策略也是优先级式的,即高优先级可抢占级可抢占(中断中断)低优先级的资源,具体又可以有低优先级的资源,具体又可以有多种不同的抢占方式及其各方面的代价,须要多种不同的抢占方式及其各方面的代价,须要RTDBMS细致决策。细致决策。3.负载模型负载模型它规定各种类型事务的到达(或在系统中生成)、执行期限及频率的分布,包括周期、非周期及零星事务,软或硬事务及其延迟的代价计算等。4.调度模型调度模型
43、它确定事务的优先级安排策略、调度算法、它确定事务的优先级安排策略、调度算法、相互冲突的解决相互冲突的解决(并发限制并发限制)策略及其机制,策略及其机制,限制事务正确、有效地执行。限制事务正确、有效地执行。RTDBMS的的调度模型还应有确定的调度模型还应有确定的“可调度性可调度性”预料预料实力及实力及“应急处理应急处理”实力。实力。5.执行的正确性执行的正确性相对于传统数据库而言,相对于传统数据库而言,RTDBMS执行的正确性执行的正确性在概念、内容与准则上都有根本性的不同,在概念、内容与准则上都有根本性的不同,RTDBMS不但要确保事务执行结果不但要确保事务执行结果(包括返回数包括返回数据的状
44、态及产生的数据库状态据的状态及产生的数据库状态)的正确性,还要保的正确性,还要保证其执行在结构、行为、时间上的正确,即要正证其执行在结构、行为、时间上的正确,即要正的确现事务间的结构、行为、时间相关性及执行的确现事务间的结构、行为、时间相关性及执行依靠性。依靠性。4.5 实时事务模型实时事务模型RTDBMS与一般DBMS的根本性区分在于数据和事务的定时限制,而数据的定时限制最终也要转嫁成事务的定时限制。因此,实时事务模型是RTDBMS须要解决的关键问题。4.5.1 实时事务的建模特性实时事务的建模特性1.定时性定时性定时限制:即事务的执行有显式的时限,定时限制:即事务的执行有显式的时限,如指定
45、的起先时间、截止时间等,它要求如指定的起先时间、截止时间等,它要求RTDB必需有时间处理机制。实时事务的定必需有时间处理机制。实时事务的定时限制划分为:时限制划分为:截止时间:事务完成的最终时间;截止时间:事务完成的最终时间;到达时间:事务在系统中生成的时间;到达时间:事务在系统中生成的时间;期望执行时间:估算的最坏执行时间。期望执行时间:估算的最坏执行时间。2.关键性关键性实时事务的关键性指满足其截止时间的重要性,实时事务的关键性指满足其截止时间的重要性,用价值函数表示。价值函数是用价值函数表示。价值函数是“事务的完成对系事务的完成对系统的价值统的价值”关于关于“完成时间完成时间”的函数。一
46、个事务的函数。一个事务在在t时刻的价值函数表示事务在时刻的价值函数表示事务在t时刻完成对系统所时刻完成对系统所产生的价值,事务在截止时间前完成,价值函数产生的价值,事务在截止时间前完成,价值函数取正值;否则,依据不同关键性渐渐减小,或取取正值;否则,依据不同关键性渐渐减小,或取0、负数等。负数等。3.行为语义行为语义行为语义包括了与事务相联的各种行为和它的发生时间。4.资源要求资源要求实时事务所需资源的类型、数量、运用方实时事务所需资源的类型、数量、运用方式和时间确定了事务的功能、特性和处理式和时间确定了事务的功能、特性和处理方式。资源分为主动资源方式。资源分为主动资源(可单独运用可单独运用)
47、和和被动运用被动运用(一般运用时具有独占性和排他性一般运用时具有独占性和排他性)。5.相关性相关性实时事务间的相关性是由事务在内部、结构、数据共享、同步通信和执行先后的限制引起的,一般分为结构相关性、数据相关性、行为相关性和时间相关性等。4.5.2 实时事务的分类实时事务的分类1.按关键性分类按关键性分类硬实时事务:用于平安紧急性活动,超过截止期则价值函硬实时事务:用于平安紧急性活动,超过截止期则价值函数取负值。硬实时事务在错失执行期限后将会导致灾难性数取负值。硬实时事务在错失执行期限后将会导致灾难性的后果。因此,在系统发觉事务具有很大的负值时,必需的后果。因此,在系统发觉事务具有很大的负值时
48、,必需实行预定的紧急措施。实行预定的紧急措施。软实时事务:这类事务在超截止期后,价值函数会不断下软实时事务:这类事务在超截止期后,价值函数会不断下降,到被称为最终有效时间的某一时刻时,价值函数取降,到被称为最终有效时间的某一时刻时,价值函数取0。软实时事务允许其执行有确定程度的超期。软实时事务允许其执行有确定程度的超期。固实时事务:一旦到达截止时间,价值函数取固实时事务:一旦到达截止时间,价值函数取0,但不为,但不为负值。负值。图2中(a)(c)分别描述硬、软、固实时事务的典型例子。其中,v、t两坐标轴分别为价值函数和时间;d为截止期;e为“最终有效时间”;r为放行或启动时间,当tr时,v(t
49、)=0,意思是在事务未准备好以前启动是无价值的。2.按功能分类按功能分类限制事务:限制事务是引起现实中活动执行的有关事务。限制事务:限制事务是引起现实中活动执行的有关事务。事务时间较短,属于硬实时,可以作为事务处理的子事务事务时间较短,属于硬实时,可以作为事务处理的子事务调用,本身也可触发子事务。调用,本身也可触发子事务。数据接收事务:数据接收事务在数据库中记录了现实中的数据接收事务:数据接收事务在数据库中记录了现实中的状态或发生事务,一般为简洁的只写事务,较短并有周期状态或发生事务,一般为简洁的只写事务,较短并有周期性,这样能保持数据库的性,这样能保持数据库的“外部一样外部一样”,属于硬实时
50、。,属于硬实时。数据处理事务:数据处理事务类似传统数据库事务结构相数据处理事务:数据处理事务类似传统数据库事务结构相关,可用来复原数据库的一样性,可长可短。关,可用来复原数据库的一样性,可长可短。3.按时间分类按时间分类周期事务:以确定周期循环到达并被执行。周期事务:以确定周期循环到达并被执行。非周期事务:非周期事务由内外部事务动非周期事务:非周期事务由内外部事务动态驱动。态驱动。离散事务:非预先支配、离散的、一次性离散事务:非预先支配、离散的、一次性执行的事务。执行的事务。4.按数据方式分类按数据方式分类只读事务:读取数据库中数据值并设置执只读事务:读取数据库中数据值并设置执行限制部件的参数