一种数据读取方法及组装装置的制造方法

文档序号:8257837阅读:317来源:国知局
一种数据读取方法及组装装置的制造方法
【技术领域】
[0001]本发明涉及一种数据读取方法及组装装置。
【背景技术】
[0002]现今,主要采用贯穿读出式(Look Through)进行数据读取,这种数据读取方法,在数据存储装置与请求装置之间设缓存装置,如:高速缓冲存储器Cache、断电即掉的非永久储存RAM等,请求装置发出的所有数据读取请求都会首先送到缓存装置,由缓存装置先行在自身查找,如果命中,则将查找到的数据返回给请求装置;如果未命中,则将数据读取请求传给数据存储装置,从数据存储装置中获得需要的数据,再将获得的数据返回给请求装置,发明人经研宄发现,该种数据读取方法读取效率较低。

【发明内容】

[0003]本发明实施例的目的在于提供一种数据读取方法及组装装置,旨在提高数据读取效率。
[0004]本发明实施例是这样实现的:
[0005]第一方面,本发明实施例提供了一种数据读取方法,应用于数据读取系统,所述数据读取系统中包括请求装置、组装装置和数据存储装置,所述数据存储装置中包括多个存储节点,所述请求装置所需读取的数据由多个子数据构成,所述多个子数据分布式存储在所述多个存储节点中,所述方法包括:
[0006]所述组装装置获得所述请求装置发送的数据读取请求,所述数据读取请求中包括,构成所述请求装置所需读取的数据的所述多个子数据与所述多个存储节点的对应关系;
[0007]将所述数据读取请求拆分为多个子请求,所述多个子请求与所述多个子数据一一对应,所述多个子请求分别用于请求读取对应的子数据;
[0008]将每个所述子请求发送至该子请求对应的子数据所在的存储节点;
[0009]获得所述存储节点反馈的每个子请求的子请求反馈;
[0010]将获得的所有所述子请求反馈进行组装,获得所述数据读取请求的读取反馈;
[0011]将所述读取反馈发送至所述请求装置。
[0012]结合第一方面,本发明实施例提供了第一方面的第一种可能实施方式,其中,所述数据读取系统还包括缓存装置,所述将所述读取反馈发送至所述请求装置,包括:
[0013]将所述读取反馈发送至所述缓存装置,通过所述缓存装置将所述读取反馈发送至所述请求装置。
[0014]结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述组装装置获得的所述数据读取请求为物理页请求,所述组装装置获得所述请求装置发送的数据读取请求之后,还包括:将所述数据读取请求转换成逻辑页序列;
[0015]所述将所述数据读取请求拆分为多个子请求,所述多个子请求与所述多个子数据一一对应,所述多个子请求分别用于请求读取对应的子数据,包括:
[0016]将所述逻辑页序列拆分为多个子请求,所述多个子请求与所述多个子数据一一对应,所述多个子请求分别用于请求读取对应的子数据;
[0017]所述将所述读取反馈发送至所述缓存装置,通过所述缓存装置将所述读取反馈发送至所述请求装置,包括:
[0018]将获得的所述读取反馈转换成逻辑页,将所述逻辑页发送至所述缓存装置,通过所述缓存装置将所述逻辑页发送至所述请求装置。
[0019]结合第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第三种可能实施方式,其中,所述将每个所述子请求发送至该子请求对应的子数据所在的存储节点,包括:
[0020]采用滑动窗口将每个所述子请求发送至该子请求对应的子数据所在的存储节占.V,
[0021]所述获得所述存储节点反馈的每个子请求的子请求反馈,包括:
[0022]采用滑动窗口获得所述存储节点反馈的每个子请求的子请求反馈;
[0023]所述将所述读取反馈发送至所述缓存装置,通过所述缓存装置将所述读取反馈发送至所述请求装置,包括:
[0024]采用滑动窗口将所述读取反馈发送至所述缓存装置,采用滑动窗口通过所述缓存装置将所述读取反馈发送至所述请求装置。
[0025]结合第一方面,或第一方面的第一种、第二种或第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述将每个所述子请求发送至该子请求对应的子数据所在的存储节点之后,还包括:
[0026]针对每个子请求,获得所述存储节点的应答反馈,当获得所有所述子请求的应答反馈之后,向所述请求装置发送所述数据读取请求发送成功的信息;
[0027]当超过预设时限,未获得针对某一个子请求,所述存储节点的应答反馈时,重新将所述子请求发送至所述子请求用于读取的所述子数据对应的存储节点。
[0028]第二方面,本发明实施例提供了一种数据组装装置,应用于数据读取系统,所述数据读取系统中包括请求装置、数据存储装置和所述组装装置,所述数据存储装置中包括多个存储节点,所述请求装置所需读取的数据由多个子数据构成,所述多个子数据分布式存储在所述多个存储节点中,所述组装装置包括:
[0029]第一获得单元,用于获得所述请求装置发送的数据读取请求,所述数据读取请求中包括,构成所述请求装置所需读取的数据的所述多个子数据与所述多个存储节点的对应关系;
[0030]拆分单元,用于将所述第一获得单元获得的所述数据读取请求拆分为多个子请求,所述多个子请求与所述多个子数据一一对应,所述多个子请求分别用于请求读取对应的子数据;
[0031]第一发送单元,用于将所述拆分单元拆分的每个所述子请求发送至该子请求对应的子数据所在的存储节点;
[0032]第二获得单元,用于获得所述存储节点反馈的每个子请求的子请求反馈;
[0033]组装单元,用于将获得的所有所述子请求反馈进行组装,获得所述数据读取请求的读取反馈;
[0034]第二发送单元,用于将所述组装单元组装的所述读取反馈发送至所述请求装置。
[0035]结合第二方面,本发明实施例提供了第二方面的第一种可能实施方式,其中,所述数据读取系统还包括缓存装置,所述第二发送单元具体用于,将所述读取反馈发送至所述缓存装置,通过所述缓存装置将所述读取反馈发送至所述请求装置。
[0036]结合第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,所述第一获得单元获得的所述数据读取请求为物理页请求,所述组装装置还包括:
[0037]转换单元,用于在所述第一获得单元获得所述请求装置发送的数据读取请求之后,将所述数据读取请求转换成逻辑页序列;
[0038]所述拆分单元用于,将所述逻辑页序列拆分为多个子请求,所述多个子请求与所述多个子数据一一对应,所述多个子请求分别用于请求读取对应的子数据;
[0039]所述第二发送单元用于,将获得的所述读取反馈转换成逻辑页,将所述逻辑页发送至所述缓存装置,通过所述缓存装置将所述逻辑页发送至所述请求装置。
[0040]结合第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第三种可能实施方式,其中,所述第一发送单元用于,采用滑动窗口将每个所述子请求发送至该子请求对应的子数据所在的存储节点;
[0041]所述第二获得单元用于,采用滑动窗口获得所述存储节点反馈的每个子请求的子请求反馈;
[0042]所述第二发送单元用于,采用滑动窗口将所述读取反馈发送至所述缓存装置,采用滑动窗口通过所述缓存装置将所述读取反馈发送至所述请求装置。
[0043]结合第二方面,或第二方面的第一种、第二种或第三种可能的实施方式,本发明实施例提供了第二方面的第四种可能实施方式,其中,还包括:
[0044]第三获得单元,用于在所述第一发送单元将每个所述子请求发送至该子请求对应的子数据所在的存储节点之后,针对每个子请求,获得所述存储节点的应答反馈,当获得所有所述子请求的应答反馈之后,向所述请求装置发送所述数据读取请求发送成功的信息;
[0045]当超过预设时限,未获得针对某一个子请求,所述存储
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1