一种数据读写方法、系统及装置制造方法及图纸

技术编号:36604642 阅读:12 留言:0更新日期:2023-02-04 18:24
本申请公开了一种数据读写方法、系统及装置,涉及存储领域,该系统能够支持大规模存储集群,通过该系统的方法能够实现跨存储池数据读写功能,避免单点故障问题。方法包括:第一客户端接收第一读写请求,第一读写请求包括待读写数据的第一逻辑地址;向根元数据服务中心发送第一读写请求,使得根元数据服务中心从第一对应关系中查找第一逻辑地址对应的目标存储池的标识,并向目标存储池发送第一读写请求;第一读写请求用于请求目标存储池从第二对应关系中查找第一逻辑地址对应的第一物理地址,针对第一物理地址所指示的存储空间执行读写操作。操作。操作。

【技术实现步骤摘要】
一种数据读写方法、系统及装置


[0001]本申请涉及存储领域,尤其涉及一种数据读写方法、系统及装置。

技术介绍

[0002]分布式存储系统是云服务中数据存储基础设施,其原理是将数据分散存储在多台计算设备上。随着计算技术的发展,分布式存储系统所承载的数据量和访问量也随之增加。为满足一些企业对业务性能以及管理的要求,分布式存储系统需要能够支持大规模集群部署,同时要易于管理。目前对分布式存储系统的规模进行扩展的方案中,在单个分布式存储集群中增加部署节点以扩展分布式存储系统的规模时,由于集群中用于管理元数据的计算设备(如元数据管理节点)的CPU、内存和网卡配置等硬件性能无法无限提升,导致该集群可扩展的规模有限,且存在单点故障问题;在分布式存储系统中设置多个独立的存储集群以扩展分布式存储系统规模时,由于各个集群之间数据分开管理,导致各个集群之间互相隔离,无法跨集群读写数据。

技术实现思路

[0003]本申请提供了一种数据读写方法、系统及装置,该系统能够支持大规模存储集群,通过该系统的方法能够实现跨存储池数据读写功能,避免单点故障问题。
[0004]为实现上述技术目的,本申请采用如下技术方案:
[0005]第一方面,本申请实施例提供了一种数据读写方法,用于第一客户端,该方法包括:接收第一读写请求;第一读写请求包括待读写数据的第一逻辑地址;将第一读写请求发送给根元数据服务中心,使得根元数据服务中心从第一对应关系中查找第一逻辑地址对应的目标存储池的标识,并向目标存储池发送第一读写请求;其中,第一读写请求用于请求目标存储池从第二对应关系中查找第一逻辑地址对应的第一物理地址,针对第一物理地址所指示的存储空间执行读写操作;第一对应关系是多个数据的逻辑地址与多个存储池的标识之间的对应关系;第二对应关系是目标存储池中存储的多个数据的逻辑地址与物理地址之间的对应关系。
[0006]可以理解的是,该方法中,由于根元数据服务中心存储了多个数据的逻辑地址与多个存储池的标识的第一对应关系,每个存储池存储了的多个数据的逻辑地址与物理地址的第二对应关系,第二对应关系由各存储池的元数据管理节点各自管理,该双层元数据管理架构,使得第一客户端可以实现跨存储池读写数据,同时,每个存储池设置元数据管理节点,相比于元数据管理节点设置在根元数据服务中心而言,元数据管理节点管理的存储节点数量降低,有效提高了元数据管理节点的服务性能。另外,元数据管理节点将第二对应关系持久化存储在每个存储池的持久化存储节点中,各个存储池数据隔离,当任意存储池发生故障时,对其他存储池不造成影响,避免了单点故障问题。
[0007]上述数据读写方法使用的数据读写系统,在解决上述跨存储池读写数据、单点故障问题外,由于每个存储池是独立的存储集群,因此该系统可以不受硬件等限制增加存储
池数量,满足了大规模扩展功能。
[0008]在一种实现方式中,上述第一客户端与第一存储池对应,第一读写请求还包括标识信息,标识信息用于指示待读写数据所要读写的存储空间是否在第一存储池;上述将第一读写请求发送给根元数据服务中心,包括:当标识信息用于指示待读写数据所要读写的存储空间不在第一存储池时,将第一读写请求发送给根元数据服务中心。
[0009]在另一种实现方式中,方法还包括:当标识信息用于指示待读写数据所要读写的存储空间在第一存储池时,将第一读写请求发送给第一存储池,以使得第一存储池读写该待读写数据。
[0010]可以理解的是,当第一读写请求是由上层应用发送,上层应用可以根据在第一读写请求中标记要业务中需要的待读写数据是在本地还是异地。第一客户端基于第一读写请求中的标识,选择将第一读写请求发送给第一客户端对应的本地存储池或者是根元数据服务中心。可以理解的是,该方法中第一客户端可以直接判断第一读写请求要读写的数据是否在本地存储池,当第一读写请求中待读写数据在本地存储池时,直接将第一读写请求发送给本地存储池,不需要再经过根元数据服务中心,减少了待读写数据的读写IO路径长度,较大程度的提高数据在本地存储池读写的效率。
[0011]在另一种实现方式中,第一客户端与第一存储池对应,将第一读写请求发送给根元数据服务中心之前,方法还包括:将第一读写请求发送给第一存储池,以使得第一存储池读写待读写数据;接收第一存储池发送的读写失败的消息;读写失败消息用于指示待读写数据所要读写的存储空间不在第一存储池中;将第一读写请求发送给根元数据服务中心,包括:响应于读写失败的消息,将第一读写请求发送给根元数据服务中心。
[0012]可以理解的是,由于第一客户端与第一存储池对应,第一存储池是第一客户端的本地存储池,针对数据本地化的特点,大多数情况下,第一客户端要读写的数据储存在第一存储池,因此,该方法中,第一客户端优先将第一读写请求发送给第一存储池,当待读写数据所要读写的存储空间不在第一存储池时再向根元数据服务中心发送第一读写请求。当待读写数据所要读写的存储空间在本地存储池时,不需要再经过根元数据服务中心,减少了待读写数据的读写IO路径长度,较大程度的提高数据在本地存储池读写的效率。可以理解的是,由于该方法没有修改第一读写请求中包含的内容,因此,该方法不需要修改第一客户端对上层应用的接口参数,该方法改动量较小,实现成本较低。
[0013]在另一种实现方式中,第一客户端所在的设备设置有缓存,缓存储存有第一逻辑地址与目标存储池的标识之间的对应关系,方法还包括:接收第二读写请求,第二读写请求中包含待读写数据的第一逻辑地址;基于缓存中存储的第一逻辑地址与目标存储池的标识之间的对应关系,向目标存储池发送第二读写请求;其中,第二读写请求用于请求目标存储池读写待读写数据。
[0014]可以理解的是,第一客户端所在的设备设置了缓存,当第一客户端接收第二读写请求,当第二读写请求包含第一逻辑地址,即第二读写请求需要读写的数据与第一读写请求中要读写的数据一样时,可以直接基于缓存中存储的第一逻辑地址与目标存储池的标识的对应关系,将第二读写请求发送给目标存储池。该方法中缓存可以将第一客户端读写过的数据所在的存储池的标识储存下来,当下次再次读写相同的数据时,可以不需要经过根元数据服务中心查询该存储池的标识,能够减少数据读写的IO路径长度,提高了读写效率。
[0015]在另一种实现方式中,接收根元数据服务中心发送的第一逻辑地址与目标存储池的标识之间的对应关系,并储存在缓存中;或者,在接收目标存储池发送的待读写数据之后,在缓存中存储第一逻辑地址与目标存储池的标识之间的对应关系。
[0016]可以理解的是,第一逻辑地址与目标存储池的标识之间的对应关系可以基于目标存储池确定,也可以是由根元数据服务中心发送的,本申请对具体如何确定不做限定。一般的,由目标存储池发送待读写数据时确定的第一逻辑地址与目标存储池的标识之间的对应关系方法能更高效。
[0017]第二方面,本申请实施例提供一种数据读写方法,应用于根元数据服务中心,方法包括:接收第一客户端发送的第一读写请求;第一读写请求包括待读写数据本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据读写方法,其特征在于,应用于第一客户端,所述方法包括:接收第一读写请求;所述第一读写请求包括待读写数据的第一逻辑地址;将所述第一读写请求发送给根元数据服务中心,使得所述根元数据服务中心从第一对应关系中查找所述第一逻辑地址对应的目标存储池的标识,并向所述目标存储池发送所述第一读写请求;其中,所述第一读写请求用于请求所述目标存储池从第二对应关系中查找所述第一逻辑地址对应的第一物理地址,针对所述第一物理地址所指示的存储空间执行读写操作;所述第一对应关系是多个数据的逻辑地址与多个存储池的标识之间的对应关系;所述第二对应关系是所述目标存储池中存储的多个数据的逻辑地址与物理地址之间的对应关系。2.根据权利要求1所述的方法,其特征在于,所述第一客户端与第一存储池对应,所述第一读写请求还包括标识信息,所述标识信息用于指示所述待读写数据所要读写的存储空间是否在所述第一存储池;所述将所述第一读写请求发送给根元数据服务中心,包括:当所述标识信息用于指示所述待读写数据所要读写的存储空间不在所述第一存储池时,将所述第一读写请求发送给所述根元数据服务中心。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:当所述标识信息用于指示所述待读写数据所要读写的存储空间在所述第一存储池时,将所述第一读写请求发送给所述第一存储池,以使得所述第一存储池读写所述待读写数据。4.根据权利要求1所述的方法,其特征在于,所述第一客户端与第一存储池对应,所述将所述第一读写请求发送给根元数据服务中心之前,所述方法还包括:将所述第一读写请求发送给所述第一存储池,以使得所述第一存储池读写所述待读写数据;接收所述第一存储池发送的读写失败的消息;所述读写失败消息用于指示所述待读写数据所要读写的存储空间不在所述第一存储池中;所述将所述第一读写请求发送给根元数据服务中心,包括:响应于所述读写失败的消息,将所述第一读写请求发送给根元数据服务中心。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述第一客户端所在的设备设置有缓存,所述缓存储存有所述第一逻辑地址与所述目标存储池的标识之间的对应关系,所述方法还包括:接收第二读写请求,所述第二读写请求中包含所述待读写数据的第一逻辑地址;基于所述缓存中存储的所述第一逻辑地址与所述目标存储池的标识之间的对应关系,向所述目标存储池发送所述第二读写请求;其中,所述第二读写请求用于请求所述目标存储池读写所述待读写数据。6.一种数据读写方法,其特征在于,应用于根元数据服务中心,所述方法包括:接收第一客户端发送的第一读写请求;所述第一读写请求包括待读写数据的第一逻辑地址;从第一对应关系中查找所述第一逻辑地址对应的目标存储池的标识;其中,所述第一对应关...

【专利技术属性】
技术研发人员:黄焰刘国霞
申请(专利权)人:超聚变数字技术有限公司
类型:发明
国别省市:

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

1