一种数据容错的方法及设备技术

技术编号:20025623 阅读:19 留言:0更新日期:2019-01-06 04:30
本申请的目的是提供一种数据容错的方法及设备,本申请通过首先获取用户的数据请求,根据所述数据请求获取对应的数据和所述数据的原始处理流程;接着在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,则对所述数据进行纠错转换,实现了在所述数据的原始处理流程前,对需要进行纠错的所述数据进行纠错转换,确保了对需要纠错的所述数据进行纠错转换的实时性,之后将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,进行所述数据的原始处理流程,保证了在对所述数据进行纠错转换的同时,不影响所述数据对应的原始处理流程。

【技术实现步骤摘要】
一种数据容错的方法及设备
本申请涉及计算机领域,尤其涉及一种数据容错的方法及设备。
技术介绍
现有技术的数据纠错方案中,数据库使用过程中由于某些原因,用户可能录入了错误的数据,按照现有的数据库中数据的纠错方法需要UPDATE(更新)数据,会带来额外的资源开销,而且不能持久;并且在某些情况下是无法避免产生错误数据的,例如产生错误的来源是客户端编码问题,或者程序BUG(漏洞),或者中间层不兼容等,上述产生错误数据的情况会一直持续,且一次的UPDATE(更新)可能远远不够,需要持续的更新数据来进行纠错,对数据库产生额外的写数据负担;同时,由于在数据库使用过程中将数据录入后才进行纠错,导致纠错存在滞后性(滞后时差)。
技术实现思路
本申请的一个目的是提供一种数据容错的方法及设备,解决对数据进行自动纠错的问题。根据本申请的一个方面,提供了一种数据容错的方法,该方法包括:获取用户的数据请求,根据所述数据请求获取对应的数据和所述数据的原始处理流程;在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,进行所述数据的原始处理流程。进一步地,上述方法中,在所述数据的原始处理流程前对所述数据是否进行纠错的判断之后,还包括:若否,将所述数据作为所述数据的原始处理流程的输入后,进行所述数据的原始处理流程。进一步地,上述方法中,在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,包括:通过一钩子程序在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,通过所述钩子程序对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的输入。进一步地,上述方法中,对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,包括:获取预设的转换规则,判断所述数据与所述转换规则是否匹配,若是,基于所述转换规则对所述数据进行纠错转换。进一步地,上述方法中,所述转换规则包括静态转换规则和动态转换规则。进一步地,上述方法中,当所述转换规则为静态转换规则,且所述静态转换规则包括转换前的数据和对应的转换后的数据时,基于所述转换规则对所述数据进行纠错转换,包括:将所述数据作为所述静态转换规则中转换前的数据,将所述数据进行纠错转换为所述静态转换规则中对应的转换后的数据。进一步地,上述方法中,当所述转换规则为动态转换规则,且所述动态转换规则包括检查函数和转换函数时,判断所述数据与所述转换规则是否匹配,若是,基于所述转换规则对所述数据进行纠错转换,包括:基于所述检查函数判断所述数据与所述转换规则是否匹配,若是,基于所述转换函数对所述数据进行纠错转换。进一步地,上述方法中,若所述数据请求为数据写请求,根据所述数据写请求获取到的对应的数据包括:所述数据写请求中所携带的写数据;对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,包括:对所述写数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据;进行所述数据的原始处理流程,包括:将所述纠错转换结果进行编码后存储入数据库。进一步地,上述方法中,若所述数据请求为数据读请求,根据所述数据读请求获取到的对应的数据包括:根据所述数据读请求从数据库中对应读取的且经过解码后的数据;对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,包括:对所述经过解码后的数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据;进行所述数据的原始处理流程,包括:将纠错转换结果返回给所述用户。进一步地,上述方法中,若所述数据请求为数据写请求,所述原始处理流程为:对根据所述数据写请求获取到的对应的数据进行编码后,并写入数据库;若所述数据请求为数据读请求,所述原始处理流程为:将根据所述数据读请求获取到的对应的数据返回给所述数据读请求中的用户。根据本申请的另一方面,还提供了一种数据处理方法,包括:开启钩子程序,其中,所述钩子程序用于监视数据请求并先于被请求数据对应的处理程序被操作系统调用;获取数据请求,其中,所述数据请求包括数据请求标识和数据存储位置,所述数据请求标识包括读标识、写标识、增标识、删标识、查标识或改标识;获取所述数据请求对应的目标数据及该目标数据对应的处理程序;基于所述钩子程序,对所述目标数据进行预处理,得到结果数据;将所述结果数据发送给所述处理程序。根据本申请的另一方面,还提供了一种数据容错的设备,该设备包括:获取装置,用于获取用户的数据请求,根据所述数据请求获取对应的数据和所述数据的原始处理流程;判断装置,用于在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,进行所述数据的原始处理流程。根据本申请的另一个方面,提供了一种基于计算的设备,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:获取用户的数据请求,根据所述数据请求获取对应的数据和所述数据的原始处理流程;在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,进行所述数据的原始处理流程。根据本申请的另一个方面,提供了一种存储可执行指令的非暂态计算机可读存储介质,在所述可执行指令由电子设备执行时,使得所述电子设备:获取用户的数据请求,根据所述数据请求获取对应的数据和所述数据的原始处理流程;在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,进行所述数据的原始处理流程。与现有技术相比,本申请通过首先获取用户的数据请求,根据所述数据请求获取对应的数据和所述数据的原始处理流程;接着在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,则对所述数据进行纠错转换,实现了在所述数据的原始处理流程前,对需要进行纠错的所述数据进行纠错转换,确保了对需要纠错的所述数据进行纠错转换的实时性,之后将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,进行所述数据的原始处理流程,保证了在对所述数据进行纠错转换的同时,不影响所述数据对应的原始处理流程。附图说明通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:图1示出本申请一个方面的实施例中的一种数据容错的方法的基本流程示意图;图2a示出本申请一个方面的实施例中的当数据请求为数据写请求时对应的一种数据容错的方法的步骤示意图;图2b示出本申请一个方面的实施例中的当数据请求为数据写请求时对应的一种数据容错的方法的整体纠错判断过程的示意图;图3a示出本申请一个方面的实施例中的当数据请求为数据写请求时对应的一种数据容错的方法的步骤示意图;图3b示出根据本申请一个方面的的实施例中的当数据请求为数据读请求时对应的一种数据容错的方法的整体纠错判断过程的示意图;图4示出根据本申请本文档来自技高网...

【技术保护点】
1.一种数据容错的方法,其中,所述方法包括:获取用户的数据请求,根据所述数据请求获取对应的数据和所述数据的原始处理流程;在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,进行所述数据的原始处理流程。

【技术特征摘要】
1.一种数据容错的方法,其中,所述方法包括:获取用户的数据请求,根据所述数据请求获取对应的数据和所述数据的原始处理流程;在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,进行所述数据的原始处理流程。2.根据权利要求1所述的方法,其中,在所述数据的原始处理流程前对所述数据是否进行纠错的判断之后,还包括:若否,将所述数据作为所述数据的原始处理流程的输入后,进行所述数据的原始处理流程。3.根据权利要求1所述的方法,其中,在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,包括:通过一钩子程序在所述数据的原始处理流程前对所述数据进行是否纠错的判断,若是,通过所述钩子程序对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的输入。4.根据权利要求1所述的方法,其中,对所述数据进行是否纠错的判断,若是,对所述数据进行纠错转换,包括:获取预设的转换规则,判断所述数据与所述转换规则是否匹配,若是,基于所述转换规则对所述数据进行纠错转换。5.根据权利要求4所述的方法,其中,所述转换规则包括静态转换规则和动态转换规则。6.根据权利要求5所述的方法,其中,当所述转换规则为静态转换规则,且所述静态转换规则包括转换前的数据和对应的转换后的数据时,基于所述转换规则对所述数据进行纠错转换,包括:将所述数据作为所述静态转换规则中转换前的数据,将所述数据进行纠错转换为所述静态转换规则中对应的转换后的数据。7.根据权利要求5所述的方法,其中,当所述转换规则为动态转换规则,且所述动态转换规则包括检查函数和转换函数时,判断所述数据与所述转换规则是否匹配,若是,基于所述转换规则对所述数据进行纠错转换,包括:基于所述检查函数判断所述数据与所述转换规则是否匹配,若是,基于所述转换函数对所述数据进行纠错转换。8.根据权利要求1至7任一项所述的方法,其中,若所述数据请求为数据写请求,根据所述数据写请求获取到的对应的数据包括:所述数据写请求中所携带的写数据;对所述数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据,包括:对所述写数据进行纠错转换,将纠错转换结果作为所述数据的原始处理流程的更新后的输入数据;进行所述数据的原始处理流程,包括:将所述纠错转换结果进行编码后存储入数据库。9.根据权利要求1至7任一项所...

【专利技术属性】
技术研发人员:周正中
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1