【技术实现步骤摘要】
本专利技术涉及一种磁盘读取方法及装置,特别是涉及一种磁盘页面的读取方法和装置。
技术介绍
当从磁盘页面读取数据时,传统方法通常先将数据读取到内存中,以减少磁盘输入输出操作。除此以外,为了提高数据使用效率,预读取技术也被引进到数据库内核中来优化数据库性能。这样,除了需要使用的数据所在的页面被读取以外,与其相邻的其他页面也被预先读取到缓冲池中。这种方法虽然在某种程度上提高了磁盘页面读取的效率,但仅能按照经验设置预读取页面的数量,具有一定的盲目性。如果预读取的页面并非数据库内核接下来将要读取的页面,此时不需要读取的页面甚至已经将缓存中的有效页面替换出去,导致数据库性能降低。同时,如果预读取的页面数量过少,也将导致预读取的数据不足而在后续的读取中产生大量的磁盘读取请求。传统磁盘页面的预读取方法不仅没有提高磁盘读取效率,反而降低了磁盘读取的效率。
技术实现思路
基于此,有必要针对磁盘页面的预读取效率的问题,提供一种磁盘页面的读取方法及装置。一种磁盘页面的读取方法,包括:接收数据库操作指令;从页面缓冲池中查找所述数据库操作指令所需的页面;若未在页面缓冲池中查找到所述页面,则判断所述数据库操作指令类型是否属于预设数据库操作指令类型集合;若所述数据库操作指令类型属于预设数据库操作指令类型集合,则根据数据库操作指令类型确定需要预读取的页面数量;以及根据需要预读取的页面的数量,从磁盘中读取需要预读取的页面到页面缓冲池中。一种磁盘页面的读取装置,所述装置包括:指令接收模块,用于接收数据库操作指令;页面查找模块,用于从页面缓冲池中查找所述数据库操作指令所需的页面;指令类型判断模块, ...
【技术保护点】
一种磁盘页面的读取方法,其特征在于,所述方法包括:接收数据库操作指令;从页面缓冲池中查找所述数据库操作指令所需的页面;若未在页面缓冲池中查找到所述页面,则判断所述数据库操作指令类型是否属于预设数据库操作指令类型集合;若所述数据库操作指令类型属于预设数据库操作指令类型集合,则根据数据库操作指令类型确定需要预读取的页面数量;以及根据需要预读取的页面的数量,从磁盘中读取需要预读取的页面到页面缓冲池中。
【技术特征摘要】
1.一种磁盘页面的读取方法,其特征在于,所述方法包括:接收数据库操作指令;从页面缓冲池中查找所述数据库操作指令所需的页面;若未在页面缓冲池中查找到所述页面,则判断所述数据库操作指令类型是否属于预设数据库操作指令类型集合;若所述数据库操作指令类型属于预设数据库操作指令类型集合,则根据数据库操作指令类型确定需要预读取的页面数量;以及根据需要预读取的页面的数量,从磁盘中读取需要预读取的页面到页面缓冲池中。2.根据权利要求1所述的磁盘页面的读取方法,其特征在于,所述预设数据库操作指令类型集合包括:全表扫描操作指令、全索引扫描操作指令、索引范围扫描操作指令、索引叶节点扫描操作指令、日志扫描操作指令及事务的回滚操作指令。3.根据权利要求2所述的磁盘页面的读取方法,其特征在于,若所述数据库操作指令类型为全表扫描操作指令或全索引扫描操作指令,根据所述数据库操作指令类型确定需要预读取的页面的数量的步骤还包括:获取全表扫描或全索引扫描所需扫描的表的总数据量;将表的总数据量中预设比例的数据量确定为所需读取的数据量;以及根据所需读取的数据量获取需要预读取的页面的数量。4.根据权利要求2所述的磁盘页面的读取方法,其特征在于,若所述数据库操作指令类型为索引范围扫描操作指令或索引叶节点扫描操作指令,根据所述数据库操作指令类型确定需要预读取的页面的数量的步骤还包括:获取索引范围扫描或索引叶节点扫描的请求次数;以及根据所述请求次数获取需要预读取的页面的数量。5.根据权利要求2所述的磁盘页面的读取方法,其特征在于,若所述数据库操作指令类型为日志扫描操作指令或事务回滚操作指令,根据所述数据库操作指令类型确定需要预读取的页面的数量的步骤还包括:根据日志中所记录的被修改的数据所在的页面的数量,得到需要预读取的页面的数量的初始值;当所述初始值大于等于预设第一阈值时,将需要预读取的页面的数量确定为占初始值预设比例的页面的数量;当所述初始值小于所述预设第一阈值且大于预设第二阈值时,将需要预读取的页面的数量确定为所述初始值;以及当所述初始值小于等于所述预设第二阈值时,将需要预读取的页面的数量确定为所述预设第二阈值。6.根据权利要求1所述的磁盘页面的读取方法,其特征在于,所述根据需要预读取的页面的数量,从磁盘中读取需要预读取的页面的步骤包括:对所述需要预读取的页面的物理地址排序;以及根据排序结果和需要预读取的页面的数量,分组读取需要预读取的页面到页面缓冲池中。7.根据权利要求6所述的磁盘页面的读取方法,其特征在于,在对所述需要预读取的页面的物理地址排序的步骤之前还包括:从所述需要预读取的页面的...
【专利技术属性】
技术研发人员:李海翔,宋晓眉,
申请(专利权)人:北京华胜信泰数据技术有限公司,华胜信泰信息产业发展有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。