技术新讯 > 计算推算,计数设备的制造及其应用技术 > 数据存储请求处理方法、装置和计算机设备与流程  >  正文

数据存储请求处理方法、装置和计算机设备与流程

  • 国知局
  • 2024-10-21 14:57:16

本技术涉及分布式存储,具体而言,涉及一种数据存储请求处理方法、装置和计算机设备。

背景技术:

1、随着科学技术的发展,越来越多的行业采用了弹性云服务器来部署业务。一般,通用的弹性云服务器包括物理服务器和智能网卡,智能网卡可以通过pcie(peripheralcomponent interconnect express,高速串行计算机扩展总线标准)通道与物理服务器连接。

2、相关技术中,在物理服务器需要对云存储系统中的存储器中存储的数据进行读、写时,就需要向智能网卡发送多个数据请求,然后再由智能网卡依次对各数据请求进行处理,并通过队列或排队的方式将各处理后的请求发送到存储器。另外,由于智能网卡具有一定的处理能力,能够进行网络卸载、存储卸载、业务卸载和云管服务,因此可以对物理服务器进行业务卸载和能力增强。

3、然而,在相关技术中的方案中,由于智能网卡需要依次发送请求到存储器,若物理服务器和/或智能网卡的性能较差,那么弹性云服务器就无法通过短时间内发送大量的数据请求以快速地从存储器读写数据,会造成存储器性能的浪费、进而导致弹性云存储访问的性能较差。因此,本技术提出一种数据存储请求处理方法,以解决相关技术中存在的问题。

技术实现思路

1、本技术的目的在于提供一种数据存储请求处理方法、装置和计算机设备,可以达到提高存储访问的性能的效果。

2、本技术的实施例是这样实现的:

3、本技术实施例的第一方面,提供一种数据存储请求处理方法,应用于网卡设备,所述方法包括:

4、通过所述网卡设备的处理部件接收来自服务器的多个数据存储请求,并由所述处理部件根据各所述数据存储请求的第一属性信息和第一预设合并条件对各所述数据存储请求进行初始合并处理,得到各初始合并请求,所述第一属性信息包括所述数据存储请求的硬件队列和访问类型;

5、调用软件引擎解析各所述初始合并请求,得到各所述初始合并请求的第二属性信息,并根据所述第二属性信息和第二预设合并条件对各所述初始合并请求进行处理,得到各处理后请求,所述第二属性信息包括所述初始合并请求的bdf(bus device function,总线设备功能)地址、访问类型和访问地址;

6、将各所述处理后请求发送到存储设备中各存储块,并将存储设备中各存储块返回的响应报文发送到所述服务器。

7、可选地,所述由所述处理部件根据各所述数据存储请求的第一属性信息和第一预设合并条件对各所述数据存储请求进行初始合并处理,得到各初始合并请求,包括:

8、由所述处理部件从各所述数据存储请求中确定第一属性信息匹配的多个待合并请求;

9、由所述处理部件基于所述第一预设合并条件对所述多个待合并请求进行初始合并处理,得到各所述初始合并请求。

10、可选地,由所述处理部件基于所述第一预设合并条件对所述多个待合并请求进行初始合并处理,得到各所述初始合并请求,包括:

11、若所述多个待合并请求中的至少两个连续的待合并请求满足所述第一预设合并条件,则将所述至少两个待合并请求进行合并,得到一个所述初始合并请求;

12、若所述多个待合并请求中存在至少一个无法合并的待合并请求,则将各所述无法合并的待合并请求分别作为一个所述初始合并请求。

13、可选地,所述根据所述第二属性信息和第二预设合并条件对各所述初始合并请求进行处理,得到各处理后请求,包括:

14、分别从各所述初始合并请求中确定所述第二属性信息匹配的多个待处理请求;

15、基于所述第二预设合并条件和各所述初始合并请求的报文头信息分别对所述多个待处理请求进行处理,得到各所述处理后请求;

16、其中,所述报文头信息用于指示各所述初始合并请求对应的所述服务器的各本地存储块与存储设备中各存储块的映射关系、以及指示各所述初始合并请求中各数据存储请求需要访问的存储块。

17、可选地,所述基于所述第二预设合并条件和各所述初始合并请求的报文头信息分别对各所述待处理请求进行处理,得到各所述处理后请求,包括:

18、若所述多个待处理请求中的至少两个待处理请求的报文头信息匹配且所述至少两个待处理请求满足所述第二预设合并条件,则将所述至少两个待处理请求进行合并,得到一个所述处理后请求。

19、可选地,所述基于所述第二预设合并条件和各所述初始合并请求的报文头信息分别对所述多个待处理请求进行处理,得到各所述处理后请求,包括:

20、若所述多个待处理请求中的任一待处理请求的报文头信息不匹配,则将所述任一待处理请求拆分为多个子请求;

21、若所述多个子请求中的至少两个子请求满足所述第二预设合并条件,则将所述至少两个子请求进行合并,得到一个所述处理后请求。

22、可选地,所述方法还包括:

23、若至少一个子请求和至少一个报文头信息匹配的待处理请求满足所述第二预设合并条件,则将所述至少一个子请求和所述至少一个报文头信息匹配的待处理请求进行合并,得到一个所述处理后请求;

24、若所述多个待处理请求中存在至少一个无法合并的待处理请求和/或至少一个无法合并的子请求,则将各所述无法合并的待处理请求和/或各所述无法合并的子请求分别作为一个所述处理后请求。

25、可选地,所述将各所述处理后请求发送到各所述存储块,并将各所述存储块返回的响应报文发送到所述服务器,包括:

26、根据与各所述处理后请求对应的存储块的类型分别对各所述处理后请求进行格式转换;

27、将各格式转换后的处理后请求发送到各所述存储块;

28、接收各所述存储块返回的所述响应报文,并将所述响应报文的格式转换为与所述处理部件匹配的格式,并将转换后的响应报文对应发送到所述服务器中的各本地存储块。

29、本技术实施例的第二方面,提供了一种数据存储请求合并装置,所述数据存储请求合并装置包括:

30、接收合并模块,用于通过所述网卡设备的处理部件接收来自服务器的多个数据存储请求,并由所述处理部件根据各所述数据存储请求的第一属性信息和第一预设合并条件对各所述数据存储请求进行初始合并处理,得到各初始合并请求,所述第一属性信息包括所述数据存储请求的硬件队列和访问类型,所述硬件队列用于指示所述服务器的各本地存储块与存储设备中各存储块的映射关系;

31、解析合并模块,用于调用软件引擎解析各所述初始合并请求,得到各所述初始合并请求的第二属性信息,并根据所述第二属性信息和第二预设合并条件对各所述初始合并请求进行处理,得到各处理后请求,所述第二属性信息包括所述初始合并请求的总线设备功能地址、访问类型和访问地址;

32、发送执行模块,用于将各所述处理后请求发送到存储设备中各存储块,并将存储设备中各存储块返回的响应报文发送到所述服务器。

33、本技术实施例的第三方面,提供了一种计算机设备,所述计算机设备包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述第一方面所述的数据存储请求处理方法。

34、本技术实施例的第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面所述的数据存储请求处理方法。

35、本技术实施例的有益效果包括:

36、本技术实施例提供的一种数据存储请求处理方法,通过该网卡设备的处理部件接收来自服务器的多个数据存储请求,并由该处理部件根据各数据存储请求的第一属性信息和第一预设合并条件对各数据存储请求进行初始合并处理,得到各初始合并请求。由于该第一属性信息包括硬件队列和访问类型,且是基于该硬件队列和该访问类型对各数据存储请求进行合并的,而一个数据存储请求的硬件队列可以同时与多个存储块进行数据传输。那么,在该服务器发送各数据存储请求以同时访问该存储设备的不同存储块的情况下,就可以将该硬件队列和该访问类型相同的多个数据存储请求合并为一个初始合并请求,也即,可以在该处理部件的硬件逻辑固件中基于各数据存储请求的硬件队列对需要访问不同存储块的多个数据存储请求进行粗粒度合并。

37、并且,由于该处理部件部署相应的硬件逻辑固件,由该处理部件接收各数据存储请求并对各数据存储请求进行初始合并处理,就不会占用上述cpu的处理资源,这样,可以降低cpu的处理压力。并且通过将多个数据存储请求合并成初始合并请求,这样,可以在硬件逻辑处理阶段减小访问、存储io(in/out,输入/输出)的频次,可以充分利用io带宽,进而提升硬件逻辑处理阶段处理存储的性能。

38、调用软件引擎解析各初始合并请求,得到各初始合并请求的第二属性信息,并根据该第二属性信息和第二预设合并条件对各初始合并请求进行处理,得到各处理后请求。

39、由于各初始合并请求是经过该处理部件在硬件逻辑固件层面进行合并过的,那么就可以确保各初始合并请求中各数据存储请求的硬件队列和访问类型是相同的,那么该软件引擎就只需要解析出各初始合并请求的第二属性信息,并基于第二属性信息将bdf地址和访问类型相同,且访问地址相邻的多个初始合并请求的报文合并成一个合并报文。这样,通过细粒度合并处理,可将多个初始合并请求中的请求进行重新合并,生成处理后请求,从而既可以提升访问存储器的吞吐量,又可以减小存储器io的频次,从而提升此阶段存储io处理的性能。

40、将各处理后请求发送到存储设备中各存储块,并将存储设备中各存储块返回的响应报文发送到该服务器。由于各处理后请求是对各初始合并请求进行处理得到的,而各初始合并请求是对各数据存储请求进行初始合并处理得到的。从服务器到存储器的数据存储io访问,经过处理部件的硬件逻辑层面的粗粒度合并和软件引擎的细粒度合并处理之后,那么由该网卡设备发送给该存储设备的各处理后请求的数量就远小于各数据存储请求的数量,这样,不但可以使得服务器能可靠地访问各存储块,还可以大幅度地减少存储io的频次,进而降低网络时延、提升网络带宽的利用率,这样可以显著地提升存储性能。

41、如此,可以达到提高存储访问的性能的效果。

本文地址:https://www.jishuxx.com/zhuanli/20241021/319903.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。