实现数据预取方法及装置制造方法及图纸

技术编号:10313727 阅读:153 留言:0更新日期:2014-08-13 16:04
本发明专利技术公开了一种实现数据预取方法及装置,属于计算机技术领域。所述方法包括:获取所述多个文件的元数据;解析每一个文件的元数据,得到所述每一个文件的数据存储项的存储地址;根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表;本发明专利技术中由于元数据中记录了数据之间的关联关系,所以无需耗费大量时间和内存资源进行数据关联关系的挖掘,数据关联关系表建立过程较为简单和迅速,当接收到文件读取请求时,基于建立的数据关联关系进行数据预取可大幅提升数据的读取效率。

【技术实现步骤摘要】
实现数据预取方法及装置
本专利技术涉及计算机
,特别涉及一种实现数据预取方法及装置。
技术介绍
应用服务器从存储阵列读取数据过程中,常常需消耗大量的时间。为了减少数据读取所占用的大量时间,通常会进行数据预取。目前,通常采取如下所示的顺序预取方式和关联预取方式进行数据预取。针对顺序预取方式来说,存储阵列在基于应用服务器的读请求读取第一数据之后,还将读取与第一数据所在扇区相邻的扇区中的第二数据,并将第二数据存储在缓冲区中。后续应用服务器再发送读请求时,若该读请求对应的数据为第二数据,则直接将存储在缓冲区中第二数据返回给应用服务器。针对关联预取方式来说,通常采用C-miner算法和QuickMine算法实现。对于C-miner算法,在存储阵列侧基于历史请求的频繁序列,挖掘数据之间的关联关系,并将该关联关系进行存储。当接收到应用服务器发送的读请求后,存储阵列侧根据存储的关联关系预读与请求的数据相关联的数据。对于QuickMine算法,在应用服务器侧基于历史请求的频繁序列,挖掘数据之间的关联关系,并将该关联关系发送给存储阵列。当存储阵列接收到应用服务器发送的读请求后,根据存储的关联关系预读与请求的数据相关联的数据。现有的数据预取方式,由于顺序预取方式中可能会出现大量并发数据,从而产生大量不同的数据序列,这样将导致无法识别数据是否顺序的,还可能存在由于数据本身比较小,所以识别数据较为困难的情况,所以该种数据预取方式效果较差;由于关联预取方式中需根据数目众多的频繁序列进行关联关系的挖掘,所以需消耗大量的时间和内存资源,该种数据预取方式的效果较差。
技术实现思路
为了解决现有技术的问题,本专利技术实施例提供了一种实现数据预取方法及装置。所述技术方案如下:第一方面,提供了一种实现数据预取方法,所述方法包括:获取所述多个文件的元数据;解析每一个文件的元数据,得到所述每一个文件的数据存储项的存储地址;根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表。在第一方面的第一种可能的实现方式中,所述根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表,包括:对于所述每一个文件,根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立一个数据关联表项;所述多个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项组成所述数据关联关系表。结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述方法还包括;在存储地址查询表的所述每一个文件的元数据和数据存储项的存储地址中记录所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项在所述数据关联关系表中的地址;其中,所述存储地址查询表是按照存储地址顺序构成的。结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述解析所述每一个文件的元数据,还包括获得所述每一个文件的数据存储项的长度,则所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项中还包括数据存储项的长度。结合第一方面、第一方面的第一种至第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表之后,所述方法还包括:当检测到所述多个文件中任一个文件的元数据或数据存储项发生变化时,向存储设备发送通知消息,所述通知信息中包括变化的元数据或变化的数据存储项,以使所述存储设备在接收到所述通知消息后,根据所述通知消息更新变化的文件的元数据的存储地址和数据存储项的存储地址的数据关联表项。第二方面,提供了一种实现数据预取方法,应用于存储设备,所述存储设备中存储多个文件,其特征在于,所述方法包括:接收文件读取请求,所述文件读取请求中包括读取的目标数据存储地址和目标数据长度;查询数据关联关系表,确定与所述读取的目标数据存储地址存在关联关系的预取数据存储地址;根据所述读取的目标数据长度对所述预取数据存储地址中的数据进行预取;其中,所述数据关联关系表中存储了每一个文件的元数据的存储地址与数据存储项的存储地址的关联关系,其中,所述目标数据存储地址和所述预取数据存储地址为所述元数据的存储地址和所述数据存储项的存储地址中的一种。在第二方面的第一种可能的实现方式中,所述查询数据关联关系表,确定与所述读取的目标数据存储地址存在关联关系的预取存储地址,包括:查询存储地址查询表,根据所述读取的目标数据存储地址,确定所述读取的目标数据存储地址所在的数据关联表项在所述数据关联关系表中的地址;在所述数据关联表项中,查找所述目标数据存储地址的关联存储地址;将所述关联存储地址中的起始数据存储地址作为预取数据存储地址;其中,在存储地址查询表的所述每一个文件的元数据和数据存储项的存储地址中记录所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项在所述数据关联关系表中的地址;其中,所述存储地址查询表是按照存储地址顺序构成的。第三方面,提供了一种实现数据预取装置,所述装置包括:数据获取模块,用于获取所述多个文件的元数据;数据解析模块,用于解析每一个文件的元数据,得到所述每一个文件的数据存储项的存储地址;关联关系建立模块,用于根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表。在第三方面的第一种可能的实现方式中,所述关联关系建立模块,用于对于所述每一个文件,根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立一个数据关联表项;所述多个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项组成所述数据关联关系表。结合第三方面,在第三方面的第二种可能的实现方式中,所述装置还包括:存储地址记录模块,用于在存储地址查询表的所述每一个文件的元数据和数据存储项的存储地址中记录所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项在所述数据关联关系表中的地址;其中,所述存储地址查询表是按照存储地址顺序构成的。结合第三方面及第三方面的第一种可能的实现方式,在第三方面的第三种可能的实现方式中,所述数据解析模块,还用于获得所述每一个文件的数据存储项的长度,则所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项中还包括数据存储项的长度。结合第三方面、第三方面的第一种至第三种可能的实现方式,在第三方面的第四种可能的实现方式中,所述装置还包括:通知消息发送模块,用于当检测到所述多个文件中任一一个文件的元数据或数据存储项发生变化时,向存储设备发送通知消息,所述通知信息中包括变化的元数据或变化的数据存储项,以使所述存储设备在接收到所述通知消息后,根据所述通知消息更新变化的文件的元数据的存储地址和数据存储项的存储地址的数据关联表项。第四方面,提供了一种实现数据预取装置,应用于存储设备,所述存储设备中存储多个文件,其特征在于,所述装置包括:读取请求接收模块,用于接收文件读取请求,所述文件读取请求中包括读取的目标数据存储地址和目标数据长度;存储地址确定模块,用于查询数据关联关系表,确定与所述读取的目标数据存储地址存在关联关系的预取数据存储地址;数据预取模块,用于根据所述读取的目标数据长度对所述预取数据存储本文档来自技高网...
实现数据预取方法及装置

【技术保护点】
一种实现数据预取方法,应用于存储设备,所述存储设备中存储多个文件,其特征在于,所述方法包括:获取所述多个文件的元数据;解析每一个文件的元数据,得到所述每一个文件的数据存储项的存储地址;根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表。

【技术特征摘要】
1.一种实现数据预取方法,应用于存储设备,所述存储设备中存储多个文件,其特征在于,所述方法包括:获取所述多个文件的元数据;解析每一个文件的元数据,得到所述每一个文件的数据存储项的存储地址,所述每一个文件的数据存储项中存储了与元数据相关联的文件数据;根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表;其中,所述根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表,包括:对于所述每一个文件,根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立一个数据关联表项;所述多个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项组成所述数据关联关系表。2.根据权利要求1所述的方法,其特征在于,所述方法还包括;在存储地址查询表的所述每一个文件的元数据和数据存储项的存储地址中记录所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项在所述数据关联关系表中的地址;其中,所述存储地址查询表是按照存储地址顺序构成的。3.根据权利要求1所述的方法,其特征在于,所述解析所述每一个文件的元数据,还包括获得所述每一个文件的数据存储项的长度,则所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项中还包括数据存储项的长度。4.根据权利要求1至3中任一权利要求所述的方法,其特征在于,所述根据所述每一个文件的元数据的存储地址和数据存储项的存储地址,建立数据关联关系表之后,所述方法还包括:当检测到所述多个文件中任一个文件的元数据或数据存储项发生变化时,向存储设备发送通知消息,所述通知信息中包括变化的元数据或变化的数据存储项,以使所述存储设备在接收到所述通知消息后,根据所述通知消息更新变化的文件的元数据的存储地址和数据存储项的存储地址的数据关联表项。5.一种实现数据预取方法,应用于存储设备,所述存储设备中存储多个文件,其特征在于,所述方法包括:接收文件读取请求,所述文件读取请求中包括读取的目标数据存储地址和目标数据长度;查询数据关联关系表,确定与所述读取的目标数据存储地址存在关联关系的预取数据存储地址;根据所述读取的目标数据长度对所述预取数据存储地址中的数据进行预取;其中,所述数据关联关系表中存储了每一个文件的元数据的存储地址与数据存储项的存储地址的关联关系,其中,所述目标数据存储地址和所述预取数据存储地址为所述元数据的存储地址和所述数据存储项的存储地址中的一种;其中,所述每一个文件的元数据的存储地址与数据存储项的存储地址组成一个数据关联表项;所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项组成所述数据关联关系表,所述每一个文件的数据存储项中存储了与元数据相关联的文件数据。6.根据权利要求5所述的方法,其特征在于,所述查询数据关联关系表,确定与所述读取的目标数据存储地址存在关联关系的预取存储地址,包括:查询存储地址查询表,根据所述读取的目标数据存储地址,确定所述读取的目标数据存储地址所在的数据关联表项在所述数据关联关系表中的地址;在所述数据关联表项中,查找所述目标数据存储地址的关联存储地址;将所述关联存储地址中的起始数据存储地址作为预取数据存储地址;其中,在存储地址查询表的所述每一个文件的元数据和数据存储项的存储地址中记录所述每一个文件的元数据的存储地址和数据存储项的存储地址的数据关联表项在所述数据关联关系表中的地址;其中,所述存储地址查...

【专利技术属性】
技术研发人员:蓝文海覃伟峰
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1