CN108196977A - 批量数据回滚方法以及装置 - Google Patents
批量数据回滚方法以及装置 Download PDFInfo
- Publication number
- CN108196977A CN108196977A CN201711210709.4A CN201711210709A CN108196977A CN 108196977 A CN108196977 A CN 108196977A CN 201711210709 A CN201711210709 A CN 201711210709A CN 108196977 A CN108196977 A CN 108196977A
- Authority
- CN
- China
- Prior art keywords
- rollback
- data
- processing
- result
- business logic
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1471—Saving, restoring, recovering or retrying involving logging of persistent data for recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
Abstract
本申请公开了一种批量数据回滚方法,包括:对回滚处理调用的回滚服务对象进行初始化;获取待处理数据在业务逻辑处理前的数据备份和进行业务逻辑处理后获得的业务处理结果;从所述数据备份和所述业务处理结果中筛选待回滚数据;调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。所述批量数据回滚方法能够在不同业务处理场景下实现对业务逻辑处理过程的回滚处理,适应性更强。
Description
技术领域
本申请涉及数据处理领域,具体涉及一种批量数据回滚方法,以及一种批量数据回滚装置。
背景技术
在数据处理领域,随着数据从离散、不统一和不规范的分布状况向数据集中方向转变,对海量数据进行快速批量处理具有广泛的实际需求。随着数据向集中化发展的趋势,尤其是随着大数据的应用和飞速发展,很多场合下需要针对当前执行的任务停止后续任务的执行,要求任务能够快速有效自我终止执行的机制,并且还能够对已执行任务进行回滚的回滚机制。
现有技术常用的回滚机制,在实现每个任务的同时,都要实现每个任务对应的回滚接口,在执行时首先初始化好每个任务和各个任务对应的回滚操作,初始化完成之后执行任务,当收到针对任务的回滚指令时,按照逆序从后往前的方式执行任务对应的回滚操作,执行完成后获得当前任务的回滚执行结果。
然而,现有技术提供的回滚机制,需针对每个任务实现对应的回滚接口,确保回滚过程中每个任务的回滚方法,这些回滚操作开发配置的任务量较大,同时也缺乏灵活性。所以需要提供一套标准化的批量数据回滚方式,使不同业务场景类型的数据通过该批量数据回滚方式进行快速批量处理,节约机器资源和人力资源。
发明内容
本申请提供一种批量数据回滚方法,以解决现有技术存在的缺陷。本申请同时涉及一种批量数据回滚装置。
本申请提供一种批量数据回滚方法,包括:
对回滚处理调用的回滚服务对象进行初始化;
获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果;
从所述数据备份和所述业务处理结果中筛选待回滚数据;
调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。
可选的,所述调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果步骤执行前,执行如下步骤:
对所述待回滚数据进行备份,生成回滚数据备份。
可选的,所述调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果步骤执行后,若触发针对所述回滚任务的二次回滚,执行如下操作:
根据所述回滚结果和所述回滚数据备份,调用所述回滚服务对象对所述回滚任务进行二次回滚,获得二次回滚结果。
可选的,所述对回滚处理调用的回滚服务对象进行初始化步骤执行后,且所述获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果步骤执行前,执行如下步骤:
判断是否存在回滚任务要执行,若是,执行所述获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果步骤。
可选的,所述调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果步骤执行后,执行下述至少一项操作:
根据预设封装条件对所述回滚结果进行个性化封装;
结合所述回滚操作执行过程对所述回滚结果进行分析,获得回滚结果分析报表;
采用持久化的方式存储所述回滚结果。
可选的,所述业务逻辑处理过程采用如下方式实现:
将待处理数据的按照预设数据处理标准进行标准化处理;
对所述待处理数据进行业务逻辑处理调用的业务处理服务对象和进行业务逻辑处理所需的业务处理缓存进行初始化;
对所述标准化处理后的待处理数据进行备份,生成所述备份数据;
根据所述业务处理缓存,调用所述业务处理服务对象对所述待处理数据进行业务逻辑处理,获得所述业务处理结果。
可选的,所述对所述待处理数据进行业务逻辑处理调用的业务处理服务对象和进行业务逻辑处理所需的业务处理缓存进行初始化子步骤执行后,且所述对所述标准化处理后的待处理数据进行备份,生成所述备份数据子步骤执行前,执行如下操作:
从标准化处理后的所述待处理数据中筛选出满足预设筛选条件的待处理数据;
相应的,所述对所述标准化处理后的待处理数据进行备份,生成所述备份数据子步骤备份的所述待处理数据,是指筛选获得的所述待处理数据。
可选的,所述根据所述业务处理缓存,调用所述业务处理服务对象对所述待处理数据进行业务逻辑处理,获得所述业务处理结果子步骤执行后,执行下述至少一项操作:
根据预设封装条件对所述业务处理结果进行个性化封装;
结合所述业务逻辑处理过程对所述业务处理结果进行分析,获得业务处理结果分析报表;
采用持久化存储的方式备份所述业务处理结果。
可选的,所述批量数据回滚方法在离线环境或者线上环境中执行;
或者,所述批量数据回滚方法的至少一个步骤在离线环境中执行,且所述批量数据回滚方法的至少一个步骤在线上环境中执行。
本申请还提供一种批量数据回滚装置,包括:
初始化单元,用于对回滚处理调用的回滚服务对象进行初始化;
数据获取单元,用于获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果;
待回滚数据筛选单元,用于从所述数据备份和所述业务处理结果中筛选待回滚数据;
回滚处理单元,用于调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。
可选的,所述的批量数据回滚装置,包括:
待回滚数据备份单元,用于对所述待回滚数据进行备份,生成回滚数据备份。
可选的,若所述回滚处理单元运行后触发针对所述回滚任务的二次回滚,运行二次回滚单元;
所述二次回滚单元,用于根据所述回滚结果和所述回滚数据备份,调用所述回滚服务对象对所述回滚任务进行二次回滚,获得二次回滚结果。
可选的,所述批量数据回滚装置,包括:
个性化封装单元,用于根据预设封装条件对所述回滚结果进行个性化封装;
回滚结果分析单元,用于结合所述回滚操作执行过程对所述回滚结果进行分析,获得回滚结果分析报表;
和/或,回滚结果存储单元,用于采用持久化的方式存储所述回滚结果。
可选的,所述批量数据回滚装置,包括:
标准化处理单元,用于将待处理数据的按照预设数据处理标准进行标准化处理;
第二初始化单元,用于对所述待处理数据进行业务逻辑处理调用的业务处理服务对象和进行业务逻辑处理所需的业务处理缓存进行初始化;
待处理数据备份单元,用于对所述标准化处理后的待处理数据进行备份,生成所述备份数据;
业务逻辑处理单元,用于根据所述业务处理缓存,调用所述业务处理服务对象对所述待处理数据进行业务逻辑处理,获得所述业务处理结果。
本申请提供的所述批量数据回滚方法,包括:对回滚处理调用的回滚服务对象进行初始化;获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果;从所述数据备份和所述业务处理结果中筛选待回滚数据;调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。
所述批量数据回滚方法,在针对业务逻辑处理过程进行回滚处理的过程中,首先对回滚处理调用的回滚服务对象进行初始化,获取需进行回滚处理的业务逻辑处理之前备份的数据备份和之后获得的业务处理结果,并从二者当中筛选出待回滚数据,最终通过调用完成初始化后的回滚服务对象实现对所述待回滚数据对应的业务逻辑处理过程的回滚处理,从而能够在不同业务处理场景下实现对业务逻辑处理过程的回滚处理,适应性更强。
附图说明
附图1是本申请提供的一种批量数据回滚方法实施例的示意图;
附图2是本申请提供的一种批量数据处理装置的示意图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其他方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。
本申请提供一种批量数据回滚方法,以及一种批量数据回滚装置。以下分别结合本申请提供的实施例的附图逐一进行详细说明,并且对方法的各个步骤进行说明。
本申请提供的一种批量数据回滚方法实施例如下:
参照附图1,其示出了本申请提供的一种批量数据回滚方法实施例的处理流程图。
步骤S101,对回滚处理调用的回滚服务对象进行初始化。
本实施例以餐饮领域离线清洗餐饮门店的推荐地址,并对线上门店地址进行订正(更新)的场景为例,对本申请提供的所述批量数据回滚方法进行说明。在该场景下,利用离线清洗获得的门店地址订正线上环境中的门店地址,并订正过程中出现异常或者错误的门店地址进行回滚处理,不仅能够打通离线与在线环境,同时,在线上向呈现更加准确的门店地址,方便顾客根据门店地址通过导航等方式前往餐饮门店进行消费。
本申请实施例所述回滚处理是针对已经执行的业务逻辑处理过程进行的,所述业务逻辑处理是针对待处理数据进行的业务处理过程,所述待处理数据是指餐饮门店即将更新到线上的门店地址,针对所述门店地址的业务处理逻辑,是指利用离线清洗获得的门店地址订正线上环境中的门店地址这一处理过程。具体的,对于已经执行的业务逻辑处理过程而言,根据该业务逻辑处理获得的业务处理结果进行回滚处理即可;比如在任意一次对批量待处理数据的业务逻辑处理之后,对该次业务逻辑处理过程中处理异常或者出错的门店地址记性回滚处理,将其门店地址回滚至业务逻辑处理执行前对应的门店地址,或者回滚至历史时间段某一状态对应的门店地址。
除此之外,本申请实施例所述回滚处理还可以是针对当前正在执行的业务逻辑处理过程进行的,与上述已经执行的业务逻辑处理过程的区别在于:而对于正在执行的业务逻辑处理过程,需要等该业务逻辑处理过程执行完毕后,才能根据该业务逻辑处理过程的业务处理结果进行回滚。比如在任意一次对批量待处理数据的业务逻辑处理过程中触发回滚处理,需要对处理异常或者出错的门店地址进行回滚,则需待当前正在执行的业务逻辑处理过程执行完毕后再进行回滚处理,根据业务逻辑处理的处理结果进行回滚,同样可以将其门店地址回滚至业务逻辑处理执行前对应的门店地址,或者回滚至历史时间段某一状态对应的门店地址。
本申请实施例提供的一种优选实施方式中,所述待处理数据的业务逻辑处理过程,采用如下方式实现:
1)将待处理数据的按照预设数据处理标准进行标准化处理;
2)对所述待处理数据进行业务逻辑处理调用的业务处理服务对象和进行业务逻辑处理所需的业务处理缓存进行初始化;
3)对所述标准化处理后的待处理数据进行备份,生成所述备份数据;
4)根据所述业务处理缓存,调用所述业务处理服务对象对所述待处理数据进行业务逻辑处理,获得所述业务处理结果。
通过上述将所述待处理数据的按照预设数据处理标准进行标准化处理子步骤,能够将待处理的数据模型进行统一化,将所有要处理的数据模型统一,从而能够兼容不同业务处理场景,尤其在面对大批量数据处理场景日益增多的情况,通过上述针对所述待处理数据进行标准化过程能够将不同数据处理场景下的待处理数据标准化为统一的数据模型,通用性增强,并且应用范围更广。在具体实施时,将所述待处理数据的按照预设数据处理标准进行标准化处理后,可采用弱类型Map接口存储标准化处理后的所述标准化处理后,并且所述待处理数据之间采用标签值方式进行区分。后续在对标准化处理后的所述标准化处理进行业务逻辑处理时,按照上述存储读取标准化处理后的所述待处理数据并进行处理。
所述业务处理服务对象,是指执行并实现所述业务逻辑处理过程的业务处理接口,即实现将离线清洗获得的门店地址订正到线上门店地址的地址订正接口,比如远程的地址订正接口。对所述业务处理服务对象进行初始化,是指对该地址订正接口进行初始化,初始化完成后,在订正过程中,所有门店地址的订正均需调用远程地址订正接口实现。
实际应用中的业务场景往往是复杂多样的,以餐饮门店为例,有许多餐饮门店是单独经营的,还有许多餐饮门店是连锁经营的,不同类型的餐饮门店进行线上门店地址的订正的处理方式可能也有所不同,对于单独经营的餐饮门店而言,以餐饮门店的管理者(店主)提交的门店地址为准对其在线上的门店地址进行订正即可,同时也可以参考顾客提交的参考地址对其在线上的门店地址进行校正。但对于连锁经营的餐饮门店而言,尤其是在门店数目较大的情况下,比如KFC、麦当劳等连锁餐饮门店,所有门店都是通过统一的数据接口进行数据交互,并且轻易不允许对其在线上的门店地址或者门店信息进行更改,需要客服人员与其进行沟通确认后方可进行订正。因此在实际处理过程中,可根据门店类型来区分餐饮门店,不同类型的餐饮门店可能有不同的处理策略,所述业务逻辑处理所需的业务处理缓存作用即在此,比如所述业务处理缓存可以是餐饮门店的白名单,白名单中记录的连锁门店均不参与采用批量方式针对门店地址进行订正的过程。相应的,初始化所述业务处理缓存,即是指加载所述白名单。
此外,在具体实施时,为了使业务逻辑处理的更加精细和更加准确,可根据业务场景中的数据属性等影响因素,对待处理数据进行筛选,从而在筛选的基础上实现分类精细化处理,比如当前离线环境中的待处理数据总共有100万份,包含全国范围内100万个餐饮门店的地址信息,如果一次处理100万份数据,很可能会出错,因此,可以在处理时以地理区域范围为基准对100万份数据进行划分,按照地区进行处理,先处理上海地区所有餐饮门店的地址信息,然后处理其他根据地理区域范围的数据。优选的,在上述对所述待处理数据进行标准化处理之后,从标准化处理后的所述待处理数据中筛选出满足预设筛选条件的待处理数据,相应的,上述对所述标准化处理后的待处理数据进行备份,是指对筛选获得的所述待处理数据进行备份,生成所述备份数据。
本申请实施例提供的另一种优选实施方式中,在上述根据所述业务处理缓存,调用所述业务处理服务对象对所述待处理数据进行业务逻辑处理,获得所述业务处理结果子步骤执行后,还可以根据预设封装条件对所述业务处理结果进行个性化封装,结合所述业务逻辑处理过程对所述业务处理结果进行分析,获得业务处理结果分析报表,和/或,采用持久化存储的方式备份所述业务处理结果。比如将餐饮门店的订正结果汇总在报表中,并在其中呈现白名单中记录的门店地址的订正结果,对于地址订正失败的餐饮门店,可分析展示订正失败的原因;此外,还可以通过自定义标签的方式封装业务处理结果,按照预先设置的标签类型对业务处理结果进行封装。再比如每次业务逻辑处理后都将业务处理结果进行持久化存储,则可以根据以往存储的某次业务逻辑处理之前和之后的业务处理结果,将当前线上门店的推荐地址从当前状态回滚至以往某一次业务逻辑处理之前或者之后的状态。
与上述提供的所述业务处理服务对象类似,本申请实施例所述回滚服务对象,是指针对所述业务逻辑处理过程实现回滚过程的回滚接口,对所述回滚接口进行初始化之后,在具体回滚过程中,所有针对所述业务逻辑处理过程的回滚过程均需调用所述回滚接口来实现。此外,与上述业务处理缓存类似,此处,所述回滚数据缓存可以是与回滚操作相关的门店清单,该门店清单中记录有不进行回滚过程的门店白名单。
进行回滚处理的目的在于:对所述待处理数据的业务逻辑处理过程进行回滚,能够从业务处理逻辑执行后回滚至业务逻辑处理执行前的状态,从而在业务执行逻辑出错或者其他需要进行待处理数据恢复的场景下进行回滚,比如门店提交的推荐地址不准确或者明显偏离实际所处地理位置,在这种情况下,如果用户按照该推荐地址前往门店显然会给用户带来不便,甚至根据该推荐地址无法找到门店,对于这种情形,需要对当前提交的门店的推荐地址进行更正,将门店的地址更正为进行业务处理逻辑之前的地址。
步骤S102,获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果。
如上所述,本申请实施例所述回滚处理是针对已经执行的业务逻辑处理过程进行的,对于已经执行的业务逻辑处理过程而言,根据该业务逻辑处理获得的业务处理结果进行回滚处理即可。除此之外,本申请实施例所述回滚处理还可以是针对当前正在执行的业务逻辑处理过程进行的,与上述已经执行的业务逻辑处理过程的区别在于:而对于正在执行的业务逻辑处理过程,需要等该业务逻辑处理过程执行完毕后,才能根据该业务逻辑处理过程的业务处理结果进行回滚。可见,本申请所述批量数据回滚方法是依据所述业务逻辑处理执行前备份的备份数据和所述业务逻辑处理过程执行后获得的所述业务处理结果二者实现的,此处,本步骤中,获取所述业务逻辑处理执行前备份的备份数据,以及所述业务逻辑处理过程执行后获得的所述业务处理结果,为下述步骤进行回滚处理做准备。
本申请实施例提供的一种优选实施方式中,在本步骤获取待处理数据在业务逻辑处理前的数据备份和进行业务逻辑处理后获得的业务处理结果之前,还可执行回滚判断操作,来判断是否存在回滚任务要执行,即判断之前进行的所述业务逻辑处理过程是否出现异常或者出错,如果存在,则执行本步骤获取待处理数据在业务逻辑处理前的数据备份和进行业务逻辑处理后获得的业务处理结果;如果之前进行的所述业务逻辑处理过程不存在出现异常或者出错的待处理数据,则不作处理即可。
步骤S103,从所述数据备份和所述业务处理结果中筛选待回滚数据。
在具体实施时,本步骤从所述数据备份和所述业务处理结果中筛选待回滚数据,一方面可以是根据实际业务场景,对于上述业务逻辑处理过程出现异常或者出错的餐饮门店的门店地址,筛选出其中需要进行回滚的餐饮门店;比如对于KFC、麦当劳等门店数据较大的连锁餐饮门店,所有门店都是通过统一的数据接口进行数据交互,并且轻易不允许对其在线上的门店地址或者门店信息进行更改,需要客服人员与其进行沟通确认后方可进行订正,因此虽然这类连锁餐饮门店在业务逻辑处理过程中出现异常,但对此类连锁餐饮门店不进行回滚处理。
另一方面,在不同的业务场景类型下,进行业务逻辑处理过程出现的异常或者出错的类型也可能会有所不同,因此,在进行回滚处理时,还可以根据业务逻辑处理过程的异常类型或者错误类型,对不同类型的异常或者错误,采用不同的回滚处理方式进行回滚。基于此,在进行回滚处理的过程中,同样需要从所述数据备份和所述业务处理结果中筛选出各回滚类型对应的待回滚数据。比如业务场景中包含餐饮门店、汽车维修保养门店、理发门店等各类型的门店,在进行回滚处理时按照门店类型分别进行回滚回滚处理,对需要进行回滚处理的餐饮门店的门店地址进行批量回滚处理,类似的,对需要进行要进行回滚处理的汽车维修保养门店的门店地址进行批量回滚处理;或者,对需要进行要进行回滚处理的理发门店的门店地址进行批量回滚处理。
步骤S104,调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。
上述步骤S101对所述回滚服务对象进行初始化,上述步骤S103从所述数据备份和所述业务处理结果中筛选出需要进行回滚的所述待回滚数据,本步骤中,调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。在具体实施时,如果回滚处理过程中也存在餐饮门店的白名单等回滚数据缓存,则在回滚处理的过程中需结合所述回滚数据缓存,并进一步调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理处理,获得所述回滚结果。
本申请实施例提供的一种优选实施方式中,在本步骤执行之前,还可执行待回滚数据备份操作,对所述待回滚数据进行备份,生成回滚数据备份。此处备份的目的是:在具体实施时,如果回滚过程出现错误,还可以对回滚过程进行回滚,即实现二次回滚,二次回滚时必然需要回滚之前和之后的相应数据,因此需要在回滚之前的待回滚数据备份为所述回滚数据备份。比如在实际业务场景中,某餐饮门店的线上门店地址被订正后,维持一段时间后检测到订正后的该门店地址触发回滚操作,该餐饮门店的线上门店地址被回滚至订正前的状态,但在回滚之后,由于接收到顾客投诉,表明回滚之后线上门店地址对顾客的体验并没有回滚之前好,在这种情况下,可通过二次回滚,将该餐饮门店的线上门店地址再次回滚至第一次回滚之前的状态。优选的,所述二次回滚过程采用如下方式实现:根据所述回滚结果和所述回滚数据备份,调用所述回滚服务对象对所述回滚任务进行二次回滚,获得二次回滚结果。
此外,本申请实施例提供的另一种优选实施方式中,在本步骤执行之后,还可执行如下操作:根据预设封装条件对所述回滚结果进行个性化封装,结合所述回滚操作执行过程对所述回滚结果进行分析,获得回滚结果分析报表,和/或,采用持久化的方式存储所述回滚结果。比如将餐饮门店的回滚结果汇总在报表中,并在其中呈现白名单中记录的门店地址的回滚结果,对于回滚失败的餐饮门店,可分析回滚失败的原因;此外,还可以通过自定义标签的方式封装回滚结果,按照预先设置的标签类型对回滚结果进行封装。再比如每次回滚处理后都将回滚结果进行持久化存储,则可以根据以往存储的回滚处理之前备份的待回滚数据和回滚处理之后的回滚结果,将当前线上门店的推荐地址从当前状态回滚至以往某一次回滚处理之前或者之后的状态。
需要说明的是,所述批量数据回滚方法可以在线上环境中运行,也可以在离线环境中运行,此外,还可以是所述批量数据回滚方法的所述批量数据回滚方法的至少一个步骤在离线环境中执行,且所述批量数据回滚方法的至少一个步骤在线上环境中执行,比如所述批量数据回滚方法的部分步骤在离线环境中运行,剩余部分步骤在线上环境中运行,本实施例对此不做限定。此外,在具体实施时,还可以在对所述待处理数据进行业务逻辑处理之后,对所述业务逻辑处理获得的业务处理结果进行分析,通过分析得出需要进行回滚的业务逻辑处理过程,并触发针对这些需要进行回滚的业务逻辑处理过程的回滚处理,自动执行上述步骤S101至S104提供的回滚处理过程,从而实现自动化的回滚过程,或者“一键回滚”的效果,提升数据恢复的准确性和时效性,降低数据恢复成本。
综上所述,所述批量数据处理方法,在针对业务逻辑处理过程进行回滚处理的过程中,首先对回滚处理调用的回滚服务对象进行初始化,获取需进行回滚处理的业务逻辑处理之前备份的数据备份和之后获得的业务处理结果,并从二者当中筛选出待回滚数据,最终通过调用完成初始化后的回滚服务对象实现对所述待回滚数据对应的业务逻辑处理过程的回滚处理,从而能够在不同业务处理场景下实现对业务逻辑处理过程的回滚处理,适应性更强
本申请提供的一种批量数据处理装置实施例如下:
在上述的实施例中,提供了一种批量数据处理方法,与之相对应的,本申请还提供了一种批量数据处理装置,下面结合附图进行说明。
参照附图2,其示出了本申请提供的一种批量数据处理装置实施例的示意图。
由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。
本申请提供一种批量数据处理装置,包括:
初始化单元201,用于对回滚处理调用的回滚服务对象进行初始化;
数据获取单元202,用于获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果;
待回滚数据筛选单元203,用于从所述数据备份和所述业务处理结果中筛选待回滚数据;
回滚处理单元204,用于调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。
可选的,所述批量数据回滚装置,包括:
待回滚数据备份单元,用于对所述待回滚数据进行备份,生成回滚数据备份。
可选的,若所述回滚处理单元运行后触发针对所述回滚任务的二次回滚,运行二次回滚单元;
所述二次回滚单元,用于根据所述回滚结果和所述回滚数据备份,调用所述回滚服务对象对所述回滚任务进行二次回滚,获得二次回滚结果。
可选的,所述批量数据回滚装置,包括:
回滚判断单元,用于判断是否存在回滚任务要执行,若是,运行所述数据获取单元202。
可选的,所述批量数据回滚装置,包括:
个性化封装单元,用于根据预设封装条件对所述回滚结果进行个性化封装;
回滚结果分析单元,用于结合所述回滚操作执行过程对所述回滚结果进行分析,获得回滚结果分析报表;
和/或,回滚结果存储单元,用于采用持久化的方式存储所述回滚结果。
可选的,所述批量数据回滚装置,包括:
标准化处理单元,用于将待处理数据的按照预设数据处理标准进行标准化处理;
第二初始化单元,用于对所述待处理数据进行业务逻辑处理调用的业务处理服务对象和进行业务逻辑处理所需的业务处理缓存进行初始化;
待处理数据备份单元,用于对所述标准化处理后的待处理数据进行备份,生成所述备份数据;
业务逻辑处理单元,用于根据所述业务处理缓存,调用所述业务处理服务对象对所述待处理数据进行业务逻辑处理,获得所述业务处理结果。
可选的,所述批量数据回滚装置,包括:
待处理数据筛选单元,用于从标准化处理后的所述待处理数据中筛选出满足预设筛选条件的待处理数据;
相应的,所述待处理数据筛选单元输出的筛选获得的所述待处理数据,被输入所述待处理数据备份单元。
可选的,所述批量数据回滚装置,包括:
第二个性化封装单元,用于根据预设封装条件对所述业务处理结果进行个性化封装;
业务处理结果分析单元,用于结合所述业务逻辑处理过程对所述业务处理结果进行分析,获得业务处理结果分析报表;
和/或,业务处理结果存储单元,用于采用持久化存储的方式备份所述业务处理结果。
可选的,所述批量数据回滚装置在离线环境或者线上环境中运行;
或者,所述批量数据回滚装置的至少一个单元在离线环境中运行,且所述批量数据回滚装置的至少一个单元在线上环境中运行。
本申请虽然以较佳实施例公开如上,但其并不是用来限定本申请,任何本领域技术人员在不脱离本申请的精神和范围内,都可以做出可能的变动和修改,因此本申请的保护范围应当以本申请权利要求所界定的范围为准。
在一个典型的配置中,计算设备包括一个或多个处理器、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
Claims (10)
1.一种批量数据回滚方法,其特征在于,包括:
对回滚处理调用的回滚服务对象进行初始化;
获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果;
从所述数据备份和所述业务处理结果中筛选待回滚数据;
调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。
2.根据权利要求1所述的批量数据回滚方法,其特征在于,所述调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果步骤执行前,执行如下步骤:
对所述待回滚数据进行备份,生成回滚数据备份。
3.根据权利要求2所述的批量数据回滚方法,其特征在于,所述调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果步骤执行后,若触发针对所述回滚任务的二次回滚,执行如下操作:
根据所述回滚结果和所述回滚数据备份,调用所述回滚服务对象对所述回滚任务进行二次回滚,获得二次回滚结果。
4.根据权利要求1、2或3所述的批量数据回滚方法,其特征在于,所述对回滚处理调用的回滚服务对象进行初始化步骤执行后,且所述获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果步骤执行前,执行如下步骤:
判断是否存在回滚任务要执行,若是,执行所述获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果步骤。
5.根据权利要求1至4任意一项所述的批量数据回滚方法,其特征在于,所述调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果步骤执行后,执行下述至少一项操作:
根据预设封装条件对所述回滚结果进行个性化封装;
结合所述回滚操作执行过程对所述回滚结果进行分析,获得回滚结果分析报表;
采用持久化的方式存储所述回滚结果。
6.根据权利要求1至5任意一项所述的批量数据回滚方法,其特征在于,所述业务逻辑处理过程采用如下方式实现:
将待处理数据的按照预设数据处理标准进行标准化处理;
对所述待处理数据进行业务逻辑处理调用的业务处理服务对象和进行业务逻辑处理所需的业务处理缓存进行初始化;
对所述标准化处理后的待处理数据进行备份,生成所述备份数据;
根据所述业务处理缓存,调用所述业务处理服务对象对所述待处理数据进行业务逻辑处理,获得所述业务处理结果。
7.根据权利要求6所述的批量数据回滚方法,其特征在于,所述对所述待处理数据进行业务逻辑处理调用的业务处理服务对象和进行业务逻辑处理所需的业务处理缓存进行初始化子步骤执行后,且所述对所述标准化处理后的待处理数据进行备份,生成所述备份数据子步骤执行前,执行如下操作:
从标准化处理后的所述待处理数据中筛选出满足预设筛选条件的待处理数据;
相应的,所述对所述标准化处理后的待处理数据进行备份,生成所述备份数据子步骤备份的所述待处理数据,是指筛选获得的所述待处理数据。
8.根据权利要求7所述的批量数据回滚方法,其特征在于,所述根据所述业务处理缓存,调用所述业务处理服务对象对所述待处理数据进行业务逻辑处理,获得所述业务处理结果子步骤执行后,执行下述至少一项操作:
根据预设封装条件对所述业务处理结果进行个性化封装;
结合所述业务逻辑处理过程对所述业务处理结果进行分析,获得业务处理结果分析报表;
采用持久化存储的方式备份所述业务处理结果。
9.根据权利要求1至8任意一项所述的批量数据回滚方法,其特征在于,所述批量数据回滚方法在离线环境或者线上环境中执行;
或者,所述批量数据回滚方法的至少一个步骤在离线环境中执行,且所述批量数据回滚方法的至少一个步骤在线上环境中执行。
10.一种批量数据回滚装置,其特征在于,包括:
初始化单元,用于对回滚处理调用的回滚服务对象进行初始化;
数据获取单元,用于获取业务逻辑处理前备份的数据备份和业务逻辑处理后获得的业务处理结果;
待回滚数据筛选单元,用于从所述数据备份和所述业务处理结果中筛选待回滚数据;
回滚处理单元,用于调用所述回滚服务对象对所述待回滚数据对应的业务逻辑处理过程进行回滚处理,获得回滚结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711210709.4A CN108196977B (zh) | 2017-11-28 | 2017-11-28 | 批量数据回滚方法以及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711210709.4A CN108196977B (zh) | 2017-11-28 | 2017-11-28 | 批量数据回滚方法以及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108196977A true CN108196977A (zh) | 2018-06-22 |
CN108196977B CN108196977B (zh) | 2021-11-26 |
Family
ID=62573284
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711210709.4A Active CN108196977B (zh) | 2017-11-28 | 2017-11-28 | 批量数据回滚方法以及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108196977B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109919563A (zh) * | 2018-11-21 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 一种业务流水批量处理方法、装置、及计算机设备 |
CN110716825A (zh) * | 2018-07-12 | 2020-01-21 | 阿里巴巴集团控股有限公司 | 数据容灾处理方法、装置及系统 |
CN112905635A (zh) * | 2021-03-11 | 2021-06-04 | 深圳市分期乐网络科技有限公司 | 一种业务的处理方法、装置、设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3484440B2 (ja) * | 1993-06-30 | 2004-01-06 | 日本電信電話株式会社 | 分散型データベース更新方法 |
CN101788908A (zh) * | 2010-01-26 | 2010-07-28 | 浪潮(山东)电子信息有限公司 | 一种支持断点续航的批量数据处理方法 |
US20120284721A1 (en) * | 2011-05-06 | 2012-11-08 | International Business Machines Corporation | Systems and method for dynamically throttling transactional workloads |
CN103197991A (zh) * | 2012-01-09 | 2013-07-10 | Lg电子株式会社 | 移动终端及其控制方法 |
CN105487924A (zh) * | 2015-11-30 | 2016-04-13 | 中国建设银行股份有限公司 | 一种批处理控制方法及装置 |
CN106528345A (zh) * | 2016-11-11 | 2017-03-22 | 郑州云海信息技术有限公司 | 一种基于云平台的节点硬盘自动化恢复方法 |
CN106547584A (zh) * | 2015-09-23 | 2017-03-29 | 中国移动通信集团浙江有限公司 | 一种应用程序的回退方法及装置 |
-
2017
- 2017-11-28 CN CN201711210709.4A patent/CN108196977B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3484440B2 (ja) * | 1993-06-30 | 2004-01-06 | 日本電信電話株式会社 | 分散型データベース更新方法 |
CN101788908A (zh) * | 2010-01-26 | 2010-07-28 | 浪潮(山东)电子信息有限公司 | 一种支持断点续航的批量数据处理方法 |
US20120284721A1 (en) * | 2011-05-06 | 2012-11-08 | International Business Machines Corporation | Systems and method for dynamically throttling transactional workloads |
CN103197991A (zh) * | 2012-01-09 | 2013-07-10 | Lg电子株式会社 | 移动终端及其控制方法 |
CN106547584A (zh) * | 2015-09-23 | 2017-03-29 | 中国移动通信集团浙江有限公司 | 一种应用程序的回退方法及装置 |
CN105487924A (zh) * | 2015-11-30 | 2016-04-13 | 中国建设银行股份有限公司 | 一种批处理控制方法及装置 |
CN106528345A (zh) * | 2016-11-11 | 2017-03-22 | 郑州云海信息技术有限公司 | 一种基于云平台的节点硬盘自动化恢复方法 |
Non-Patent Citations (3)
Title |
---|
JUNWHAN KIM: ""Partial rollback-based scheduling on in-memory transactional data grids"", 《2014 IEEE INTERNATIONAL CONFERENCE ON BIG DATA (BIG DATA)》 * |
丁浪: ""分布式系统事务一致性解决方案"", 《HTTPS://WWW.INFOQ.CN/ARTICLE/SOLUTION-OF-DISTRIBUTED-SYSTEM-TRANSACTION-CONSISTENCY》 * |
马井玮 等: ""基于重复数据删除的连续数据保护系统的快速回滚"", 《计算机研究与发展》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110716825A (zh) * | 2018-07-12 | 2020-01-21 | 阿里巴巴集团控股有限公司 | 数据容灾处理方法、装置及系统 |
CN110716825B (zh) * | 2018-07-12 | 2023-04-28 | 阿里巴巴集团控股有限公司 | 数据容灾处理方法、装置及系统 |
CN109919563A (zh) * | 2018-11-21 | 2019-06-21 | 阿里巴巴集团控股有限公司 | 一种业务流水批量处理方法、装置、及计算机设备 |
CN109919563B (zh) * | 2018-11-21 | 2023-07-11 | 创新先进技术有限公司 | 一种业务流水批量处理方法、装置、及计算机设备 |
CN112905635A (zh) * | 2021-03-11 | 2021-06-04 | 深圳市分期乐网络科技有限公司 | 一种业务的处理方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN108196977B (zh) | 2021-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11642788B2 (en) | System and method for detecting and fixing robotic process automation failures | |
CN108196977A (zh) | 批量数据回滚方法以及装置 | |
CN106254144A (zh) | 故障定位平台、故障定位方法及装置 | |
CN109471796A (zh) | 接口测试方法、装置、计算机设备及存储介质 | |
US10248547B2 (en) | Coverage of call graphs based on paths and sequences | |
US10009227B2 (en) | Network service provisioning tool and method | |
CN105915657B (zh) | 数据的同步方法、装置及客户端 | |
CN109102245B (zh) | 一种审批流程的处理方法、系统及装置 | |
CN106126427A (zh) | 一种快速恢复测试的方法及系统 | |
CN110046100B (zh) | 一种分组测试的方法、电子设备及介质 | |
CN108062356A (zh) | 批量数据处理系统和方法 | |
CN107249050A (zh) | 云平台中资源的管理方法和装置 | |
CN111597093B (zh) | 一种异常处理方法、装置及其设备 | |
US20060031194A1 (en) | Decision support implementation for workflow applications | |
CN106375551A (zh) | 一种信息交互方法、装置及终端 | |
CN115905151A (zh) | 基于备份日志的流转信息查询方法、系统和装置 | |
US7703106B2 (en) | Discovering and monitoring process executions | |
US20110161960A1 (en) | Progress-driven progress information in a service-oriented architecture | |
CN107196841B (zh) | 产品信息管理方法、服务器、客户端及系统 | |
US9536222B2 (en) | Progress information in a service-oriented architecture | |
US10318282B2 (en) | Method and system for monitoring quality control activities during development of a software application | |
CN112434819B (zh) | 业务保障方法及装置 | |
CN115277652B (zh) | 基于推理服务的流媒体处理方法、装置、电子设备 | |
CN117194253B (zh) | 一种业务场景的测试数据生成方法及系统 | |
US20240012739A1 (en) | Systems and methods for a continuous integration / continuous deployment model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |