数据处理方法、装置、数据接入端及存储介质制造方法及图纸

技术编号:34738830 阅读:10 留言:0更新日期:2022-08-31 18:30
本发明专利技术实施例提供的一种数据处理方法、装置、数据接入端及存储介质,涉及分布式存储领域。首先,接收数据写请求,数据写请求包括待存储数据;然后,对待存储数据进行处理,得到多个数据块,每个数据块均分配有序号;接着,针对每个数据块,根据数据块的序号,从多个存储节点中确定出目标节点,并将数据块与待存储数据的数据版本号发送给目标节点,以使目标节点将数据块和数据版本号分别存储至目标节点的第一空间和第二空间,其中,数据块的序号与目标节点的编号满足预设映射关系,第一空间位于第二空间之前,避免出现各存储节点中数据版本号一致,而数据块存储失败的情况,使数据接入端能及时恢复存储失败的数据块恢复,保证数据的一致性。致性。致性。

【技术实现步骤摘要】
数据处理方法、装置、数据接入端及存储介质


[0001]本专利技术涉及分布式存储领域,具体而言,涉及一种数据处理方法、装置、数据接入端及存储介质。

技术介绍

[0002]大数据时代下,随着海量数据爆发式的增长,分布式存储越来越多的被应用。分布式存储是指数据接入端将待存储数据切分为多个数据条带,通过纠删码算法对多个数据条带进行编码,得到冗余的校验数据,再将各个数据条带和校验数据存储在多个存储节点上。当存在存储失败的数据时,可以通过已存储成功的数据恢复存储失败的数据。
[0003]现有的分布式存储技术中,一般是使用位图记录数据条带的存储位置,通过寻找存储位置来进行数据条带的读写操作,位图通常由元数据进行记录,并与数据条带一起被存储至各存储节点。当任意一个存储节点异常断电时,在该节点处可能会出现元数据存储成功,而数据条带存储失败的情况,此时,由于该节点与其他节点间元数据中的数据版本号是一致的,数据接入端不会对该节点处的存储失败的数据条带进行恢复,无法保障数据的一致性。

技术实现思路

[0004]为了克服现有技术的不足,本专利技术实施例提供了一种数据处理方法、装置、数据接入端和存储介质,其能够避免出现各存储节点中数据版本号一致,而数据条带存在存储失败的情况,使数据接入端能及时能对存储失败的数据条带进行恢复,从而保证数据的一致性。
[0005]本专利技术的实施例可以这样实现:
[0006]第一方面,本专利技术提供一种数据处理方法,应用于分布式存储系统中的数据接入端,所述分布式存储系统还包括多个存储节点,每个所述存储节点均设置有编号,每个所述存储节点均与所述数据接入端通信连接,所述方法包括:
[0007]接收数据写请求,所述数据写请求包括待存储数据;
[0008]对所述待存储数据进行处理,得到多个数据块,每个所述数据块均分配有序号;
[0009]针对每个所述数据块,根据所述数据块的序号,从所述多个存储节点中确定出目标节点,并将所述数据块与所述待存储数据的数据版本号发送给所述目标节点,以使所述目标节点将所述数据块和所述数据版本号分别存储至所述目标节点的第一空间和第二空间,其中,所述数据块的序号与所述目标节点的编号满足预设映射关系,所述第一空间位于所述第二空间之前。
[0010]在可选的实施方式中,所述对所述待存储数据进行处理,得到多个数据块的步骤前,所述方法还包括:
[0011]若所述数据写请求为一个,则将当前时间戳作为所述待存储数据的数据版本号;
[0012]若所述数据写请求为多个,则对所述当前时间戳进行多次自增运算,并按照每个
所述数据写请求的接收时间的先后,将每次自增运算的结果作为一个所述数据写请求中的待存储数据的数据版本号。
[0013]在可选的实施方式中,所述对所述待存储数据进行处理,得到多个数据块的步骤包括:
[0014]按照预设长度将所述待存储数据切分为多个数据条带;
[0015]将每预设数量个所述数据条带组成一个原始数据块,得到多个第一数据块;
[0016]对所述多个原始数据块进行纠删编码,得到多个校验数据块,所述多个数据块包括所述多个原始数据块和所述多个校验数据块。
[0017]在可选的实施方式中,所述方法还包括:
[0018]接收数据读请求,所述数据读请求包括待读取数据的写入节点顺序;
[0019]根据所述写入节点顺序,从每个所述存储节点的第二空间中读取目标数据版本号;
[0020]若所有所述目标数据版本号均一致,则根据所述写入节点顺序,从每个所述存储节点的第一空间中读取目标数据块;
[0021]根据所述预设映射关系和所有所述目标数据块,生成所述待读取数据,以响应所述数据读请求。
[0022]在可选的实施方式中,所述方法还包括:
[0023]若存在不一致的所述目标数据版本号,则根据每个所述目标数据版本号将多个所述存储节点划分为正常节点和异常节点,其中,所有所述正常节点对应的目标数据版本号均一致,每个所述异常节点对应的目标数据版本号与所有所述正常节点对应的目标数据版本号不一致;
[0024]根据所述写入节点顺序,从每个所述正常节点的第一空间中读取目标数据块;
[0025]根据每个所述正常节点对应的目标数据块,恢复每个所述异常节点对应的目标数据块;
[0026]根据所述预设映射关系和所有所述目标数据块,生成所述待读取数据,以响应所述数据读请求。
[0027]在可选的实施方式中,所述根据所述预设映射关系和所有所述目标数据块,生成所述待读取数据的步骤包括:
[0028]根据所述预设映射关系和每个所述存储节点的编号,为每个所述目标数据块分配序号;
[0029]按照每个所述目标数据块的序号对所有所述目标数据块进行排序,得到所述待读取数据。
[0030]在可选的实施方式中,所述方法还包括:
[0031]根据所述写入节点顺序和预设大小,确定每个所述异常节点的第一空间中的目标区域;
[0032]针对每个所述异常节点,利用所述异常节点对应的目标数据块,对所述异常节点的目标区域的内容进行覆盖。
[0033]第二方面,本专利技术提供一种数据处理装置,应用于分布式存储系统中的数据接入端,所述分布式存储系统还包括多个存储节点,每个所述存储节点均设置有编号,每个所述
存储节点均与所述数据接入端通信连接,所述方法包括:
[0034]接收模块,用于接收数据写请求,所述数据写请求包括待存储数据;
[0035]处理模块,用于对所述待存储数据进行处理,得到多个数据块,每个所述数据块均分配有序号;
[0036]发送模块,用于针对每个所述数据块,根据所述数据块的序号,从所述多个存储节点中确定出目标节点,并将所述数据块与所述待存储数据的数据版本号发送给所述目标节点,以使所述目标节点将所述数据块和所述数据版本号分别存储至所述目标节点的第一空间和第二空间,其中,所述数据块的序号与所述目标节点的编号满足预设映射关系,所述第一空间位于所述第二空间之前。
[0037]第三方面,本专利技术提供一种数据接入端,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时,实现如前述实施方式任一项所述的数据处理方法。
[0038]第四方面,本专利技术提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如前述实施方式任一项所述的数据处理方法。
[0039]相较于现有技术,本专利技术实施例提供的一种数据处理方法、装置、数据接入端及存储介质,首先,接收数据写请求,数据写请求包括待存储数据;然后,对待存储数据进行处理,得到多个数据块,每个数据块均分配有序号;接着,针对每个数据块,根据数据块的序号,从多个存储节点中确定出目标节点,并将数据块与待存储数据的数据版本号发送给目标节点,以使目标节点将数据块和数据版本号分别存储至目标节点的第一空间和第二空间,其中,数据块的序号与目标节点的编号本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理方法,其特征在于,应用于分布式存储系统中的数据接入端,所述分布式存储系统还包括多个存储节点,每个所述存储节点均设置有编号,每个所述存储节点均与所述数据接入端通信连接,所述方法包括:接收数据写请求,所述数据写请求包括待存储数据;对所述待存储数据进行处理,得到多个数据块,每个所述数据块均分配有序号;针对每个所述数据块,根据所述数据块的序号,从所述多个存储节点中确定出目标节点,并将所述数据块与所述待存储数据的数据版本号发送给所述目标节点,以使所述目标节点将所述数据块和所述数据版本号分别存储至所述目标节点的第一空间和第二空间,其中,所述数据块的序号与所述目标节点的编号满足预设映射关系,所述第一空间位于所述第二空间之前。2.如权利要求1所述的方法,其特征在于,所述对所述待存储数据进行处理,得到多个数据块的步骤前,所述方法还包括:若所述数据写请求为一个,则将当前时间戳作为所述待存储数据的数据版本号;若所述数据写请求为多个,则对所述当前时间戳进行多次自增运算,并按照每个所述数据写请求的接收时间的先后,将每次自增运算的结果作为一个所述数据写请求中的待存储数据的数据版本号。3.如权利要求1所述的方法,其特征在于,所述对所述待存储数据进行处理,得到多个数据块的步骤包括:按照预设长度将所述待存储数据切分为多个数据条带;将每预设数量个所述数据条带组成一个原始数据块,得到多个原始数据块;对所述多个原始数据块进行纠删编码,得到多个校验数据块,所述多个数据块包括所述多个原始数据块和所述多个校验数据块。4.如权利要求1所述的方法,其特征在于,所述方法还包括:接收数据读请求,所述数据读请求包括待读取数据的写入节点顺序;根据所述写入节点顺序,从每个所述存储节点的第二空间中读取目标数据版本号;若所有所述目标数据版本号均一致,则根据所述写入节点顺序,从每个所述存储节点的第一空间中读取目标数据块;根据所述预设映射关系和所有所述目标数据块,生成所述待读取数据,以响应所述数据读请求。5.如权利要求4所述的方法,其特征在于,所述方法还包括:若存在不一致的所述目标数据版本号,则根据每个所述目标数据版本号将多个所述存储节点划分为正常节点和异常节点,其中,所有所述正常节点对应的目标数据版...

【专利技术属性】
技术研发人员:赵旭东易曌平
申请(专利权)人:重庆紫光华山智安科技有限公司
类型:发明
国别省市:

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

1