数据库管理系统记录分段存储方法技术方案

技术编号:2864069 阅读:248 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种数据库管理记录分段存储方法,将数据库管理记录数据按其访问频率划分成若干字段分别存储在两块以上的不连续的存储区内,访问频率高的字段排列在前,依次类推,访问频率低的向后排,在每段记录上都设置一个ROWID标识,前一段记录包含后一段记录的ROWID,最后一段记录不设置ROWID标识,不同记录字段通过ROWID标识由数据库引擎直接定位串联构成完整的记录数据。本发明专利技术的分段存储方法与现有技术相比,具有简单易行、显著提高系统的性能和效率,因而具有很好的推广使用价值。

【技术实现步骤摘要】

本专利技术涉及一种计算机应用
,具体地说是一种优化数据库管理系统和提高数据存储速度的。2、技术背景在关系数据库管理系统(下面简称RDBMS或数据库)下,数据存储(在表table中)是由一条一条的记录(即row)组成,而记录又包含若干个字段(即eulumn)。一般来讲,组成记录的若干个字段数据是连续存放在一个和多个物理数据块中,数据块是数据库中的最小的存储单元,当对数据库进行诸如select、insert、update、delete等)数据操作时,数据库引擎首先分析客户端传来的操作请求,然后结合数据字典将对应记录所在的数据块数据读入被称作buffer的数据库缓存中(如果记录数据已在内存中,则直接使用),接着在缓存中进行操作并反馈到客户端,经过insert、update、delete等操作后变化的数据最后还要从内存写回到数据块中。由于数据块是数据库的最小存储单元,被操作记录所在的数据块中的其它记录,即使当时并未被操作也要被读取到数据库缓存buffer中,如果数据块中的其它记录以后被操作,且前边已被操作的数据仍在缓存中保留,则后续的读取速度明显比开始操作时要快的多,这是因为在缓存上的读取速度要比在磁盘上的读取速度快上万倍,因此buffer中缓存的数据量直接影响着数据库的响应速度,buffer中缓存的数据量大,速度就快。另外,在一次操作中可能只需操作数据库记录中的某几个字段,但记录中的所有字段必须都要读到缓存中(大对象LOB类型除外)。现有技术的存储方式所存在的不足是1、整个记录必须完整地读到缓存中,一些用不着的宇段也要读到缓存中,除了增加了磁盘I/O外,用不着的字段信息挤占了宝贵的缓存空间,降低系统的工作性能。2、常用字段和非常用字段采用同样的方式使用内存淘汰算法,不能保障更多的常用数据常驻内存,不利于性能的提高。3、磁盘的结构决定了其本身有性能高的地方和性能低的地方,常用字段和非常用字段采用连续存储,不能合理使用磁盘有效空间,不利于性能的提高4、常用字段和非常用字段采用连续存储,不能使用多个磁盘并行I/O特性,不利于性能的提高。5、常用字段和非常用字段采用连续存储,占用同样的存储资源,不能把非常用字段放在廉价的设备上,不利于降低投资。3、
技术实现思路
本专利技术的目的是将一段记录连续存储一块存储区内改成两段或多段不连续存储在一块或多块存储区域内,每段记录包含若干字段的数据,不同段使用的频率是不一样的,最常用的字段放在第一个段中,同理最不常用的字段放在最后一个段中。每段记录都有一个ROWID标识(并不实际存储),可由数据库引擎直接定位记录,就像常规数据库的ROWID一样组成,前一段记录包含(实际存储)后一段记录的ROWID,最后一段记录不需包含ROWID信息,不同的存储段通过ROWID串起来,它们共同构成一条完整的记录。本专利技术的好处有以下几方面。一、常用的字段与非常用字段分开存放,与数据字典相结合,数据库操作时只把含需要字段的数据块读入缓存,大部分操作只访问常用的字段,非常用字段尽可能少占用宝贵的缓存空间,缓存空间放置数据读取命中率将会大大提高,数据库性能自然会得到提高。二、可以设置常用数据缓冲区和非常用数据缓冲区分别放置常用数据和非常用数据.常用数据缓冲区采用常规的LRU等内存淘汰算法,非常用数据缓冲区采用直接淘汰的方法,可以提高内存使用率,进而提高数据库性能。三、常用的字段与非常用字段分开存放于不同的存储设备上(如磁盘或RAiD组),I/O操作可并行进行,进而提高数据库性能。四、常用的字段与非常用字段分开存放于不同的存储设备上,常用的字段放在快速设备上,非常用字段放在慢速设备上,可以减少系统投资。4、实施方式本专利技术的,将数据库管理系统记录数据按其访问频率划分成若干字段分别存储在两块以上的不连续的存储区内,访问频率高的字段排列在前,依次类推,访问频率低的向后排,在每段记录上都设置一个ROWID标识,前一段记录包含后一段记录的ROWID,最后一段记录不设置ROWID标识,不同记录字段通过ROWID标识由数据库引擎直接定位串联构成完整的记录数据。本专利技术的存储方法在内存中设置常用数据缓冲区和非常用数据缓冲区以适应高频率访问字段和低访问频率字段的缓冲存储。本专利技术的分段存储方法适用于关系数据库和非关系数据库的优化和提高存储速度本专利技术的分段存储方法适用于嵌入式数据库和非嵌入式数据库的优化和提高其存储速度。本专利技术的分段存储方法在实际应用中除了具有明显提高系统性能外,由于在常用的字段存储段上额外引用了一个ROWID标识,多占用了一些字节,在某种程度上略微增加了投资,但这种投资与获得的性能等益处相比是可忽略不计的。本文档来自技高网
...

【技术保护点】
数据库管理系统记录分段存储方法,其特征在于将数据库管理记录数据按其访问频率划分成若干字段分别存储在两块以上的不连续的存储区内,访问频率高的字段排列在前,依次类推,访问频率低的向后排,在每段记录上都设置一个ROWID标识,前一段记录包含后一段记录的ROWID,最后一段记录不设置ROWID标识,不同记录字段通过ROWID标识由数据库引擎直接定位串联构成完整的记录数据。

【技术特征摘要】
1.数据库管理系统记录分段存储方法,其特征在于将数据库管理记录数据按其访问频率划分成若干字段分别存储在两块以上的不连续的存储区内,访问频率高的字段排列在前,依次类推,访问频率低的向后排,在每段记录上都设置一个ROWID标识,前一段记录包含后一段记录的ROWID,最后一段记录不设置ROWID标识,不同记录字段通过ROWID标识由数据库引擎直接定位串联构成完整的记录数据。2.根据权利要求1所述的数...

【专利技术属性】
技术研发人员:李朝铭
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:88[中国|济南]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利