数据读取方法、装置、设备、数据传输系统及存储介质制造方法及图纸

技术编号:38380646 阅读:7 留言:0更新日期:2023-08-05 17:39
本发明专利技术涉及存储技术领域,具体公开了一种数据读取方法、装置、设备、数据传输系统及存储介质,由分布式存储系统的客户端设备在需要读数据时,根据待读取数据所属的目标对象数据在分布式存储系统对应的目标存储池的纠删配置参数,计算得到待读取数据所在目标对象存储设备的信息,继而生成对该目标对象存储设备的第一读请求,将第一读请求发送至该目标对象存储设备,以使该目标对象存储设备在本地存储中获取待读取数据反馈给客户端设备,使得分布式存储系统纠删场景下的读数据操作非必须经过主对象存储设备中转,精简了读数据操作中的读请求传输路径和返回封装数据的传输路径,提高了读数据效率,进而提升了分布式存储系统的读性能。能。能。

【技术实现步骤摘要】
数据读取方法、装置、设备、数据传输系统及存储介质


[0001]本专利技术涉及存储
,特别是涉及一种数据读取方法、装置、设备、数据传输系统及存储介质。

技术介绍

[0002]在分布式存储系统中,一般使用副本或者纠删数据冗余机制使得数据更加安全可靠。在副本场景下,每个副本都是一份完整的数据,对外可以提供完整的读写服务。在纠删场景下,分布式存储系统使用放置组(Placement Groups,PG)管理对象,一个放置组通常会选出一个主对象存储设备(Object Storage Device,OSD)与客户端设备进行数据输入输出(Input/Output,IO)交互,响应客户端设备的读写请求。在纠删场景下,客户端设备不论向分布式存储系统发送写数据请求还是读数据请求,均需要经过主对象存储设备进行转发。
[0003]具体来说,在数据的读取过程中,由主对象存储设备接收客户端的读请求,由主对象存储设备计算出待读取数据所在的对象存储设备后,从本地或从对象存储设备拉取数据进行封装后返回给客户端设备。如果待读取数据位于从对象存储设备,则读请求的传输路径和返回封装数据的传输路径均需要经过主对象存储设备,使得数据与控制消息均需要在客户端设备与主对象存储设备之间、主对象存储设备和从对象存储设备之间转发,延长的数据传输路径导致主对象存储设备成为影响分布式存储系统读性能的瓶颈。
[0004]如何提升分布式存储系统的读性能,是本领域技术人员需要解决的技术问题。

技术实现思路

[0005]本专利技术的目的是提供一种数据读取方法、装置、设备、数据传输系统及存储介质,用于提升分布式存储系统的读性能。
[0006]为解决上述技术问题,本专利技术提供一种数据读取方法,应用于分布式存储系统的客户端设备,包括:根据待读取数据所属的目标对象数据在所述分布式存储系统中所在的目标存储池的纠删配置参数,计算得到所述待读取数据所在的目标对象存储设备的信息;生成对所述目标对象存储设备的第一读请求;将所述第一读请求发送至所述目标对象存储设备,以使所述目标对象存储设备根据所述第一读请求获取本地存储的所述待读取数据并将所述待读取数据反馈给所述客户端设备。
[0007]在一些实施中,所述根据待读取数据所属的目标对象数据在所述分布式存储系统中所在的目标存储池的纠删配置参数,计算得到所述待读取数据所在的目标对象存储设备的信息,包括:根据所述目标对象数据与放置组的第一映射关系,确定所述待读取数据所在的目标放置组的信息;根据所述目标放置组的信息确定所述目标放置组对应的对象存储设备列表;
根据所述待读取数据在所述目标对象数据中的位置信息以及所述纠删配置参数,计算得到所述待读取数据所在的目标纠删单元的信息;根据所述目标纠删单元的信息和所述对象存储设备列表,确定所述目标对象存储设备的信息。
[0008]在一些实施中,所述根据所述目标对象数据与放置组的第一映射关系,确定所述待读取数据所在的目标放置组的信息,包括:应用可扩展哈希下的受控复制算法根据所述第一映射关系,计算得到所述目标放置组的信息。
[0009]在一些实施中,所述根据所述目标对象数据与放置组的第一映射关系,确定所述待读取数据所在的目标放置组的信息,包括:根据所述目标对象数据的标识信息以及写入所述目标对象数据时接收所述分布式存储系统发送的所述第一映射关系,确定所述目标放置组的信息。
[0010]在一些实施中,所述根据所述目标放置组的信息确定所述目标放置组对应的对象存储设备列表,包括:应用可扩展哈希下的受控复制算法确定与所述目标放置组对应的所述对象存储设备列表。
[0011]在一些实施中,所述纠删配置参数包括数据块个数和纠删条带长度;所述根据所述待读取数据在所述目标对象数据中的位置信息以及所述纠删配置参数,计算得到所述待读取数据所在的目标纠删单元的信息,包括:以所述纠删条带长度除以所述数据块个数,得到所述目标存储池的纠删单元长度;以所述待读取数据在所述目标对象数据中的偏移量除以所述纠删单元长度再对所述数据块个数取余,得到所述目标纠删单元的序号。
[0012]在一些实施中,所述根据所述目标纠删单元的信息和所述对象存储设备列表,确定所述目标对象存储设备的信息,包括:根据所述目标纠删单元的序号在所述对象存储设备列表中查询对应序号的对象存储设备为所述目标对象存储设备,得到所述目标对象存储设备的序号。
[0013]在一些实施中,还包括:在将所述第一读请求发送至所述目标对象存储设备之前,判断所述目标对象存储设备的数量是否超出精简传输数量阈值;如果是,则将所述第一读请求发送至所述目标存储池中对应的主对象存储设备,以使所述主对象存储设备确定所述目标对象存储设备后,将所述第一读请求转发至所述目标对象存储设备以获取所述待读取数据并经过所述主对象存储设备将所述待读取数据反馈给所述客户端设备;如果否,则进入所述将所述第一读请求发送至所述目标对象存储设备,以使所述目标对象存储设备根据所述第一读请求获取本地存储的所述待读取数据并将所述待读取数据反馈给所述客户端设备的步骤。
[0014]在一些实施中,所述判断所述目标对象存储设备的数量是否超出精简传输数量阈值,包括:
根据所述纠删配置参数,计算得到所述目标存储池的纠删单元长度;根据所述纠删单元长度,将所述待读取数据在所述目标对象数据中的位置信息向下对齐到纠删单元,得到所述待读取数据所在的目标纠删单元的个数;若所述目标纠删单元的个数超出所述精简传输数量阈值,则确定所述目标对象存储设备的数量超出所述精简传输数量阈值;若所述目标纠删单元的个数不超出所述精简传输数量阈值,则确定所述目标对象存储设备的数量不超出所述精简传输数量阈值。
[0015]在一些实施中,所述根据所述纠删单元长度,将所述待读取数据在所述目标对象数据中的位置信息向下对齐到纠删单元,得到所述待读取数据所在的目标纠删单元的个数,包括:将所述待读取数据在所述目标对象数据中的偏移量向下对齐到纠删单元,得到所述待读取数据的首端所在的第一目标纠删单元的信息;将所述待读取数据在所述目标对象数据中的偏移量与所述待读取数据的数据长度之和向下对齐到纠删单元,得到所述待读取数据的末端所在的第二目标纠删单元的信息;以所述第一目标纠删单元到所述第二目标纠删单元所包含的纠删单元数量为所述目标纠删单元的个数。
[0016]在一些实施中,还包括:在生成所述第一读请求时,为所述第一读请求添加精简传输路径标志;如果所述目标对象存储设备的数量超出所述精简传输数量阈值,则剔除所述第一读请求中的所述精简传输路径标志后再进入所述将所述第一读请求发送至所述目标存储池中对应的主对象存储设备的步骤。
[0017]在一些实施中,还包括:如果所述目标对象存储设备的数量不超出所述精简传输数量阈值,则为所述第一读请求添加精简传输路径标志。
[0018]在一些实施中,还包括:根据所述客户端设备与所述分布式存储系统之间的传输性能测试结果,更新所述精简传输数量阈值。
[0019]在一些实施中,还包括:在将所本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据读取方法,其特征在于,应用于分布式存储系统的客户端设备,包括:根据待读取数据所属的目标对象数据在所述分布式存储系统中所在的目标存储池的纠删配置参数,计算得到所述待读取数据所在的目标对象存储设备的信息;生成对所述目标对象存储设备的第一读请求;将所述第一读请求发送至所述目标对象存储设备,以使所述目标对象存储设备根据所述第一读请求获取本地存储的所述待读取数据并将所述待读取数据反馈给所述客户端设备。2.根据权利要求1所述的数据读取方法,其特征在于,所述根据待读取数据所属的目标对象数据在所述分布式存储系统中所在的目标存储池的纠删配置参数,计算得到所述待读取数据所在的目标对象存储设备的信息,包括:根据所述目标对象数据与放置组的第一映射关系,确定所述待读取数据所在的目标放置组的信息;根据所述目标放置组的信息确定所述目标放置组对应的对象存储设备列表;根据所述待读取数据在所述目标对象数据中的位置信息以及所述纠删配置参数,计算得到所述待读取数据所在的目标纠删单元的信息;根据所述目标纠删单元的信息和所述对象存储设备列表,确定所述目标对象存储设备的信息。3.根据权利要求2所述的数据读取方法,其特征在于,所述根据所述目标对象数据与放置组的第一映射关系,确定所述待读取数据所在的目标放置组的信息,包括:应用可扩展哈希下的受控复制算法根据所述第一映射关系,计算得到所述目标放置组的信息。4.根据权利要求2所述的数据读取方法,其特征在于,所述根据所述目标对象数据与放置组的第一映射关系,确定所述待读取数据所在的目标放置组的信息,包括:根据所述目标对象数据的标识信息以及写入所述目标对象数据时接收所述分布式存储系统发送的所述第一映射关系,确定所述目标放置组的信息。5.根据权利要求2所述的数据读取方法,其特征在于,所述根据所述目标放置组的信息确定所述目标放置组对应的对象存储设备列表,包括:应用可扩展哈希下的受控复制算法确定与所述目标放置组对应的所述对象存储设备列表。6.根据权利要求2所述的数据读取方法,其特征在于,所述纠删配置参数包括数据块个数和纠删条带长度;所述根据所述待读取数据在所述目标对象数据中的位置信息以及所述纠删配置参数,计算得到所述待读取数据所在的目标纠删单元的信息,包括:以所述纠删条带长度除以所述数据块个数,得到所述目标存储池的纠删单元长度;以所述待读取数据在所述目标对象数据中的偏移量除以所述纠删单元长度再对所述数据块个数取余,得到所述目标纠删单元的序号。7.根据权利要求6所述的数据读取方法,其特征在于,所述根据所述目标纠删单元的信息和所述对象存储设备列表,确定所述目标对象存储设备的信息,包括:根据所述目标纠删单元的序号在所述对象存储设备列表中查询对应序号的对象存储
设备为所述目标对象存储设备,得到所述目标对象存储设备的序号。8.根据权利要求1所述的数据读取方法,其特征在于,还包括:在将所述第一读请求发送至所述目标对象存储设备之前,判断所述目标对象存储设备的数量是否超出精简传输数量阈值;如果是,则将所述第一读请求发送至所述目标存储池中对应的主对象存储设备,以使所述主对象存储设备确定所述目标对象存储设备后,将所述第一读请求转发至所述目标对象存储设备以获取所述待读取数据并经过所述主对象存储设备将所述待读取数据反馈给所述客户端设备;如果否,则进入所述将所述第一读请求发送至所述目标对象存储设备,以使所述目标对象存储设备根据所述第一读请求获取本地存储的所述待读取数据并将所述待读取数据反馈给所述客户端设备的步骤。9.根据权利要求8所述的数据读取方法,其特征在于,所述判断所述目标对象存储设备的数量是否超出精简传输数量阈值,包括:根据所述纠删配置参数,计算得到所述目标存储池的纠删单元长度;根据所述纠删单元长度,将所述待读取数据在所述目标对象数据中的位置信息向下对齐到纠删单元,得到所述待读取数据所在的目标纠删单元的个数;若所述目标纠删单元的个数超出所述精简传输数量阈值,则确定所述目标对象存储设备的数量超出所述精简传输数量阈值;若所述目标纠删单元的个数不超出所述精简传输数量阈值,则确定所述目标对象存储设备的数量不超出所述精简传输数量阈值。10.根据权利要求9所述的数据读取方法,其特征在于,所述根据所述纠删单元长度,将所述待读取数据在所述目标对象数据中的位置信息向下对齐到纠删单元,得到所述待读取数据所在的目标纠删单元的个数,包括:将所述待读取数据在所述目标对象数据中的偏移量向下对齐到纠删单元,得到所述待读取数据的首端所在的第一目标纠删单元的信息;将所述待读取数据在所述目标对象数据中的偏移量与所述待读取数据的数据长度之和向下对齐到纠删单元,得到所述待读取数据的末端所在的第二目标纠删单元的信息;以所述第一目标纠删单元到所述第二目标纠删单元所包含的纠删单元数量为所述目标纠删单元的个数。11.根据权利要求8所述的数据读取方法,其特征在于,还包括:在生成所述第一读请求时,为所述第一读请求添加精简传输路径标志;如果所述目标对象存储设备的数量超出所述精简传输数量阈值,则剔除所述第一读请求中的所述精简传输路径标志后再进入所述将所述第一读请求发送至所述目标存储池中对应的主对象存储设备的步骤。12.根据权利要求8所述的数据读取方法,其特征在于,还包括:如果所述目标对象存储设备的数量不超出所述精简传输数量阈值,则为所述第一读请求添加精简传输路径标志。13.根据权利要求8所述的数据读取方法,其特征在于,还包括:根据所述客户端设备与所述分布式存储系统之间的传输性能测试结果,更新所述精简
传输数量阈值。14.根据权利要求1所述的数据读取方法,其特征在于,还包括:在将所述第一读请求发送至所述目标对象存储设备之前,判断所述待读取数据是否均位于同一所述目标对象存储设备内;如果是,则进入所述将所述第一读请求发送至所述目标对象存储设备,以使所述目标对象存储设备根据所述第一读请求获取本地存储的所述待读取数据并将所述待读取数据反馈给所述客户端设备的步骤;如果否,则将所述第一读请求发送至所述目标存储池中对应的主对象存储设备,以使所述主对象存储设备确定所述目标对象存储设备后,将所述第一读请求转发至所述目标对象存...

【专利技术属性】
技术研发人员:付尧侯斌
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1