IO数据处理方法、装置、设备及介质制造方法及图纸

技术编号:37456273 阅读:13 留言:0更新日期:2023-05-06 09:28
本申请公开了IO数据处理方法、装置、设备及介质,应用于分布式存储技术领域,包括:基于预设分类标准对IO数据块进行分类;若IO数据块的大小达到预设分类标准,则将IO数据块分类为大IO数据块,并向各数据存储设备服务发送控制消息,以便各数据存储设备服务将大IO数据块拉取至本地的保电内存;各数据存储设备服务包括主从数据存储设备服务;获取主数据存储设备服务返回的写入成功信息;写入成功信息为主数据存储设备服务自身拉取成功,并接收到从数据存储设备服务发送的拉取成功信息后直接返回;各数据存储设备服务异步对大IO数据块进行落盘操作。能够降低大数据块写流程中的延时,从而提升大数据块和小数据块混合场景下的性能。提升大数据块和小数据块混合场景下的性能。提升大数据块和小数据块混合场景下的性能。

【技术实现步骤摘要】
IO数据处理方法、装置、设备及介质


[0001]本申请涉及分布式存储
,特别涉及IO数据处理方法、装置、设备及介质。

技术介绍

[0002]数控分离架构是基于主转发数据流转方式下发展出来的一种新型数据流转架构,可以使集群最大化的对外提供业务带宽。数控分离架构中,数据流和控制流走不同路径,控制流走主转发流程,数据流走RDMA(即Remote Direct Memory Access,远程直接数据存取)单边流程。通常情况下,大块数据会走数控分离架构,减少带宽占用;控制消息由于消息体积较小,走数控分离收益不大,所以仍然走主转发流程。
[0003]目前,大部分业务场景是大数据块和小数据块混合的IO(即Input/Output,输入/输出)场景,而数控分离流程基于一致性考虑,采用两段式提交设计,即由主DSD(即数据存储设备服务)先进行数据确认,整体交互过程次数较多,对于大块写会有影响。

技术实现思路

[0004]有鉴于此,本申请的目的在于提供IO数据处理方法、装置、设备及介质,能够降低大数据块写流程中的延时,从而提升大数据块和小数据块混合IO场景下的存储系统性能。其具体方案如下:第一方面,本申请公开了一种IO数据处理方法,应用于客户端,包括:基于预设分类标准对IO数据块进行分类;若所述IO数据块的大小达到所述预设分类标准,则将所述IO数据块分类为大IO数据块,并向各数据存储设备服务发送控制消息,以便所述各数据存储设备服务将所述大IO数据块拉取至本地的保电内存;其中,所述各数据存储设备服务包括主数据存储设备服务以及从数据存储设备服务;获取所述主数据存储设备服务返回的写入成功信息;其中,所述写入成功信息为所述主数据存储设备服务自身拉取成功,并接收到所述从数据存储设备服务发送的拉取成功信息后直接向所述客户端返回的信息;并且,所述各数据存储设备服务异步对所述大IO数据块进行落盘操作。
[0005]可选的,还包括:若所述IO数据块的大小未达到所述预设分类标准,则将所述IO数据块分类为小IO数据块,将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,并发送所述消息簇。
[0006]可选的,所述将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,并发送所述消息簇,包括:将携带所述小IO数据块的IO消息放置于第一通信连接的消息队列;将所述消息队列中的携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,并基于所述第一通信连接发送所述消息簇;
其中,所述第一通信连接为所述客户端与所述主数据存储设备服务之间的通信连接。
[0007]可选的,还包括:获取聚合消息数量参数;相应的,所述将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,包括:基于所述聚合消息数量参数将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合,得到消息簇。
[0008]可选的,所述将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,包括:将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行序列化操作,得到每个IO消息对应的字节流;将每个IO消息对应的字节流聚合为消息簇。
[0009]可选的,所述保电内存为注册至RDMA网卡的内存。
[0010]可选的,所述保电内存为NVDIMM或包括BBU和DRAM的内存。
[0011]可选的,所述保电内存还保存所述大IO数据块对应的对象操作信息,以便所述各数据存储设备服务基于所述对象操作信息进行数据恢复操作。
[0012]可选的,在所述基于预设分类标准对IO数据块进行分类之前,还包括:获取用户输入的分类阈值,并将所述分类阈值确定为预设分类标准。
[0013]可选的,在所述基于预设分类标准对IO数据块进行分类之前,还包括:获取纠删条带大小;基于所述纠删条带大小设置分类标准,以得到所述预设分类标准。
[0014]第二方面,本申请公开了一种IO数据处理方法,应用于主数据存储设备服务,包括:获取客户端发送的控制消息;其中,所述控制消息为所述客户端基于预设分类标准对IO数据块进行分类,若所述IO数据块的大小达到所述预设分类标准,则将所述IO数据块分类为大IO数据块,并向各数据存储设备服务发送的控制消息;所述各数据存储设备服务包括所述主数据存储设备服务以及从数据存储设备服务;将所述大IO数据块拉取至本地的保电内存;当自身拉取成功,并接收到从数据存储设备服务发送的拉取成功信息后直接向所述客户端返回写入成功信息;其中,所述拉取成功信息表征所述从数据存储设备服务将所述大IO数据块成功拉取至自身的保电内存;并且,所述各数据存储设备服务异步对所述大IO数据块进行落盘操作。
[0015]可选的,还包括:获取所述客户端发送的消息簇;其中,所述消息簇为将携带小IO数据块的连续相邻的多个IO消息进行聚合得到,并且,所述小IO数据块为大小未达到所述预设分类标准的IO数据块;对所述消息簇进行拆分,得到各IO消息。
[0016]可选的,所述获取所述客户端发送的消息簇,包括:
基于第一通信连接获取所述客户端发送的消息簇;其中,所述第一通信连接为所述客户端与所述主数据存储设备服务之间的通信连接,并且,所述消息簇为所述第一通信连接的消息队列中的携带小IO数据块的连续相邻的多个IO消息进行聚合得到。
[0017]可选的,在对所述消息簇进行拆分,得到各IO消息之后,还包括:将所述各IO消息放置于第二通信连接的消息队列;对该消息队列中的连续相邻的多个IO消息进行聚合以得到消息簇,并将该消息簇基于所述第二通信连接发送至从数据存储设备服务。
[0018]可选的,所述对该消息队列中的连续相邻的多个IO消息进行聚合以得到消息簇,包括:对该消息队列中的连续相邻的多个IO消息进行序列化操作,得到每个IO消息对应的字节流;将每个IO消息对应的字节流聚合为消息簇。
[0019]可选的,还包括:获取聚合消息数量参数;相应的,所述对该消息队列中的连续相邻的多个IO消息进行聚合以得到消息簇,包括:基于所述聚合消息数量参数对该消息队列中的连续相邻的多个IO消息进行聚合以得到消息簇。
[0020]可选的,所述预设分类标准为预设倍数的纠删条带大小。
[0021]第三方面,本申请公开了一种IO数据处理装置,应用于客户端,包括:IO数据块分类模块,用于基于预设分类标准对IO数据块进行分类;若所述IO数据块的大小达到所述预设分类标准,则将所述IO数据块分类为大IO数据块;控制消息发送模块,用于若所述IO数据块分类模块将所述IO数据块分类为大IO数据块,则向各数据存储设备服务发送控制消息,以便所述各数据存储设备服务将所述大IO数据块拉取至本地的保电内存;其中,所述各数据存储设备服务包括主数据存储设备服务以及从数据存储设备服务;写入成功信息获取模块,用于获取所述主数据存储设备服务返回的写入成功信息;其中,所述写入成功信息为所述主数据存本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种IO数据处理方法,其特征在于,应用于客户端,包括:基于预设分类标准对IO数据块进行分类;若所述IO数据块的大小达到所述预设分类标准,则将所述IO数据块分类为大IO数据块,并向各数据存储设备服务发送控制消息,以便所述各数据存储设备服务将所述大IO数据块拉取至本地的保电内存;其中,所述各数据存储设备服务包括主数据存储设备服务以及从数据存储设备服务;获取所述主数据存储设备服务返回的写入成功信息;其中,所述写入成功信息为所述主数据存储设备服务自身拉取成功,并接收到所述从数据存储设备服务发送的拉取成功信息后直接向所述客户端返回的信息;并且,所述各数据存储设备服务异步对所述大IO数据块进行落盘操作。2.根据权利要求1所述的IO数据处理方法,其特征在于,还包括:若所述IO数据块的大小未达到所述预设分类标准,则将所述IO数据块分类为小IO数据块,将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,并发送所述消息簇。3.根据权利要求2所述的IO数据处理方法,其特征在于,所述将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,并发送所述消息簇,包括:将携带所述小IO数据块的IO消息放置于第一通信连接的消息队列;将所述消息队列中的携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,并基于所述第一通信连接发送所述消息簇;其中,所述第一通信连接为所述客户端与所述主数据存储设备服务之间的通信连接。4.根据权利要求2所述的IO数据处理方法,其特征在于,还包括:获取聚合消息数量参数;相应的,所述将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,包括:基于所述聚合消息数量参数将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合,得到消息簇。5.根据权利要求2所述的IO数据处理方法,其特征在于,所述将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行聚合以得到消息簇,包括:将携带所述小IO数据块的IO消息与连续相邻的多个IO消息进行序列化操作,得到每个IO消息对应的字节流;将每个IO消息对应的字节流聚合为消息簇。6.根据权利要求1所述的IO数据处理方法,其特征在于,所述保电内存为注册至RDMA网卡的内存。7.根据权利要求1所述的IO数据处理方法,其特征在于,所述保电内存为NVDIMM或包括BBU和DRAM的内存。8.根据权利要求1所述的IO数据处理方法,其特征在于,所述保电内存还保存所述大IO数据块对应的对象操作信息,以便所述各数据存储设备服务基于所述对象操作信息进行数据恢复操作。9.根据权利要求1至8任一项所述的IO数据处理方法,其特征在于,在所述基于预设分
类标准对IO数据块进行分类之前,还包括:获取用户输入的分类阈值,并将所述分类阈值确定为预设分类标准。10.根据权利要求1至8任一项所述的IO数据处理方法,其特征在于,在所述基于预设分类标准对IO数据块进行分类之前,还包括:获取纠删条带大小;基于所述纠删条带大小设置分类标准,以得到所述预设分类标准。11.一种IO数据处理方法,其特征在于,应用于主数据存储设备服务,包括:获取客户端发送的控制消息;其中,所述控制消息为所述客户端基于预设分类标准对IO数据块进行分类,若所述IO数据块的大小达到所述预设分类标准,则将所述IO数据块分类为大IO数据块,并向各数据存储设备服务发送的控制消息;所述各数据存储设备服务包括所述...

【专利技术属性】
技术研发人员:李杰张在贵
申请(专利权)人:浪潮电子信息产业股份有限公司
类型:发明
国别省市:

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

1