一种hive离线同步校验方法、装置及电子设备制造方法及图纸

技术编号:23315093 阅读:18 留言:0更新日期:2020-02-11 17:47
本发明专利技术公开了一种hive离线同步校验方法、装置及电子设备,所述方法包括:分别获取hive表的增量流水数据表和增量数据表;根据所述增量流水数据表和增量数据表对hive同步业务库数据进行校验。本发明专利技术的hive离线同步校验方法,根据增量流水数据表和增量数据表对hive同步业务库数据进行校验,从校验机制上保证hive数据仓库的数据质量,能有效防止hive离线同步过程中数据的丢失,达到金融业对数据一致性的要求。

A method, device and electronic equipment of hive off-line synchronous verification

【技术实现步骤摘要】
一种hive离线同步校验方法、装置及电子设备
本专利技术涉及计算机信息处理领域,具体而言,涉及一种hive离线同步校验方法、装置、电子设备及计算机可读介质。
技术介绍
随着计算机技术的不断发展和信息化程度的不断提高,互联网快速发展,网络信息呈指数级增长,海量数据存储及应用也随之蓬勃发展。在大数据处理领域中,hive作为建立在Hadoop上的开源数据仓库框架有着较为广泛的使用,其可以将结构化的数据文件映射为一张数据库表,并提供类SQL语言HQL的查询,可以方便的读取、写入和管理Hadoop中的海量数据集,越来越多的数据存储电子设备以hive作为数据管理仓库和数据处理分析工具。Hive采用的HQL与数据库sql最大的区别就是数据库sql支持数据更新,HQL却不支持,也就是HQL无法对数据进行update(更新)、delete(删除),只能通过insert(插入)变相实现update、delete。这个变相的实现过程容易导致数据丢失,也因此会导致现有的hive离线同步工具在同步过程中在数据丢失的问题。
技术实现思路
本专利技术旨在解决现有技术中hive离线同步过程中存在数据丢失的技术问题。为了解决上述技术问题,本专利技术第一方面提出一种hive离线同步校验方法,所述方法包括:分别获取hive表的增量流水数据表和增量数据表;根据所述增量流水数据表和增量数据表对hive同步业务库数据进行校验。在一种较佳的实施方式中,所述获取hive表的增量流水数据表包括:通过canal同步业务库binlog到kafka;通过流计算将binlog实时写到hive表中生成增量数据变更log;根据所述增量数据变更log生成增量流水数据表。在一种较佳的实施方式中,所述获取增量数据表包括:通过DataX/Sqoop离线同步获取增量数据表。在一种较佳的实施方式中,所述根据所述增量流水数据表和增量数据表对hive同步业务库数据进行校验包括:对比所述增量流水数据表和增量数据表是否有差异;若所述增量流水数据表和增量数据表有差异,确定所述增量数据表是否有数据缺失;若所述增量数据表中有数据缺失,根据所述增量流水表补充所述增量数据表中的缺失数据。在一种较佳的实施方式中,所述方法还包括:根据补充后的增量数据表更新hive同步业务库数据。在一种较佳的实施方式中,若所述增量流水数据表和增量数据表有差异,提示报警信息。为解决上述技术问题,本专利技术第二方面提供一种hive离线同步校验装置,所述装置包括:第一获取模块,用于获取hive表的增量流水数据表;第二获取模块,用于获取hive表的增量数据表;校验模块,用于根据所述增量流水数据表和增量数据表对hive同步业务库数据进行校验。在一种较佳的实施方式中,所述第一获取模块包括:同步模块,用于通过canal同步业务库binlog到kafka;第一生成模块,用于通过流计算将binlog实时写到hive表中生成增量数据变更log;第二生成模块,用于根据所述增量数据变更log生成增量流水数据表。在一种较佳的实施方式中,所述第二获取模块具体用于通过DataX/Sqoop离线同步获取增量数据表。在一种较佳的实施方式中,所述校验模块包括:对比模块,用于对比所述增量流水数据表和增量数据表是否有差异;确定模块,用于若所述增量流水数据表和增量数据表有差异,确定所述增量数据表是否有数据缺失;补充模块,用于若所述增量数据表中有数据缺失,根据所述增量流水表补充所述增量数据表中的缺失数据。在一种较佳的实施方式中,所述校验模块还包括:更新模块,用于根据补充后的增量数据表更新hive同步业务库数据。在一种较佳的实施方式中,所述校验模块还包括报警模块,用于若所述增量流水数据表和增量数据表有差异,提示报警信息。为解决上述技术问题,本专利技术第三方面提供一种电子设备,包括:处理器;以及存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器执行上述的方法。为了解决上述技术问题,本专利技术第四方面提出一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,当所述一个或多个程序被处理器执行时,实现上述方法。本专利技术通过分别获取hive表的增量流水数据表和增量数据表;根据增量流水数据表和增量数据表对hive同步业务库数据进行校验,通过对比增量流水表和增量数据表的数据的差异,一旦发现数据丢失可及时补充hive同步业务库对应的数据,从校验机制上保证hive数据仓库的数据质量,达到金融业对数据一致性的要求。本专利技术的hive离线同步校验方法,根据增量流水数据表和增量数据表对hive同步业务库数据进行校验,能有效防止hive离线同步过程中数据的丢失,提高hive数据的一致性。附图说明为了使本专利技术所解决的技术问题、采用的技术手段及取得的技术效果更加清楚,下面将参照附图详细描述本专利技术的具体实施例。但需声明的是,下面描述的附图仅仅是本专利技术的示例性实施例的附图,对于本领域的技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他实施例的附图。图1是本专利技术一种hive离线同步校验方法的流程图;图2是本专利技术获取hive表的增量流水数据表的流程图;图3a是本专利技术实施例源hive表示意图;图3b是本专利技术实施例获取图3a中源hive表的增量流水数据表示意图;图3c是本专利技术实施例获取图3a中源hive表的增量数据表示意图;图3d是本专利技术实施例对图3c补充后的增量数据表示意图;图4是本专利技术根据所述增量流水数据表和增量数据表对hive同步业务库数据进行校验步骤的流程图;图5是本专利技术一种hive离线同步校验装置的结构框架示意图;图6是根据本专利技术的一种电子设备的示例性实施例的结构框图;图7是本专利技术一个计算机可读介质实施例的示意图。具体实施方式现在将参考附图来更加全面地描述本专利技术的示例性实施例,虽然各示例性实施例能够以多种具体的方式实施,但不应理解为本专利技术仅限于在此阐述的实施例。相反,提供这些示例性实施例是为了使本专利技术的内容更加完整,更加便于将专利技术构思全面地传达给本领域的技术人员。在符合本专利技术的技术构思的前提下,在某个特定的实施例中描述的结构、性能、效果或者其他特征可以以任何合适的方式结合到一个或更多其他的实施例中。在对于具体实施例的介绍过程中,对结构、性能、效果或者其他特征的细节描述是为了使本领域的技术人员对实施例能够充分理解。但是,并不排除本领域技术人员可以在特定情况下,以不含有上述结构、性能、效果或者其他特征的技术方案来实施本专利技术。附图中的流程图仅是一种示例性的流程演示,不代表本专利技术的方案中必须包括流程图中的所有的内容、操作和步骤,也不代表必须按照图中所本文档来自技高网...

【技术保护点】
1.一种hive离线同步校验方法,其特征在于,所述方法包括:/n分别获取hive表的增量流水数据表和增量数据表;/n根据所述增量流水数据表和增量数据表对hive同步业务库数据进行校验。/n

【技术特征摘要】
1.一种hive离线同步校验方法,其特征在于,所述方法包括:
分别获取hive表的增量流水数据表和增量数据表;
根据所述增量流水数据表和增量数据表对hive同步业务库数据进行校验。


2.根据权利要求1所述的方法,其特征在于,所述获取hive表的增量流水数据表包括:
通过canal同步业务库binlog到kafka;
通过流计算将binlog实时写到hive表中生成增量数据变更log;
根据所述增量数据变更log生成增量流水数据表。


3.根据权利要求1-2中任一项所述的方法,其特征在于,所述获取增量数据表包括:
通过DataX/Sqoop离线同步获取增量数据表。


4.根据权利要求1-3中任一项所述的方法,其特征在于,所述根据所述增量流水数据表和增量数据表对hive同步业务库数据进行校验包括:
对比所述增量流水数据表和增量数据表是否有差异;
若所述增量流水数据表和增量数据表有差异,确定所述增量数据表是否有数据缺失;
若所述增量数据表中有数据缺失,根据...

【专利技术属性】
技术研发人员:黄建庭宋荣鑫刘建敏黄龙
申请(专利权)人:北京淇瑀信息科技有限公司
类型:发明
国别省市:北京;11

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

1