一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于分布式大数据计算平台的数据质检方法及系统与流程

2022-02-22 09:01:21 来源:中国专利 TAG:


1.本发明涉及一种基于分布式大数据计算平台的数据质检方法及系统,属于数据处理技术领域。


背景技术:

2.各级政府及下属部门产生的政务办件数据都需要按照标准向上级单位报送,到省级会进行办件数据质检,计算合格率,合格的数据上报国家平台,不合格的反馈给市级,之前市级是没有自己的质检工具,市级产生的办件量每年在千万级以上,都是直接上报到省前置机,由省前置机进行质检。省前置机采用质检工具是基于关系型数据库进行的,速度较慢,上报的数据量大的话需要几天时间进行质检才能反馈结果给市里,计算性能明显不足。而在省级进行质检后,合格率比较低,返回不通过办件和考核结果,市里需要根据反馈的结果进行整改,整改之后需要重新上报不合格办件数据,有些政务办件数据要反复多次修改,严重影响了向省级上报数据的时效性。


技术实现要素:

3.本发明的目的是提供一种基于分布式大数据计算平台的数据质检方法及系统,以解决目前向省级上报数据的合格率低、时效性差的问题。
4.本发明为解决上述技术问题而提供一种基于分布式大数据计算平台的数据质检方法,该方法包括以下步骤:
5.1)将需要上报的办件数据存储到分布式大数据计算平台中,采用增量抽取的方式获取当日新增或者重新上报的办件数据,并将获取的数据保存在平台最新分区中;
6.2)将获取的新增或者重新上报的办件数据与平台中存储的历史办件数据进行关联,并将新增或者重新上报的办件数据与关联的历史办件数据进行合并,得到更新后的办件数据;所述历史办件数据存储在平台的全量分区中,合并后数据存放在平台的最新全量表分区;
7.3)对最新全量表分区中的办件数据进行单表质检,反馈质检不通过的各单表信息;
8.4)若全量数据的各单表均通过质检,则对全量数据进行联表质检,联表质检时先对申报信息表进行联表质检。
9.本发明还提供了一种基于分布式大数据计算平台的数据质检系统,该系统包括处理器和存储器,所述处理器执行由所述存储器存储的计算机程序,以实现如上述本发明所述的基于分布式大数据计算平台的数据质检方法。
10.本发明采用增量抽取方式获取当日新增或者重新上报的办件数据,并将获取的新增或者重新上报的办件数据与平台中存储的历史办件数据进行关联和合并,得到更新后的办件数据,对更新后的办件数据进行质检。不受上报时间和数据量的限制,能够多次上报和历史数据批量上报,当数据完全没有变更的情况会被过滤无需重新上报,减少上报压力,极
大提高了质检的运行效率和计算能力,解决了目前向省级上报的办件数据合格率低、时效性差的问题。
11.进一步地,为了方便实现增量抽取,所述的分布式大数据计算平台模拟关系型数据库对办件数据进行存储。
12.进一步地,分布式大数据计算平台采用maxcompute数据平台,该数据平台根据办件编号和版本号将关联的情况分为新增、变更和未变化;新增指的是对应的历史办件数据中没有记录,需要将其合并到历史办件数据中;变更指的是之前历史办件数据中有记录但是此次有更新,保留更新后数据;未变化指的是没有变更的办结记录。
13.进一步地,当一个办件存在多个版本时,选取每个办件最新版本并覆盖写入最新全量表分区,以保证质检全量表每个办件保留最新版本或者版本号未变情况下最后修改的办结记录。
14.进一步地,所述步骤1)中通过增加时间戳字段实现增量抽取。
15.进一步地,单表质检时,采用多个并行单表质检任务,每个任务根据每个质检要素和质检规则进行质检。
16.进一步地,联表质检时,通过申报信息表和省里的事项信息表以及事项材料表进行关联,以找出不需要材料表的办结事项。
17.进一步地,若联表质检通过后,该方法将当天质检通过的且历史未上报的办件数据存放到一个增量上报表中,将增量上报表中的办件数据上报给上级进行质检。
附图说明
18.图1是本发明中新增或者重新上报的办件数据与关联的历史办件数据合并过程示意图;
19.图2是基于分布式大数据计算平台的数据质检方法的原理示意图。
具体实施方式
20.下面结合附图对本发明的具体实施方式作进一步地说明。
21.方法实施例
22.市级政务办件数据按要求需要上报到省级的表最多有11张,不同办件所需上报的表不定,共有申报信息表、申报信息扩展表、申报材料表、受理信息表、办理环节表、办结信息表、特殊程序申请表、特殊程序结果信息表、补齐补正告知表、补交材料信息表、补齐补正结果信息表等数据表,其中前六张是大部分办件都有数据的表,后面五张仅限于特殊程序和补齐补正的办件才需要,占比很小,按照省级下发的办件质检校验规则,每张表有数量不等的质检要素项和质检规则,每条办件都需要通过各个表的质检校验,而且当办件状态不同时,还需要满足同时需要多张表有该办件数据的情况,通过两种质检的办件数据才能上报到省里。这里把单表的每一个质检规则项定义为单表质检,同时需要上报多张表的规则定义为联表质检,目前单表质检项总计140个,联表质检项20个。
23.本发明通过增量抽取获得全量的上报数据进行办件数据质检,合格的话会上报包含历史上报的其他表的数据,不受上报时间和数据量的限制,能够多次上报和历史数据批量上报,当数据完全没有变更的情况会被过滤无需重新上报,减少上报压力,增量归集新增
和变更数据并合并上报数据、全量质检、全量对比质检通过数据与历史上报数据增量上报都在分布式大数据计算平台上实现,其原理如图2所示,具体实现步骤如下。
24.1.采用增量抽取的方式获取当日新增或者重新上报的办件数据。
25.本发明采用分布式大数据计算平台存储上报的办件数据,对办件数据进行前置质检,质检成功后在向省级上报。本发明采用的分布式大数据计算平台采用maxcopute平台,由于每天上报的数据量比较大,因此需要采用增量抽取的方式获得新增或者重新上报的办件数据。
26.本发明采用mysql数据库作为办件数据归集前置机,前置机库建有跟省前置机一样的,每张表都增加了字段`last_update_time`timestamp not null default current_timestamp on update current_timestamp comment'增量质检时间戳,质检程序专用',用于识别当日新增或者重新上报的办件数据,mysql前置机各表有主键索引约束,可以覆盖更新,覆盖之后新纪录的该字段也会自动更新,该字段上报方不需要上报数据,留空数据库即可自行赋值达到标识变更及新增数据的目的。
27.办件数据重新上报需求增加版本号,同一办件编号有多个版本号数据的时候取最大版本号的办件数据进行质检,通过mysql数据库增加时间戳字段解决了增量提取数据的难题,每天凌晨程序只需提取该时间戳是昨日一天的记录即可,抽取到的增量数据以增量表的形式存储在分布式计算平台maxcompute上的最新分区。
28.云上质检数据用天分区全量表存储,也就是每个分区的数据代表分区字段日期的全量质检数据,最新分区的意思就是当前获得的所有质检数据的意思,每天的分区是根据前一天的分区和归集库也就是关系型数据库中的发生变化的记录进行计算合并获得并更新为最新分区存储,后续质检都是以该分区数据进行。
29.2.将获取的新增或者重新上报的办件数据与平台中存储的历史办件数据进行关联,并将新增或者重新上报的办件数据与关联的历史办件数据进行合并。
30.最新分区中的数据需要跟历史数据进行合并,历史数据采用全量分区表,由于maxcompute数据平台不支持update操作,所以之后etl代码处理模拟关系型数据库的update操作,根据办件编号 版本号组合与云上全量表昨日分区关联之后分新增、变更、未变化三种情况进行处理,如图1所示,合并后数据存放在平台的最新全量表分区。
31.新增即该组合之前没有记录需要合并进全量表;变更是办件编号 版本号组合之前存在不过昨天有更新,这种修改数据不增加版本号的情况虽然不建议但是也进行了支持,以更新后的记录保留;最后是未变化,即没有变更的办结记录,这里需要排除上面变更的情况的老数据,只有同版本办件当天没有上报的才保留,如果如上保留了变更后的记录的话就不保留老记录。把三种情况的结果进行uinon合并之后就得到了全量的质检表,但是存在同一个办件多个版本的情况,因为上面新增的情况是合并进来最新的,同样平台无delete操作,需要提取每个办件最新版本然后覆盖写入最新全量表分区,保证质检全量表每个办件保留了最新版本或者版本号未变情况下最后修改的办结记录。
32.3.对最新全量表分区中的数据进行单表质检。
33.数据合并到最新全量分区之后就可以进行质检了,省质检规则分为两类,一类时单表质检,一类是联表质检,且只有在单表质检通过后才能进行联表质检,因此需要线对最新全量分区中的办件进行单表质检。
34.单表质检指的是对办件表的要素项进行的校验,为单字段质检或者多字段关联校验。单表质检之后把11张表所有不通过的办结编号合并之后对11张表进行过滤,因为有一张表有错误数据都不能上报,只有所有办件没有错误同时符合要求的上报表时才算质检通过。本发明在maxcompute平台上使用dataworks开发11个并行单表质检任务,每个任务根据每个质检要素和质检规则进行质检,每个任务上游上面归集中各自的合并任务,当质检需要其他表数据时需要配置依赖其他表的合并任务执行完才能进行质检,需要使用dataworks的任务上游依赖来设置,保证质检代码中出现的表都已经合并完成之后节点才开始计算,每个任务记录一张不通过表,格式与最终的不通过表一致,作为反馈给上报方的内容,包含办件编号、质检表、质检项编号、质检规则、不通过内容、数据产生时间等。11个单表质检完成后对11张同结构的不通过表进行union合并,之后再利用该合并的不通过表对11张表分别进行筛选,这个过程的11个任务并行进行,上游依赖于合并不通过表的任务节点。
35.4.对通过单表质检的全量质检表进行联表质检。
36.在单表质检完成后,若各单表均通过质检,则需要进行进行联表质检。无论什么办件状态,都要求上报数据中有办件申报表,所以首先对办件申报表进行联表质检,这里存在一种特殊情况,即某些办件由于减材料导致不需要提交材料信息,通过申报信息表和省里的事项信息表以及事项材料表进行关联即可找出不需要材料表的办结事项,任务中对这种情况进行区分特殊处理,当办结事项属于这里面的情况的时候不校验是否有材料表办件记录,其他情况按照不同的办件状态要求进行关联,只保留内连接有记录的结果存入质检通过表中,得到质检通过申报信息表。
37.联表质检完成后需要把联表质检不通过的原因进行记录,由于联表质检只涉及到前六张表,所以设计一个中间表,设计过程如表1所示。
[0038][0039]
表1
[0040]
该表用于得到联表质检错误原因,是缺少什么表,当不需要某张表时,该表的对应某表_projid字段存的是’不需要’三个汉字,后面使用时判断该表某个表_projid字段为空即可,比如办结状态缺少办结信息表的时候判断bjbjxxb_projid is null,即可把错误原因记录为”当某某状态是,办结信息表无对应数据”,并给与设定的错误编号,作为反馈给上报方的内容,以后任务完成后即可输出质检不通过表到上报前置机。
[0041]
而归集数据库数据可以定期备份历史,历史数据已经上云,所以只需修改原表名为备份表,新建同名同结构上报表就行,这个可以用存储过程和事件完成。由于每天质检是在零点之后开始,大概3点前完成,所以事件定时时间选在2点45分,调用存储过程,存储过
程判断申报信息表的记录数,达到一千万的话修改11张表的表名加日期后缀备份,然后重建上报表供上报方使用,这个过程会导致0点到建表之间上报的数据无法上云,所以上报方需要在零点前完成前一天的上报工作,后一天的上报要在3点后开始,防止把上报数据留在历史备份表,历史备份表根据数据库管理策略进行处理,可以转移或者删除,目的是保证归集表的性能,关系型数据库表太大会对上报性能有较大影响。每日新增办件数据需要在凌晨三点到零时之间上报到质检上报库,另外开发的计算每日质检通过率和各个上报来源的合格率以及不合格问题汇总反馈给上报方。
[0042]
5.利用增量上报表将通过联表质检的办件数据上报的省级质检系统。
[0043]
由于上面的质检是是合并了历史数据的,不需要每次上报所有通过的办件数据,因为大部分之前可能都报过了,需要做的是维护一个增量上报表,该表第一次是空的,全量上报通过的办件,之后每天全量质检完之后,拿全量数据跟该表的历史所有分区记录进行全字段md5对比,即把所有字段,空值置为空字符合并成一个字符串求md5值,以此判断记录是否曾经上报给省里,计算完之后得到今天质检通过的且历史未上报的办件数据,后面进行增量上报,同时,其他10张表都各自跟质检通过的申报表全量表分区进行内连接,得到各自的联表通过全量表,并各自跟自己的增量上报表进行关联得到需要上报的数据记录,保存进增量表进行上报,这样11张质检表的质检通过数据都进行上报,通过datax集成任务并行输出到省前置机完成上报,每天上班前即可完成昨日修改和新增办件数据的质检上报工作,分布式大数据计算平台计算能力处理千万级数据,完成140项单表质检项和20项联表质检项耗时在3小时以内,数据量增加对程序运行时长不敏感,全量质检的原因是上报方的修复是延后的且不定时的,可能上月有问题的办件本月才重新上报,支持随时对历史办件上报,云上有的办结不需要重报即可合并。
[0044]
作为其他实施方式,本发明还可以优化全量质检部分,假如不存在省办件事项表之类的表修改导致不通过的办件数据修改后可通过等特殊情况,并且不需要关心之前通过的办件数据是否一直符合规则的话,可以将每日11张增量表中涉及到的办件id进行合并去重,所有单表质检和联表质检都只过滤变化的办件id,即可获得增量质检的结果。
[0045]
本发明基于分布式大数据计算平台,充分发挥大数据计算的优势,同时模拟了关系型数据库的更新操作,利用关系型数据库自动更新时间戳的特点获取新增和变更记录,最小成本获得全量最新上报数据,方便上报方不断修复质检问题重新上报,质检通过数据通过对比增量增量上报历史表获得最新需上报数据,提高了政务办件数据的数据质量和合格率,本工具每天凌晨开始自动运行,三小时内完成工作,大数据平台保存历史全量数据,归集数据库定期备份,历史数据可存档或者删除,关系型数据库运行事件跟存储过程保证归集mysql数据库能够迅速响应。
[0046]
系统实施例
[0047]
本发明的基于分布式大数据计算平台的数据质检系统,包括处理器和存储器,所述处理器执行由所述存储器存储的计算机程序,以实现本发明实现上述方法实施例中盾构机设备工序用时确定方法。也就是说,以上方法实施例中的方法应理解可由计算机程序指令实现基于分布式大数据计算平台的数据质检方法的流程。可提供这些计算机程序指令到处理器,使得通过处理器执行这些指令产生用于实现上述方法流程所指定的功能。
[0048]
本实施例所指的处理器采用的分布式大数据计算平台,例如可采用maxcompute数
据平台;本实施例所指的存储器包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。例如:利用电能方式存储信息的各式存储器,ram、rom等;利用磁能方式存储信息的的各式存储器,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、u盘;利用光学方式存储信息的各式存储器,cd或dvd。当然,还有其他方式的存储器,例如量子存储器、石墨烯存储器等等。
[0049]
通过上述存储器、处理器以及计算机程序构成的装置,在计算机中由处理器执行相应的程序指令来实现,处理器可以搭载各种操作系统,如windows操作系统、linux系统、android、ios系统等。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献