一种数据处理方法及装置制造方法及图纸

技术编号:36735581 阅读:24 留言:0更新日期:2023-03-04 10:06
本申请公开了一种数据处理方法及装置,该方法包括:客户端的处理器或网卡生成数据的第一副本和第二副本,由客户端的网卡使用一次单边远程内存访问RDMA方式将第一副本写入存储设备的内存的第一地址以及将第二副本写入该内存的第二地址,或者,由存储设备的网卡根据客户端发送的单边RDMA写请求将数据的第一副本和第二副本分别写入内存的第一地址和第二地址。在存储设备检测到从第一地址读取的第一副本与从第二地址读取的第二副本不一致时,对第一地址存储的数据或第二地址存储的数据执行数据覆盖操作,以使两个内存地址存储的数据相同。实施本申请,通过一次IO消耗实现了数据写入的原子性,降低了数据写入的时延,提高了存储系统的性能。存储系统的性能。存储系统的性能。

【技术实现步骤摘要】
一种数据处理方法及装置


[0001]本申请涉及数据存储领域,尤其涉及一种数据处理方法及装置。

技术介绍

[0002]为了解决数据在写入存储介质的过程中因断电等造成的数据撕裂,即部分数据写入成功以及部分数据写入失败,提出了二次提交方式、三次提交方式等保证了数据写入的原子性,使得该次写请求携带的数据全部写入或全部未写入。
[0003]但是,二次提交方式或三次提交方式都是基于日志的方式将待写入数据在持久化存储,导致输入输出(Input/Output,IO)开销大、网络往返时间长,降低了存储系统的性能。

技术实现思路

[0004]本申请公开了一种数据处理方法及装置,能够实现数据写入的原子性,节省IO开销,提高了存储系统的性能。
[0005]第一方面,本申请提供了一种数据处理方法,该方法包括:客户端的处理器或者网卡生成数据的第一副本和第二副本;其中,处理器与网卡通信;该网卡使用一次单边远程内存访问RDMA方式向存储设备的内存的第一地址写入第一副本,向该内存的第二地址写入第二副本。
[0006]其中,客户端的网卡采用本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,所述方法包括:客户端的处理器或者网卡生成数据的第一副本和第二副本;其中,所述处理器与所述网卡通信;所述网卡使用一次单边远程内存访问RDMA方式向存储设备的内存的第一地址写入所述第一副本,向所述内存的第二地址写入所述第二副本。2.根据权利要求1所述的方法,其特征在于,所述内存为持久化内存。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述网卡使用单边RDMA方式从所述第一地址读取所述第一副本以及从所述第二地址读取所述第二副本;所述处理器或者网卡校验读取的第一副本和读取的第二副本,并从所述读取的第一副本和所述读取的第二副本中确定有效数据。4.根据权利要求3所述的方法,其特征在于,所述处理器或者网卡校验读取的第一副本和读取的第二副本,并从所述读取的第一副本和所述读取的第二副本中确定有效数据,包括:所述处理器或者网卡检测到读取的第一副本与读取的第二副本相同时,确定所述读取的第一副本和所述读取的第二副本为有效数据。5.一种数据处理方法,其特征在于,所述方法包括:存储设备的网卡接收客户端发送的单边远程内存访问RDMA写请求;所述单边RDMA写请求包含数据的第一副本和第二副本,以及所述第一副本在所述存储设备的内存的第一地址和所述第二副本在所述内存的第二地址;所述网卡将所述第一副本写入所述第一地址,以及将所述第二副本写入所述第二地址。6.根据权利要求5所述的方法,其特征在于,所述内存为持久化内存。7.根据权利要求5或6所述的方法,其特征在于,所述方法还包括:所述存储设备的网卡或处理器从所述第一地址读取所述第一副本以及从所述第二地址读取所述第二副本;所述存储设备的网卡或处理器校验读取的第一副本和读取的第二副本,在检测到所述读取的第一副本与所述读取的第二副本不一致时,对所述第一地址存储的数据或所述第二地址存储的数据执行数据覆盖操作。8.根据权利要求7所述的方法,其特征在于,所述读取的第一副本包括第一数据和第一校验码,所述读取的第二副本包括第二数据和第二校验码,在满足以下至少一个条件时,所述读取的第一副本与所述读取的第二副本不一致:所述第一数据与所述第二数据不相同;或所述第一校验码与所述第二校验码不相同。9.根据权利要求8所述的方法,其特征在于,所述对所述第一地址存储的数据或所述第二地址存储的数据执行数据覆盖操作,包括:在基于所述第一校验码校验所述第一数据成功时,使用所述第一数据和所述第一校验码覆盖所述第二地址存储的数据。10.根据权利要求8所述的方法,其特征在于,所述对所述第一地址存储的数据或所述
第二地址存储的数据执行数据覆盖操作,包括:在基于所述第一校验码校验所述第一数据失败且基于所述第二校验码校验所述第二数据成功时,使用所述第二数据和所述第二校验码覆盖所述第一地址存储的数据。11.一种数据处理装置,其特征在于,所述装置包括:生成单元,用于生成数据的第一副本和第二副本;写入单元,用于使用一次单边远程内存访问RDMA方式向存储设备的内存的第一地址写入所述第一副本,向所述内存的第二地址写入所述第二副本。12.根据权利要求11所述的装置,其特征在于,所述内存为持久化内存。13.根据权利要求11或12所述的装置,其特征在于,所述装置还包括:读取单元,用于使用单边RDMA方式从所述第一地址读取所述第一副本以及从所述第二地址读取所述第二副本;校验单元,用于校验读取的第一副本和读取的第二副本,并从所述读取的第一副本和所述读取的第二副本中确定有效数据。14.根据权利要求13所述的装置,其特征在于,所述校验单元,具体用于:检测到读取的第一副本与读取的第二副本相同时,确定所述读取的第一副本和所述读取的第二副本为有效数据。15.一种数据处理装置,其特征在于,所述装置包括:接收单元,用于接收客户端发送的单边远程内存访问RDMA写请求;所述单边RDMA写请求包含数据的第一副本和第二副本,以及所述第一副本在所述存储设备的内存的第一地址和所述第二副本在所述内存的第二地址;写入单元,用于将所述第一副本写入所述第一地址,以及将所述第二副本写入所述第二地址。16.根据权利要求15所述的装置,其特征在于,所述内存为持久化内存。17.根据权利要求15或...

【专利技术属性】
技术研发人员:张陈旭罗小东
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1