一种数据冗余处理方法、装置及存储介质制造方法及图纸

技术编号:25521324 阅读:19 留言:0更新日期:2020-09-04 17:11
本发明专利技术实施例提供了一种数据冗余处理方法、装置及存储介质,所述方法包括:获取IO数据,将所述IO数据映射到集合内,所述集合包括主节点和与主节点对应的纠删码节点,所述IO数据分别映射存储到所述主节点以及所述主节点对应的纠删码节点;所述集合接收IO数据处理请求并在所述集合内执行IO数据处理,其中所述IO数据处理包括写入IO处理和读出IO处理;检测所述集合内的主节点和与主节点对应的纠删码节点是否存在所述IO数据存储故障;若存在IO数据存储故障,对所述IO数据存储故障进行排除后完成IO数据冗余处理;能够检测冗余处理中IO数据是否能够完成读写处理,再对存在IO数据丢失以及故障时,对IO数据进行恢复,使得整个IO数据冗余处理完整性更优。

【技术实现步骤摘要】
一种数据冗余处理方法、装置及存储介质
本专利技术涉及人工智能中的数据处理
,特别是涉及一种数据冗余处理方法、装置及存储介质。
技术介绍
云存储是一种网上在线存储的模式,即把数据存放在通常由第三方托管的多台虚拟服务器,而非专属的服务器上。托管公司运营大型的数据中心,需要数据存储托管的人,则透过向其购买或租赁存储空间的方式,来满足数据存储的需求。数据中心营运商根据客户的需求,在后端准备存储虚拟化的资源,并将其以存储资源池的方式提供,客户便可自行使用此存储资源池来存放文件或对象。云存储系统的三个指标:高可靠性,低存储开销,高读写性能;多副本和纠删码是两种在存储系统中广泛使用的策略,它们在保证高可靠性的前提下,选择了不同极端的权衡,多副本存储开销大,但性能较好;纠删码存储开销低,但性能较差。目前,获取待存储数据的存储策略标识;采用与存储策略标识相应的存储方式存储待存储数据,存储策略标识用于指示采用以下存储方式的至少之一:副本冗余处理方式、纠删编解码处理方式;即为多副本以及纠删码进行数据冗余;多副本以及纠删码的方式进行数据冗余是较为常见的数据处理方式,而目前对于当在多副本以及纠删码的方式进行数据冗余处理时,针对数据可能存在的丢失以及故障的问题;以及在数据丢失或故障后,数据恢复具有难度,且不易操作。
技术实现思路
鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据冗余处理方法和相应的一种数据冗余处理装置。为了解决上述问题,本专利技术实施例公开了一种数据冗余处理方法,所述方法包括:获取IO数据,将所述IO数据映射到集合内,所述集合包括主节点和与主节点对应的纠删码节点,所述IO数据分别映射存储到所述主节点以及所述主节点对应的纠删码节点;所述集合接收IO数据处理请求并在所述集合内执行IO数据处理,其中所述IO数据处理包括写入IO处理和读出IO处理;检测所述集合内的主节点和与主节点对应的纠删码节点是否存在所述IO数据存储故障;若存在IO数据存储故障,对所述IO数据存储故障进行排除后完成IO数据冗余处理;进一步地,所述写入IO处理的执行方法包括:获取主节点内的原始数据,其中,所述原始数据为在获取IO数据之前已经存储在主节点内的初始数据;将所述主节点内的原始数据分划分为K份主数据以及M份校验数据,并生成K+M份数据;将所述K+M份数据写入至所述纠删码节点内;当接收到所述IO数据处理请求时,将所述获取的IO数据分别写入至所述主节点的原始数据中以及所述纠删码节点的K+M份数据中;当所述纠删码节点写入完成时,向所述主节点发送写入完成的响应信息,完成所述写入IO处理;进一步地,所述当所述纠删码节点写入完成时,向所述主节点发送写入完成的响应信息,根据所述响应信息完成所述写入IO处理,包括:对所述响应信息进行场景识别;当识别出所述响应信息为写入IO处理成功场景时,则成功写入IO处理;当识别出所述响应信息为写入IO处理失败场景时,则写入IO处理失败;进一步地,所述当识别出所述响应信息为写入IO处理成功场景时,则成功写入IO处理,包括:若主节点内的IO数据写入成功,且主节点对应的纠删码节点的K+M份数据写入成功的数据份数≥K份,则成功写入IO处理;或者,若主节点内的IO数据写入失败,但主节点对应的纠删码节点内的K+M份数据中K+M份数据都写入成功,则成功写入IO处理;进一步地,所述当识别出所述响应信息为写入IO处理失败场景时,则写入IO处理失败,包括:若主节点内的IO数据写入失败,且主节点对应的纠删码节点内的K+M份数据中K+M份数据都写入失败,则写入IO处理失败;或者,若主节点内的IO数据写入成功,但主节点对应的纠删码节点的K+M份数据写入的数据份数<K份,则写入IO处理失败;进一步地,所述读出IO处理的执行方法包括:在所述主节点内读出待读出的IO数据,所述待读出的IO数据为主节点内的原始数据;所述原始数据在客户端接收后完成读出IO处理;进一步地,所述检测所述集合内的主节点和与主节点对应的纠删码节点是否存在所述IO数据存储故障,包括:检测所述集合内的主节点和与主节点对应的纠删码节点,识别故障位置;当主节点故障时,生成新的临时主节点,进行写入IO处理以及读出IO处理;当与主节点对应的纠删码节点故障,且故障的纠删码节点数据的份数≤M时,在写入IO处理中纠删码节点无需写入IO数据以及读出IO处理;当与主节点对应的纠删码节点故障,且故障的纠删码节点数据的份数>M时,则中断写入IO处理;当主节点和与主节点对应的纠删码节点同时故障,且故障的纠删码节点数据的份数≤M时,选取新的临时主节点,在写入IO处理中纠删码节点无需写入IO数据,在读出IO处理中将主节点内的原始数据读出;进一步地,所述故障节点恢复包括主节点故障恢复和纠删码节点故障恢复,所述若存在IO数据存储故障,对所述IO数据存储故障进行排除后完成IO数据冗余处理,包括:当所述主节点故障时,通过与所述主节点对应的纠删码节点内读取IO数据进行所述主节点故障恢复;当所述纠删码节点故障时,且当前所述纠删码节点为缺失对象的纠删码节点,则其他纠删码节点读取IO数据以进行所述纠删码节点故障恢复;本专利技术实施例还公开了一种数据冗余处理装置,所述装置包括:获取模块,用于获取IO数据,将所述IO数据映射到集合内,所述集合包括主节点和与主节点对应的纠删码节点,所述IO数据分别映射存储到所述主节点以及所述主节点对应的纠删码节点;接收模块,用于所述集合接收IO数据处理请求并在所述集合内执行IO数据处理,其中所述IO数据处理包括写入IO处理和读出IO处理;检测模块,用于检测所述集合内的主节点和与主节点对应的纠删码节点是否存在所述IO数据存储故障;完成模块,用于若存在IO数据存储故障,对所述IO数据存储故障进行排除后完成IO数据冗余处理;本专利技术实施例还公开了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时,实现上述方法的步骤。本专利技术实施例包括以下优点:获取IO数据映射在集合内,通过集合内的IO数据接收相应的IO数据处理请求,IO数据处理请求中包括写入IO数据以及读出IO数据的请求处理,并根据相应的IO数据处理请求进行写入IO处理以及读出IO处理;进行IO数据处理请求后生成响应信息,根据对响应信息进行场景识别,其中响应信息场景包括写入IO处理成功场景以及写入IO失败处理场景,根据成功和失败对写入IO数据请求处理进行判断;同时,对读出IO处理的判断;对集合内的主节点以及主节点对应的纠删码节点进行是否存在IO数据存储故障检测,根据检测结果判断是否完成写入IO处理以及读出IO处理,若不存在故障则完成写入IO处理以及读出IO处理,即完成数据冗余处理;若存在故障则进一步检测故障节点,并对本文档来自技高网...

【技术保护点】
1.一种数据冗余处理方法,其特征在于,包括:/n获取IO数据,将所述IO数据映射到集合内,所述集合包括主节点和与主节点对应的纠删码节点,所述IO数据分别映射存储到所述主节点以及所述主节点对应的纠删码节点;/n所述集合接收IO数据处理请求并在所述集合内执行IO数据处理,其中所述IO数据处理包括写入IO处理和读出IO处理;/n检测所述集合内的主节点和所述纠删码节点是否存在所述IO数据存储故障;/n若存在IO数据存储故障,对所述IO数据存储故障进行排除后完成IO数据冗余处理。/n

【技术特征摘要】
1.一种数据冗余处理方法,其特征在于,包括:
获取IO数据,将所述IO数据映射到集合内,所述集合包括主节点和与主节点对应的纠删码节点,所述IO数据分别映射存储到所述主节点以及所述主节点对应的纠删码节点;
所述集合接收IO数据处理请求并在所述集合内执行IO数据处理,其中所述IO数据处理包括写入IO处理和读出IO处理;
检测所述集合内的主节点和所述纠删码节点是否存在所述IO数据存储故障;
若存在IO数据存储故障,对所述IO数据存储故障进行排除后完成IO数据冗余处理。


2.根据权利要求1所述的方法,其特征在于,所述写入IO处理的执行方法包括:
获取主节点内的原始数据,其中,所述原始数据为在获取IO数据之前已经存储在主节点内的初始数据;
将所述主节点内的原始数据划分为K份主数据以及M份校验数据,并生成K+M份数据;将所述K+M份数据写入至所述纠删码节点内;
当接收到所述IO数据处理请求时,将所述获取的IO数据同时写入至所述主节点的原始数据中以及所述纠删码节点的K+M份数据中;
当所述纠删码节点写入完成时,向所述主节点发送写入完成的响应信息,根据所述响应信息完成所述写入IO处理。


3.根据权利要求2所述的方法,其特征在于,所述当所述纠删码节点写入完成时,向所述主节点发送写入完成的响应信息,根据所述响应信息完成所述写入IO处理,包括:
对所述响应信息进行场景识别;
当识别出所述响应信息为写入IO处理成功场景时,则成功写入IO处理;
当识别出所述响应信息为写入IO处理失败场景时,则写入IO处理失败。


4.根据权利要求3所述的方法,其特征在于,所述当识别出所述响应信息为写入IO处理成功场景时,则成功写入IO处理,包括:
若主节点内的IO数据写入成功,且主节点对应的纠删码节点的K+M份数据写入成功的数据份数≥K份,则成功写入IO处理;或者,
若主节点内的IO数据写入失败,但主节点对应的纠删码节点内的K+M份数据中K+M份数据都写入成功,则成功写入IO处理。


5.根据权利要求3所述的方法,其特征在于,所述当识别出所述响应信息为写入IO处理失败场景时,则写入IO处理失败,包括:
若主节点内的IO数据写入失败,且主节点对应的纠删码节点内的K+M份数据中K+M份数据都写入失败,则写入IO处理失败;或者,
若主节点内的IO数据写入成功,但主节点对应的纠删码节点的K+M份数据写入的...

【专利技术属性】
技术研发人员:雷林凯
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东;44

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

1