时间:2022-11-12 02:30:01 | 来源:信息时代
时间:2022-11-12 02:30:01 来源:信息时代
实时数据库数据存储管理 : 实时数据库的数据存储结构、索引及存取方法等。它类似于传统数据库,但由于数据和事务有定时限制,故在下列方面与传统数据库有所不同:
1.实时数据安置
实时数据库空间是一多层次结构: V-RAM、NV-RAM、DISK、AS(archival storage)等,在不同存储层上的数据读、改、写所需的时间不同。影响实时数据安置的因素有:
(1)实时性:实时性强,即有效期很短的数据必须保存在数据库“内存版”中。
(2)活跃性:活跃的即存取频率高的数据一般应该常驻内存。
(3)持久性: 长期使用数据必须存于数据库的“外存版”中; 临时使用的数据可只存于“内存版”直至无用。
(4)关键性:对硬实时事务处理至关重要的关键数据最好先安置于内存,但随后立即复制到外存。
(5)事务类型: “只写”事务往往是“数据接收”事务,因而它们的数据应置于内存中。
(6)事务优先级: 高优先级事务一般是紧迫的,其数据应常驻内存且不被交换出去。
(7) 日志: 其管理极大地影响事务截止期的满足,所以必须设计“内存式” 日志。
2.实时内存数据库技术
参见内存数据库。
3. 索引技术
对实时内存数据库而言,常用的AVL树、B-树和B+-树都已不具优越性。SB-树是一种兼有AVL树和B-树的优点且克服了其不足的内存索引结构。它的查找类似于二叉树,其不同之处主要在于,查找时在每一结点中的比较不是针对其中的所有元素,而只是对其最大(即最右)者和最小(即最左)者。SB-树的维护操作类似于B-树,但由于其独特的结点结构,故在具体的结点插入与删除时有所不同(参见实时数据库数据存储管理)。
4.实时数据库内存版的装入
对支持实时事务的数据库内存版的装入与数据交换,要特别注意下列方面:
(1)主要考虑因素:数据及事务两方面的特征是影响数据装入与交换策略的基本因素。数据特征方面有: ①易变性: 指其变更速率,易变数据要频繁更新;②活跃性: 指存取频率,应该保证活跃数据具有更大的可存取性;③流行性: 指更新的及时性,流行数据必须保持与现实世界当前真实状态一致;④相关性: 指多个数据经常被一起使用的程度。当装入或交换数据时,相关性强的数据应同时装入或交换。事务特征方面有: ①复杂性: 如在嵌套事务中,父子事务的数据是共享的,在装入和交换时,必须注意到这一点; ②实时性: 事务有定时限制,其数据装入的次序及时机必须有利于定时限制满足; ③优先级: 高优先级事务的数据显然应留驻内存,且不应被交换出去。
(2)初始装入:我们开发的初装技术的基本思想是: ①将数据库按“存取频率”、“相亲度”等属性划分成子集; ②设计一个关于这些属性加权的数据存取优先函数; ③求出每一子集的最高存取优先级,④最后基于内存的容量按存取优先级装入各子集。
(3)重装:就是由于故障或停机使数据库内存版本丧失时,根据数据库外存版本和日志来恢复内存版本的过程。重装有整体重装和部分重装两种方法。整体重装可以用初装策略,但由于时间关系,它一般不常用。部分重装则是只装入内存版的一部分,就启动系统工作,再边服务边装入。一种带优先级的顺序重装法对实时数据库比较有效,它考虑事务优先级,优先级高的或按调度策略先要执行的事务数据先装入,使系统尽快地重启动运行,然后按需要逐步装入数据;同时,还综合数据的使用情况,先装入立即所需数据,其次是“流行性”强的数据,再次是“活跃性”或存取频率高的数据,“相关性”大的数据则随时考虑伴随装入。
5.数据库内外存版的交换策略
实时数据库要求提供一种高效的内外存版数据交换策略与机制来支持实时事务处理,数据交换策略要遵循下列原则:
(1) 高易变性(有效期很短)的实时数据必须常驻内存且不能被交换出去。
(2)活跃或高频存取的数据应留驻数据库的“内存版本”中,一般不应被交换出去。
(3)立即流行的数据在第一个处理请求到来时,必须已在内存且不能被交换出去。
(4)高优先级事务的数据在事务的活动期不应被交换出去,应尽可能常驻内存。
(5)非永久数据无需换出,关键数据最好不要被交换出去,以保证存取的及时性和有效性。
(6)关键性数据最好不要被交换出去,以保证存取的及时性和有效性。