System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于离线数据仓库的多来源业务数据的修复方法技术_技高网

一种基于离线数据仓库的多来源业务数据的修复方法技术

技术编号:40199126 阅读:6 留言:0更新日期:2024-01-27 00:03
本发明专利技术属于数据仓库技术领域,尤其是涉及一种基于离线数据仓库的针对多来源异常业务数据的修复方法,数据服务方根据处理完成的最新离线业务数据在业务异常数据处理库中按需提交或修改业务异常数据处理,业务异常数据处理库按时生成修复任务,对比多来源变更业务数据以及修复任务,依据数据修复优选规则采用最优修复方案或不修复,最终生成各字段修复的详细记录信息以及字段合并后的修复数据库表,可以从所述详细记录信息进一步提取错误数据以及预警数据用于下一轮的数据修复工作。能够自适应源系统的数据变化以同步的方式有效协助或替代各个源系统完成业务异常数据的修复,极大地提高数据仓库的数据质量,同时减轻源系统数据异常带来的负担。

【技术实现步骤摘要】

本专利技术属于数据仓库,尤其是涉及一种基于离线数据仓库的针对多来源异常业务数据的修复方法。


技术介绍

1、在数据仓库处理离线数据的过程中,避免不了源数据异常的情况,业务数据的异常往往造成商业用户反感,处理好这一问题至关重要。数据仓库基于大数据集群,当源业务系统数据出现异常时,现有技术的实现方式是在源系统进行数据修复,或者维护一份修复数据进行覆盖,但是源业务系统无法及时完成甚至无法完成数据修复时,如果以覆盖的方式实现该功能,当被覆盖的源数据发生变化时,必然会产生数据异常,无法被及时处理。该方法致力于解决这一问题,提升数据仓库的数据质量。


技术实现思路

1、针对现有技术的不足,本专利技术的目的在于提供一种基于离线数据仓库的针对多来源异常业务数据的修复方案,该方案旨在协助或替代源系统解决源数据异常的问题。

2、为了解决上述技术问题,本专利技术提供了这样一种基于离线数据仓库的多来源业务数据的修复方法,包括以下步骤:

3、(1)获取接入数据仓库的多个数据源系统的业务变更数据;

4、(2)数据服务方根据处理完成的最新离线业务数据,在业务异常数据处理库中按需提交或修改业务异常数据,提交时校验业务异常数据处理库,确保一条数据中的被修复字段仅对应一条修复记录;

5、(3)业务异常数据处理库按时生成修复任务,修复任务以离线的方式定时执行;

6、(4)执行修复任务,对比多来源变更业务数据以及修复任务,依据数据修复优选规则采用最优修复方案(或者选择不修复),最终生成各字段修复的详细记录信息表以及字段合并后的修复数据库表,并从所述详细记录信息表中提取异常数据用于下一轮的数据修复工作。具体包含以下步骤:

7、(4-1)对比各数据源系统业务变更数据以及修复任务,依据数据修复优选规则采用最优修复方案(或者选择不修复),将最优修复方案更新进业务异常数据处理表;

8、(4-2)处理含变更主键的数据

9、(4-2-1)依据各个数据源系统的业务变更数据,提取业务异常数据处理表中变更主键的数据,生成主键临时表,该主键临时表包括被修复的主键字段以及需要被修复还未被修复的非主键字段;

10、(4-2-2)各数据源系统的相同主键字段结合业务异常数据处理表得到各系统字段值、变更值数据,写入详细记录信息表,视为主键值已经在本方法中修复完成;

11、(4-3)处理不含变更主键的数据

12、(4-3-1)依据各个数据源系统的业务变更数据,提取业务异常数据处理表中不含变更主键的其它需变更数据,生成非主键临时表;

13、(4-3-2)依据非主键临时表,对比各个数据源系统相同主键的包含此非主键临时表字段的数据,以及业务异常数据处理表,通过调用api获取数据合并优先级得到主键值、各系统字段值、各系统字段优先级、变更值的数据,写入详细记录信息表,视为非主键值已经在本方法中修复完成;

14、(4-4)从详细记录信息表中,拼接主键字段与所有被处理的非主键字段,得到修复数据库表;

15、(4-5)从详细记录信息表中,提取异常数据写入业务异常数据处理表用于下一轮的数据修复工作。

16、(5)依据修复数据库表中信息,修改被修复字段对应的业务异常数据处理记录,禁用业务异常数据处理库中修复完成的异常数据处理记录。

17、进一步地,步骤(2)中的业务异常数据处理库包含创建时间、结束时间以及是否启用标志,用于记录数据服务方提交的历史信息。

18、进一步地,步骤(2)中的修复记录可以设计为拉链表,用以记录历史变化。

19、进一步地,步骤(2)中,在主键字段修复表中的字段值中设置id、原主键值、修复主键值、确认方、处理类型、备注、创建时间、结束时间、是否启用;其中处理类型包括删除、修改、新增类型。在非主键字段修复表中的字段值中设置id、主键值、原字段值、修复字段值、确认方、处理类型、备注、创建时间、结束时间、是否启用。其中处理类型包括修改、新增类型。

20、进一步地,步骤(2)中,在主键字段的修复过程中,由用户填写原主键值、修复主键值、确认方、处理类型(删除、修改、新增)和备注,系统会处理id、创建时间、结束时间以及是否启用字段;非主键字段的修复过程中,用户填写主键值、原字段值、修复字段值、确认方、处理类型(修改、新增)和备注,系统会处理id、创建时间、结束时间以及是否启用字段。

21、进一步地,步骤(4)中的数据修复优选规则来源于用户在数据库中维护的一份字段变更优先级表,该表包括系统名、模块名、优先级三个字段,存放指定系统、指定模块对应的优先级。当不同来源的业务变更数据中的相同数据存在多条变更记录时,将依次按照表中模块名、系统名的优先级顺序选取。其中依次选取指按照就近原则选取,当变更数据中不存在模块名时(即表示没有模块名优先级),选取对应系统名的优先级。

22、进一步地,步骤(4)中的优先级可以由用户指定,也可以按照各系统、各模块的数据质量进行合理设置。

23、进一步地,步骤(4)中,对于主键字段处理,按照优先级顺序对主键字段变更数据合并,确保一条数据仅产生一次变更,即修改和删除的初始值的结果具有唯一性,将合并的变更数据与业务异常数据处理表进行对比,如果变更数据处理类型是删除或者修改,且业务异常数据处理表的初始值等于变更数据的初始值时,对业务异常数据处理表的该条记录进行更新,如果变更数据处理类型是新增数据,不进行处理;对于非主键字段处理,按照优先级顺序对主键字段变更数据合并,确保一条数据仅产生一次变更,即主键值具有唯一性。

24、进一步地,步骤(4)中的各字段修复的详细记录信息表包括各系统字段值、字段合并优先级、变更值;其中字段合并优先级数据来源于用户在mysql维护的一份数据合并优先级表,该表包括系统名、模块名、表名、字段名、优先级五个字段,使用方式与所述字段变更优先级表所述使用方式一致。

25、与现有技术相比,本专利技术的有益效果在于:

26、本专利技术提供的一种基于离线数据仓库的多来源业务数据的修复方法,含有数据源系统、实现本方案的系统以及数据服务方与共同参与维护的业务异常数据处理库,获取接入数据仓库的多个数据源系统的变更业务数据;数据服务方根据处理完成的最新离线业务数据在业务异常数据处理库中按需提交或修改业务异常数据处理,提交时校验业务异常数据处理库,确保一条数据中的被修复字段仅对应一条修复记录;业务异常数据处理库按时生成修复任务,修复任务以离线的方式定时执行;对比多来源变更业务数据以及修复任务,依据数据修复优选规则采用最优修复方案或不修复,最终生成各字段修复的详细记录信息以及字段合并后的修复数据库表,可以从所述详细记录信息进一步提取错误数据以及预警数据用于下一轮的数据修复工作;禁用业务异常数据处理库中修复完成的异常数据处理记录。

27、本专利技术能够有效处理相同含义字段在多个源系统中同时存在带来的数据本文档来自技高网...

【技术保护点】

1.一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(4)具体包含以下步骤:

3.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(2)中的业务异常数据处理库包含创建时间、结束时间以及是否启用标志,用于记录数据服务方提交的历史信息。

4.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(2)中的修复记录可以设计为拉链表,用以记录历史变化。

5.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(2)中,在主键字段修复表中的字段值中设置id、原主键值、修复主键值、确认方、处理类型、备注、创建时间、结束时间、是否启用;其中处理类型包括删除、修改、新增类型;在非主键字段修复表中的字段值中设置id、主键值、原字段值、修复字段值、确认方、处理类型、备注、创建时间、结束时间、是否启用;其中处理类型包括修改、新增类型。

<p>6.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(2)中,在主键字段的修复过程中,由用户填写原主键值、修复主键值、确认方、处理类型和备注,系统会处理id、创建时间、结束时间以及是否启用字段;非主键字段的修复过程中,用户填写主键值、原字段值、修复字段值、确认方、处理类型和备注,系统会处理id、创建时间、结束时间以及是否启用字段。

7.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(4)中的数据修复优选规则来源于用户在数据库中维护的一份字段变更优先级表,该表包括系统名、模块名、优先级三个字段,存放指定系统、指定模块对应的优先级;当不同来源的业务变更数据中的相同数据存在多条变更记录时,将依次按照表中模块名、系统名的优先级顺序选取;其中依次选取指按照就近原则选取,当变更数据中不存在模块名时,选取对应系统名的优先级。

8.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(4)中的优先级可以由用户指定,也可以按照各系统、各模块的数据质量进行合理设置。

9.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(4)中,对于主键字段处理,按照优先级顺序对主键字段变更数据合并,确保一条数据仅产生一次变更,即修改和删除的初始值的结果具有唯一性,将合并的变更数据与业务异常数据处理表进行对比,如果变更数据处理类型是删除或者修改,且业务异常数据处理表的初始值等于变更数据的初始值时,对业务异常数据处理表的该条记录进行更新,如果变更数据处理类型是新增数据,不进行处理;对于非主键字段处理,按照优先级顺序对主键字段变更数据合并,确保一条数据仅产生一次变更,即主键值具有唯一性。

10.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(4)中的各字段修复的详细记录信息表包括各系统字段值、字段合并优先级、变更值;其中字段合并优先级数据来源于用户在MySQL维护的一份数据合并优先级表,该表包括系统名、模块名、表名、字段名、优先级五个字段,使用方式与所述字段变更优先级表所述使用方式一致。

...

【技术特征摘要】

1.一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(4)具体包含以下步骤:

3.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(2)中的业务异常数据处理库包含创建时间、结束时间以及是否启用标志,用于记录数据服务方提交的历史信息。

4.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(2)中的修复记录可以设计为拉链表,用以记录历史变化。

5.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(2)中,在主键字段修复表中的字段值中设置id、原主键值、修复主键值、确认方、处理类型、备注、创建时间、结束时间、是否启用;其中处理类型包括删除、修改、新增类型;在非主键字段修复表中的字段值中设置id、主键值、原字段值、修复字段值、确认方、处理类型、备注、创建时间、结束时间、是否启用;其中处理类型包括修改、新增类型。

6.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法,其特征在于,步骤(2)中,在主键字段的修复过程中,由用户填写原主键值、修复主键值、确认方、处理类型和备注,系统会处理id、创建时间、结束时间以及是否启用字段;非主键字段的修复过程中,用户填写主键值、原字段值、修复字段值、确认方、处理类型和备注,系统会处理id、创建时间、结束时间以及是否启用字段。

7.根据权利要求1所述的一种基于离线数据仓库的多来源业务数据的修复方法...

【专利技术属性】
技术研发人员:王磊徐林楠刘荣华苏翠平黄炜
申请(专利权)人:江西憶源多媒体科技有限公司
类型:发明
国别省市:

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

1