18143453325 在线咨询 在线咨询
18143453325 在线咨询
所在位置: 首页 > 营销资讯 > 信息时代 > 记录存储结构(数据库)

记录存储结构(数据库)

时间:2022-12-28 00:30:01 | 来源:信息时代

时间:2022-12-28 00:30:01 来源:信息时代

    记录存储结构 : 记录或元组在定长存储页面中的存储安排。设定长页面的大小为8K字节(byte),则页面内部一般按字节编址,其相对地址从0000编到8191。存储记录或元组的一种最简单的方法是固定数目的定长场(field)法,即元组的属性场的数目是固定的,每个场的长度也是固定的,对属性值长度不规整的取其最长的长度。如将教员关系中其元组姓名、性别、系别、年龄、职称、工资的存储结构的长度分别定义为:8 byte、2 byte、20 byte、3 byte、6 byte、5 byte,即每个元组分配44 byte。系别的字数变化较大,“数学”系是4个byte,但“计算机科学技术及应用”系却有10汉字,只能取最大的长度20 byte。
固定数目的定长场法虽然简单,但浪费存储空间,如上述教员关系中的10个字的系名总是少数。另一个缺点是不灵活,不能应对新属性的扩充和不需要的属性的删除。
最显而易见的改进是采用变长场法,为了分隔各场值可以引入保留字符进行分隔: 张小平#女#数学#37#副教授#5000;李军#男#计算机科学技术及应用#29#讲师#4000。
采用保留字符的变长场法克服了上述定长场法的困难,方法也很简单,但其缺点是不易找到合适的保留字符,必须保证数据中都不会出现保留字符,特别对二进制就更困难。
变长场法的另一种形式叫首部指针法,即在每个元组的首部设置若干个指针,分别指示第一个场值结束第二个场值开始,第二个场值结束第三个场值开始,……,倒数第二个场值结束倒数第一个场值开始的位置,如图1所示。


图1 首部指针法示例


首部指针法中的指针可能占用较大空间,其改进的办法是用场值的长度来代替指针。此外,对于元组中的定长属性值,若每一元组均用数字标明其长度,对于大量存储的元组也开销太大,可以在目录中将各定长场的场长予以记载,在存储元组时只指示变长场的长度,这样可以节约大量的存储空间。场长法的示例如图2所示。其中,V表示变长场,F表示定长场。这种把变长场的当前长度予以显示指明的办法还可用于关系的新属性的扩充,扩充了新属性的元组可将其新场值和场长附加在元组的尾部,从而无须更动原来的存储结构而只需在目录中稍加说明即可完成新属性的扩张。


图2 场长法示例


以上存储元组的方法其各场之间的顺序是在目录中指明的,存储元组时无须再考虑。一种更灵活的方法是将属性名或其内部标识和对应的场值一起存储起来,这样元组中各场的存储顺序就可以自由安排,甚至各个元组中场的顺序都可以不同。当然,这种灵活性是要付出代价的,须消耗更多的空间和时间。
在实际应用中常发生一个关系的某几个属性使用十分频繁而余下的属性使用较少的情况,例如在提级提薪阶段教员关系中的工龄、工资和姓名等属性频繁使用的情况,如果将高频存取的属性归为一组,余下的属性归为一组,两组分别存储并互相拉链,则可提高应用中高频存取属性的效率。其代价则是当存取其余属性时需多一次存取。

关键词:数据,结构,记录

74
73
25
news

版权所有© 亿企邦 1997-2022 保留一切法律许可权利。

为了最佳展示效果,本站不支持IE9及以下版本的浏览器,建议您使用谷歌Chrome浏览器。 点击下载Chrome浏览器
关闭