一种基于MPP数据库的跑批的自动配置处理方法技术

技术编号:38053461 阅读:6 留言:0更新日期:2023-06-30 11:19
本发明专利技术涉及数据库处理领域,提供了一种基于MPP数据库的跑批的自动配置处理方法。解决现有技术风控数据集市跑批场景中上游系统的数据问题照成的跑批任务报错停止以及跑批监控调整,造成报错处理工作量大不及时的问题。主要方案包括将跑批进行事务划分后打日志并写入function_log日志表中,设计规划报错定位及处理系统表,记录了错误代码及对应的错误说明和报错处理建议,对function_log日志表根据错误代码在规划报错定位及处理系统表进行异常查询,得到的异常信息进行异常提示或错误说明和报错处理建议:通过给出的异常查询及报错处理意见将查询到的异常数据写入异常数据表中。中。

【技术实现步骤摘要】
一种基于MPP数据库的跑批的自动配置处理方法


[0001]本专利技术涉及数据库处理领域,提供了一种基于MPP数据库的跑批的自动配置处理方法。

技术介绍

[0002]MPP是一种share nothing的完全无共享结构,这种架构中的每一个节点(segment)都是独立、自给的,各个节点的CPU、内存和存储资源完全独立,并且每一个节点都有独立的SQL引擎。该架构的优势是扩展性较好,能支持复杂的结构化查询。但无共享即意味着数据需要在集群中进行拆分,每一个节点都被分配一部分数据分片,各个节点互不干扰地进行SQL解析、执行,并返回结果给中央控制节点(master)进行汇总。所以,一个事务的处理,需要所有并行运算的节点都返回结果,才能完成事务的提交。在MPP架构中,分布式运算应该均匀地分摊到各个节点,这种均匀的任务分割靠的就是合理的数据分布(data distribution)。
[0003]在数据仓库及数据集市领域,MPP架构因为其良好的扩展性和对分布式事务的支持,使其成为了高性价比的并行结构化数据处理和存储引擎。在MPP架构的处理逻辑中,数据分析和处理请求被分摊到各个独立的节点,最终的计算任务由各个节点上的数据决定,所以数据分布的策略最终影响着集群的扩展性,以及分布式架构的性能。
[0004]目前MPP在大数据领域应用十分广泛尤其是批处理计算方面。但在MPP应用维护过程中,存在如下使用场景上的不便:
[0005]重要报表稳定运行一段时间后突然运行异常,如上游问题或者开发是一些细节问题未经验证,或者是开发时当前的业务场景未经考虑进去,抑或是上游数据问题或者上游数据结构做调整并未及时通知,且发生异常时处于非正常工作时间。
[0006]报表任务函数开发完成后,特别在稳定运行一段时间后,后续跑批时可能会突然报错,照成的原因很多,通过排查发现有几种时常见的,例如可能是跑批依赖配置问题缺失导致锁表,也可能因为上游产生脏数据导致跑批报错,可能上游上线导致源表权限改变或这表结构表定义发生改变并且未即使通知到下游导致跑批报错,误删除表导致跑批报错,但是每次报错可能需要花时间查询,报错后未及时发现或不方便处理,而影响后续跑批,致使整体跑批偏慢。

技术实现思路

[0007]本专利技术的目的在于解决现有技术风控数据集市跑批场景中上游系统的数据问题照成的跑批任务报错停止以及跑批监控调整,造成报错处理工作量大不及时的问题。
[0008]为了达到上述目的,本专利技术采用如下技术方案:
[0009]一种基于MPP数据库的跑批的自动配置处理方法,包括如下步骤:
[0010]步骤1、元数据管理,对表结构定义,表字段及函数定义进行管理,上下游表及字段映射关系管理,其中函数定义指的创建含数据的语句;
[0011]步骤2、将跑批进行事务划分后打日志并写入function_log日志表中,跑批包括多个事务,每个事务为包括INSERT、UPDATE、DELETE三种指令的数据库操作语句,打日志是指跑批时操作指令产生的提示信息,比如耗时,执行结果,异常信息输出,然后写入function_log日志表中;
[0012]步骤3、设计规划报错定位及处理系统表,记录了错误代码及对应的错误说明和报错处理建议:
[0013]步骤4、对function_log日志表根据错误代码在步骤3所述的规划报错定位及处理系统表进行异常查询,得到的异常信息进行异常提示或错误说明和报错处理建议:
[0014]步骤5、通过步骤4给出的异常查询及报错处理意见将查询到的异常数据写入异常数据表中。
[0015]上述技术方案中,步骤1包括以下步骤:
[0016]步骤1.1创建表定义元数据表,所述元数据表中包含表名字段,以及对应表名的建表语句字段,用于通过建表语句重建对应表名的数据表;
[0017]步骤1.2创建表字段结构元数据表,所述表字段结构元数据表包含表名字段,对应表名下的字段名,字段类型定义,以及对应表名的建表语句字段,用于字段数据问题查询并重建;
[0018]步骤1.3创建上下游表及字段映射表,上下游表及字段映射表包括源表,源字段,目标表,目标字段,逻辑字段,其中源表与目标表、源字段与目标字段通过逻辑字段内存储的加工处理逻辑规则形成映射关系,用于查询字段的关系以及异常的分析。
[0019]上述技术方案中,步骤2具体包括以下步骤:
[0020]步骤2.1将跑批事务划分,得到划分好的事务;
[0021]将一个跑批的执行语句,根据insert,update,delete操作划分为独立的insert语句、update语句、delete语句,得到划分好的事务,定义一个递增变量v_step表示函数事务的步骤序号,定义另外一个变量v_execution_content,记录insert语句、update语句、delete语句中具体的加工处理逻辑规则;
[0022]步骤2.2将划分好的事务打上步骤序号,将事务中的源表与目标表、源字段与目标字段的主要映射关系和加工处理逻辑与事务对应的跑批元数据写入function_log日志表,其中跑批元数据包括跑批函数,跑批开始时间,跑批结束时间,跑批步骤,跑批逻辑,跑批结果,跑批报错信息。
[0023]上述技术方案中,步骤3具体包括以下步骤:
[0024]步骤3.1将异常信息以模板式格式进行统计罗列,报错信息包括分母为0、字段超长;
[0025]步骤3.2将对应的异常信息的数据问题进行分析,将最异常信息成因作为提示信息写入;
[0026]步骤3.3获取问题成因最大可能,并通过异常信息将异常数据查询过程和处理过程写入异常查询处理信息中。
[0027]上述技术方案中,步骤4具体包括以下步骤:
[0028]步骤4.1 java应用读取当天function_log日志表中的数据;
[0029]步骤4.2若出现异常则定位异常,并根据异常的报错信息的错误代码在规划报错
定位及处理系统表进数据匹配,得到异常提示或错误说明和报错处理建议。
[0030]因为本专利技术采用上述技术方案,因此具备以下有益效果:
[0031]一、本专利技术针对MPP函数开发应用处理过程中元数据管理及异常处理的一种优化机制,通过统计学和概率学重点着手于维护中的重要跑批任务和作业,并通过统计异常的种类和出现几率以及异常产生大概率原因,解决了维护过程中的不便(如非常规时间跑批异常)和低效(如高概率出现的异常),有效减小了维护成本,属于MPP数据库批量数据处理

[0032]二、通过统计和观察发现了一些频率较高概率较大的报错。这就是该装置的专利技术就是监控这些报错信息,并自动查询出数据异常,并给出相应详细异常情况并给出建议,甚至自动化完成函数备份,数据备份,函数调整,方便监控和开发人员集市了解异常情况,参考装置给出的建议并及时对报错进行处理甚至自动处理报错,统计常见异常及常见数据问题。
具体实施方式
[003本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于MPP数据库的跑批的自动配置处理方法,其特征在于,包括如下步骤:步骤1、元数据管理,对表结构定义,表字段及函数定义进行管理,上下游表及字段映射关系管理,其中函数定义指的创建含数据的语句;步骤2、将跑批进行事务划分后打日志并写入function_log日志表中,跑批包括多个事务,每个事务为包括INSERT、UPDATE、DELETE三种指令的数据库操作语句,打日志是指跑批时操作指令产生的提示信息,比如耗时,执行结果,异常信息输出,然后写入function_log日志表中;步骤3、设计规划报错定位及处理系统表,记录了错误代码及对应的错误说明和报错处理建议:步骤4、对function_log日志表根据错误代码在步骤3所述的规划报错定位及处理系统表进行异常查询,得到的异常信息进行异常提示或错误说明和报错处理建议;步骤5、通过步骤4给出的异常查询及报错处理意见将查询到的异常数据写入异常数据表中。2.根据权利要求1所述的一种基于MPP数据库的跑批的自动配置处理方法,其特征在于,步骤1包括以下步骤:步骤1.1创建表定义元数据表,所述元数据表中包含表名字段,以及对应表名的建表语句字段,用于通过建表语句重建对应表名的数据表;步骤1.2创建表字段结构元数据表,所述表字段结构元数据表包含表名字段,对应表名下的字段名,字段类型定义,以及对应表名的建表语句字段,用于字段数据问题查询并重建;步骤1.3创建上下游表及字段映射表,上下游表及字段映射表包括源表,源字段,目标表,目标字段,逻辑字段,其中源表与目标表、源字段与目标字段通过逻辑字段内存储的加工处理逻辑规则形成映射关系,用于查询字段的关系以及异常的分析。3.根据权利要求1所述的...

【专利技术属性】
技术研发人员:汪大磊徐浩田羽兰翔方世儒
申请(专利权)人:武汉众邦银行股份有限公司
类型:发明
国别省市:

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

1