CN114416805A - 数据核对方法、装置、计算机设备和存储介质 - Google Patents

数据核对方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN114416805A
CN114416805A CN202210230332.3A CN202210230332A CN114416805A CN 114416805 A CN114416805 A CN 114416805A CN 202210230332 A CN202210230332 A CN 202210230332A CN 114416805 A CN114416805 A CN 114416805A
Authority
CN
China
Prior art keywords
data
checking
rule
configuration information
collation
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
Application number
CN202210230332.3A
Other languages
English (en)
Other versions
CN114416805B (zh
Inventor
张民遐
王立福
曾德旺
刘勇源
刘姝琪
刘冲
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Gaodeng Computer Technology Co ltd
Original Assignee
Shenzhen Gaodeng Computer Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Gaodeng Computer Technology Co ltd filed Critical Shenzhen Gaodeng Computer Technology Co ltd
Priority to CN202210230332.3A priority Critical patent/CN114416805B/zh
Publication of CN114416805A publication Critical patent/CN114416805A/zh
Application granted granted Critical
Publication of CN114416805B publication Critical patent/CN114416805B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

本申请涉及一种数据核对方法、装置、计算机设备和存储介质。所述方法包括:获取数据核对规则配置信息,数据核对规则配置信息包括业务线,解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息,针对业务线,根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息生成与数据核对规则执行脚本,当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对。采用本方法能够支持所有业务场景的数据核对规则,面对不同的业务场景,无需修改脚本,只需相应修改数据核对规则配置信息即可,极大程度上提高了数据核对效率。

Description

数据核对方法、装置、计算机设备和存储介质
技术领域
本申请涉及数据处理技术领域,特别是涉及一种数据核对方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着互联网技术的发展,业务规模不断地壮大,线上系统的数据量也不断变大。根据业务的需要,会对业务数据进行核对处理,因此需要将业务单据与资金单据通过对账系统利用一定的对账规则进行核对,并在两方的单据标记核对的结果。
由于业务场景的多样化,面对不同的业务场景对账规则会发生改变。传统 的对账方案是采取人工对账的方式进行,该方式耗费人力且效率较低,因此,出现了自动化对账的方案。
目前,现有的自动化对账方案多是开发人员针对每一种业务场景开发出相应的对账程序(如对账脚本),但是,随着业务场景的不断增加,数据开发人员的工作量也大大增加,且若某个业务场景发生改变,则需要修改相应的对账脚本,如此,导致业务系统之间的数据核对效率较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高数据核对效率的数据核对方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种数据核对方法。所述方法包括:
获取数据核对规则配置信息,数据核对规则配置信息包括业务线;
识别数据核对规则配置信息的数据核对类型,并基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息;
针对业务线,根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成与数据核对规则执行脚本;
当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对。
在其中一个实施例中,基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息包括:
根据数据核对类型确定对应的数据核对任务流配置模板;
根据数据核对任务流配置模板,确定任务流可配置变量;
提取数据核对规则配置信息中与任务流可配置变量对应的目标任务流配置字段;
将任务流可配置变量替换为目标任务流配置字段,得到数据核对任务流配置信息。
在其中一个实施例中,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本包括:
根据预设数据核对规则执行脚本模板,确定数据核对规则执行可配置变量;
提取数据核对规则配置信息中与数据核对规则执行可配置变量对应的目标数据核对规则配置字段;
将数据核对规则执行可配置变量替换为目标数据核对规则配置字段,得到数据核对规则执行脚本。
在其中一个实施例中,数据核对规则配置信息包括数据过滤条件、数据源、数据核对规则和数据核对规则执行优先级;
执行数据核对规则执行脚本以进行数据核对包括:
根据数据过滤条件从数据源抽取出待核对数据;
按照数据核对规则执行优先级执行数据核对规则,对待核对数据进行数据核对,得到数据核对结果。
在其中一个实施例中,数据核对规则配置信息包括数据对比字段;
执行数据核对规则,对待核对数据进行数据核对,得到数据核对结果包括:
根据数据对比字段匹配待核对数据,得到字段匹配结果,字段匹配结果包括待核对数据的标识数据;
将字段匹配结果中的匹配成功结果数据存入预创建的字段匹配结果表;
若待核对数据的标识数据存在于字段匹配结果表,则判定与待核对数据的标识数据对应的待核对数据核对成功;
若待核对数据的标识数据不存在于字段匹配结果表,则判定与待核对数据的标识数据对应的待核对数据核对失败。
在其中一个实施例中,得到数据核对结果之后,还包括:
针对待核对数据的数据源,创建对应的数据核对结果表;
将数据核对结果按照数据源写入对应的数据核对结果表。
第二方面,本申请还提供了一种数据核对装置。所述装置包括:
数据获取模块,用于获取数据核对规则配置信息,数据核对规则配置信息包括业务线;
数据解析模块,用于识别数据核对规则配置信息的数据核对类型,并基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息;
数据处理模块,用于针对业务线,根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本;
数据核对模块,用于当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取数据核对规则配置信息,数据核对规则配置信息包括业务线;
识别数据核对规则配置信息的数据核对类型,并基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息;
针对业务线,根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成与数据核对规则执行脚本;
当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取数据核对规则配置信息,数据核对规则配置信息包括业务线;
识别数据核对规则配置信息的数据核对类型,并基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息;
针对业务线,根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成与数据核对规则执行脚本;
当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取数据核对规则配置信息,数据核对规则配置信息包括业务线;
识别数据核对规则配置信息的数据核对类型,并基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息;
针对业务线,根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成与数据核对规则执行脚本;
当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对。
上述数据核对方法、装置、计算机设备、存储介质和计算机程序产品,基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息,进而针对业务线,根据数据核对任务流配置信息生成与数据核对任务流,根据数据核对规则执行配置信息生成与数据核对规则执行脚本,然后,执行数据核对任务流,并执行数据核对规则执行脚本以进行数据核对。上述方案,通过可配置的数据核对任务流配置信息和数据核对规则执行配置信息,生成数据核对任务流和数据核对规则执行脚本,实现了数据核对任务流模板化和数据核对规则的模板化,且支持所有业务场景的数据核对规则,覆盖了所有业务及其场景,面对不同的业务场景,无需修改脚本,只需相应修改数据核对规则配置信息即可,如此,极大程度上提高了数据核对效率。
附图说明
图1为一个实施例中数据核对方法的应用环境图;
图2为一个实施例中数据核对方法的流程示意图;
图3为一个实施例中得到数据核对任务流配置信息步骤的流程示意图;
图4为另一个实施例中数据核对方法的详细流程示意图;
图5为另一个实施例中数据核对方法的流程示意图;
图6为一个实施例中数据核对装置的结构框图;
图7为另一个实施例中数据核对装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的数据核对方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。服务器104上部署有数据处理服务(如Hive)以及批量工作流任务调度器(如Azkaban)。具体的,可以是数据核对人员在终端102配置数据核对规则信息,并通过终端102发送携带数据核对规则配置信息的数据核对请求至服务器104,服务器104响应该数据核对请求,获取数据核对规则配置信息,然后,识别数据核对规则配置信息的数据核对类型,并基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息,再根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本,在数据核对任务流的执行过程中,执行数据核对规则执行脚本以进行数据核对。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种数据核对方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,获取数据核对规则配置信息,数据核对规则配置信息包括业务线。
数据核对规则配置信息包括数据核对规则的基本信息,具体包含业务线、数据源、数据过滤条件、对比字段、优先级 、对账类型、对账规则、对账结果输出字段以及对账结果回写至单据的哪个字段等。本实施例中,以业务系统之间的资金对账为例进行说明,则数据核对规则配置信息即为对账规则配置信息。在实际应用场景中,可以是对账人员通过可视化的操作界面在对账配置中心配置与业务需求相对应的对账规则,配置完成后,可以是点击“开始对账”按钮,发送对账请求至服务器。响应该对账请求,获取对账人员所配置的对账规则配置信息。具体的,对账配置中心包含:数据源管理、对账类型管理、对账规则管理。其中,对账类型管理包括维护对账任务流的ID、名称、所属业务、对账的数据范围、状态信息。数据源管理维护需要对账的数据源及对账所需要的字段。对账规则管理维护对账规则的基本配置,包含对账规则对应的数据源、对账类型、优先级、对账匹配字段等等。而对账规则管理配置内容较多,会分成对账规则信息、对账数据设置、对比字段设置三部分。
其中,对账规则信息设置了对账规则的基本信息,包含对账规则所属业务、对账规则所属对账类型、对账规则名称、对账规则执行优先级、对账规则描述(可输入对账规则对应场景的说明)、对账规则涉及的是单侧单据对账还是多侧单据相互对账、对账规则应用在自动对账还是手动对账(如果是自动对账的规则,则手工对账时也可使用这个规则)、对账规则状态。
对账数据设置了对账规则参与对账的单据的过滤条件及对账结果回写到单据的哪个字段。只有满足过滤条件的数据才会使用该对账规则来进行资金对账。一种单据的数据过滤条件可设置多个分组。每个数据过滤条件分组之间是“或”的关系,即只要满足其中一组的条件都可使用这个对账规则来资金对账。数据过滤条件组内可设置多个条件,多个条件之间的关系可以是“且”也可以是“或”。
对比字段设置了参与对账的单据是通过什么字段信息来进行互相核对的,具体的包括设置匹配字段和金额字段。
步骤204,识别数据核对规则配置信息的数据核对类型,并基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息。
本实施例中,可以是通过调用预设的对账规则解析程序读取数据核对规则配置信息,该程序可解析出相应的数据核对任务流配置信息和数据核对规则执行配置信息。具体的,可以是识别数据核对规则配置信息的数据核对类型,然后根据识别出的类型,获取相应的数据核对任务流配置模板和数据核对规则执行脚本模板,根据数据核对任务流配置模板和数据核对规则执行脚本模板,提取出相应的数据核对任务流配置信息和数据核对规则执行配置信息。其中,数据核对任务流配置信息用于生成数据核对任务流,数据核对规则执行配置信息用于生成数据核对规则执行脚本。
步骤206,针对业务线,根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本。
具体实施时,在得到数据核对任务流配置信息后,可以是将数据核对任务流配置信息(即任务流配置文件)通过接口上传至批量工作流任务调度器如Azkaban,Azkaban针对业务线,生成相应的数据核对任务流。具体的,Azkaban是使用job配置文件建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪的数据核对工作流。当得到数据核对规则执行配置信息之后,可以是将数据核对规则执行配置信息对应填充至与业务线对应的数据核对规则执行脚本模板中,以生成新的数据核对规则执行脚本。本实施例中,数据核对规则执行脚本可以是HiveQL语句构建的脚本。该脚本用于按照配置信息,筛选出待核对数据,然后执行配置的数据核对规则,以进行数据核对,得到数据核对结果。
步骤208,当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对。
生成数据核对任务流和数据核对规则执行脚本后,执行数据核对任务流,在数据核对任务流的执行过程中,该任务流包含有数据核对规则执行脚本的执行,当数据核对任务流运行至脚本执行任务时,则会执行数据核对规则执行脚本,进行数据核对,得到相应的数据核对结果。
上述数据核对方法中,基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息,进而针对业务线,根据数据核对任务流配置信息生成与数据核对任务流,根据数据核对规则执行配置信息生成与数据核对规则执行脚本,然后,执行数据核对任务流,并执行数据核对规则执行脚本以进行数据核对。上述方案,通过可配置的数据核对任务流配置信息和数据核对规则执行配置信息,生成数据核对任务流和数据核对规则执行脚本,实现了数据核对任务流模板化和数据核对规则的模板化,且支持所有业务场景的数据核对规则,覆盖了所有业务及其场景,面对不同的业务场景,无需修改脚本,只需相应修改数据核对规则配置信息即可,如此,极大程度上提高了数据核对效率。
在其中一个实施例中,如图3所示,基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息包括:
步骤224,根据数据核对类型确定对应的数据核对任务流配置模板;
步骤244,根据数据核对任务流配置模板,确定任务流可配置变量;
步骤264,提取数据核对规则配置信息中与任务流可配置变量对应的目标任务流配置字段;
步骤284,将任务流可配置变量替换为目标任务流配置字段,得到数据核对任务流配置信息。
具体实施时,数据核对任务流与数据核对类型相对应,即每一种数据核对类型对应一种数据核对任务流。在实际应用中,可以是预设每一种数据核对类型对应一种数据核对任务流配置模板。具体的,数据核对类型包括资金核对、优惠券核对和积分核对等。本实施例中,可以是识别数据核对配置信息中的数据核对类型,然后,根据识别出的数据核对类型查找出对应的数据核对任务流配置模板,然后,根据该配置模板中包含的可配置变量,提取数据核对规则配置信息中相应的目标任务流配置字段,例如,数据核对任务流配置模板中可配置变量包括任务流的ID、名称、所属业务、对账的数据范围、状态信息以及数据核对任务调度信息等等。根据该配置模板中包含的可配置变量,提取出相应的目标任务流配置字段后,将该模板中的可配置变量替换为具体的目标任务流配置字段,生成新的数据核对任务流配置信息(如数据核对任务流配置文件)。本实施例中,一个数据核对类型对应一个数据核对任务流,能够更好地实现任务流的管理,且实现了数据核对任务流配置的模板化,提高任务流的配置效率。
在其中一个实施例中,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本包括:
根据预设数据核对规则执行脚本模板,确定数据核对规则执行可配置变量;
提取数据核对规则配置信息中与数据核对规则执行可配置变量对应的目标数据核对规则配置字段;
将数据核对规则执行可配置变量替换为目标数据核对规则配置字段,得到数据核对规则执行脚本。
在实际应用中,预设有数据核对规则执行脚本模板,该模板包含多条HiveQL语句,HiveQL语句中包含多个可配置变量。可配置变量可包括数据源、数据核对规则、对比字段和数据核对结果输出字段等。具体的,可以是根据数据核对规则执行脚本模板中的可配置变量,从数据核对规则配置信息中提取出相应的目标数据核对规则配置字段如数据源、数据核对规则、对比字段和数据核对结果输出字段等,然后,将数据核对规则执行脚本模板中的目标数据核对规则配置字段替换为提取出的数据源、数据核对规则、对比字段和数据核对结果输出字段替换,以生成新的数据核对规则执行脚本。
如图4所示,在其中一个实施例中,数据核对规则配置信息包括数据过滤条件、数据源、数据核对规则和数据核对规则执行优先级;
当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对包括:步骤228,当数据核对任务流运行至脚本执行任务时,根据数据过滤条件从数据源抽取出待核对数据,按照数据核对规则执行优先级执行数据核对规则,对待核对数据进行数据核对,得到数据核对结果。
如上述实施例所述,数据核对规则配置信息包括数据过滤条件、数据源、数据核对规则和数据核对规则执行优先级。其中,数据源是指参与对账的单据在数据库存储系统里的数据表。数据源相应的配置信息包括数据表的表名、业务线、对账类型、单边方向以及具体的数据过滤条件的字段配置。具体的,数据表指业务单据或资金单据存储在关系型数据库系统的表。表名指可以为数据表定义对账过程中的别名。业务线表明数据表所属的业务。对账类型指这个数据表会在哪些对账类型中使用。单边方向表明对账过程中单据未匹配规则时的默认对账结果。字段配置包含:字段、字段名、关联字典、是否对账使用、时间标准。字段名是指对账配置时字段使用的名称。关联字典指字段的枚举值,在配置规则时会显示关联的枚举值。如果勾选了是否对账使用多选框,表明这些字段在对账配置或对账的过程中要用到。时间标准是指当前数据表的有效时间字段,即当出现要对数据表进行时间维度的过滤时,以此时间标准字段作为依据,比如:有业务单据支付单与资金单据支付宝账单,业务支付单是按支付时间T+1同步数据,但是支付宝账单按交易时间T+2同步数据,假如当前是2021-12-22,那么业务支付单最新的数据应该到2021-12-21,支付宝账单最新的数据应该到2021-12-20。那么当天对账时,业务支付单会取到支付时间到2021-12-20的数据,支付宝账单会取到交易时间到2021-12-20的数据。需要说明的是,业务支付单支付时间和支付宝账单的交易时间就是数据源配置的标准时间。
数据核对规则执行优先级由数据核对人员在配置数据核对规则时定义,数据核对规则执行优先级表征了数据核对规则的执行顺序,同一优先级的对账规则可同时执行,不同的优先级的对账规则按优先级先后顺序执行。如优先级为1,则优先级最高,最先执行。本实施例中,可以是于本地的MySQL数据库,根据数据过滤条件从数据源中筛选出符合要求的待核对数据,然后,根据数据核对规则执行优先级依次执行数据核对规则,对待核对数据进行数据核对,得到相应的数据核对结果。通常来说,待核对数据包括业务侧单据和资金侧单据。具体实施时,如图5所示,也可以是MySQL服务器将MySQL数据库的业务单据和资金单据数据通过Sqoop导入到Hive大数据平台,Hive大数据平台执行配置的对账规则HiveQL脚本进行资金对账,将对账结果写入到对账规则指定的结果表,将生成的对账结果按单据对应的表写入对账结果表。最后可以是将生成的对账结果数据,按表导出到MySQL数据库。这一过程,Hive大数据平台与Azkaban二者是相辅相成的,即数据核对的调度由Azkaban完成,同时Azkaban调度Hive大数据平台的数据导入导出工作。其中,Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递。本实施例中,根据数据过滤条件精准抽取相应的待核对数据,并按照数据核对规则执行优先级执行数据核对规则,能够在确保数据核对结果的准确率的同时,保证数据核对的有序执行。
在其中一个实施例中,数据核对规则配置信息包括数据对比字段;执行数据核对规则,对待核对数据进行数据核对,得到数据核对结果包括:
根据数据对比字段匹配待核对数据,得到字段匹配结果,字段匹配结果包括待核对数据的标识数据;
将字段匹配结果中的匹配成功结果数据存入预创建的匹配结果表;
若待核对数据的标识数据存在于匹配结果表,则判定与待核对数据的标识数据对应的待核对数据核对成功;
若待核对数据的标识数据不存在于匹配结果表,则判定与待核对数据的标识数据对应的待核对数据核对失败。
对比字段是指参与对账的单据是通过什么字段信息来进行互相核对的。参与对账的单据对比字段信息比对成功,则证明资金对账成功,对比成功的单据会将对账成功标志写入相应的单据表。对比字段又包括匹配字段和金额字段这两类。匹配字段,表明参与对账的双方单据是通过什么字段进行唯一关联的。匹配字段可配置多组,组间关系只能是“或”。匹配字段组内的关系可以是“且”也可以是“或”;金额字段,对账的双方单据通过什么字段进行金额匹配的,金额匹配字段可以设置多组,组间关系只能是“或”。金额字段组内的关系可以是“且”也可以是“或”。匹配字段包括单据号(如渠道支付订单号和应用程序订单号),金额字段则指具体的金额(如成交金额和订单金额)。具体的,金额字段设置包括指参与对账的双方单据、双方金额字段匹配条件如“等于”、字段可选范围是当前数据表在数据源管理时配置的对账使用字段、加工方式、汇总:可选择汇总依据字段,字段可选范围是当前数据表在数据源管理时配置的对账使用字段;对前面选择的字段按照汇总依据的字段进行汇总;取绝对值:对前面选择的字段进行取绝对值处理。
在数据核对规则的执行过程中,具体包括根据数据对比字段匹配待核对数据,例如,比对业务侧单据的单号是否与资金侧单据的单号相同,业务侧单据的支付金额是否与资金侧单据的实际支付金额相等,得到字段匹配结果,字段匹配结果包括待核对数据的标识数据(如账单数据的数据唯一ID),业务侧单据号和资金侧单据号,以及金额字段和匹配字段的匹配结果(如匹配成功或匹配失败)。进一步的,可以将字段匹配成功或部分字段匹配成功的匹配结果保存至字段匹配结果表中,匹配失败的结果不存入字段匹配表中。在得到字段匹配结果表后,可以是查看字段匹配结果表中是否存在账单数据的数据唯一ID,若该字段匹配结果表包含有待核对数据的数据唯一ID,则判定与该数据唯一ID对应的待核对数据匹配成功,反之,则判定不存在于字段匹配结果表中的数据唯一ID对应的待核对数据匹配失败,以此方式得到待核对数据的数据核对结果。数据核对结果的输出字段包括数据状态(如核销状态)、相关联的数据核对规则以及数据核对类型等。可以理解的是,由于Hive大数据平台的特性,创建的字段匹配结果表可以是一张临时表。本实施例中,由于待核对数据的数量可能非常多,通过将字段匹配成功的结果存于字段匹配表中,能够便于数据核对人员直观地明确数据核对成功的数据,且一定程度上缓解了数据核对的压力。
如图4所示,在其中一个实施例中,得到数据核对结果之后,还包括:步骤210,针对待核对数据的数据源,创建对应的数据核对结果表,将数据核对结果按照数据源写入至对应的数据核对结果表。
在实际应用中,由于数据核对任务流可能包括多个数据源的待核对数据的核对,因此,得到数据核对结果之后,可以是针对各待核对数据的数据源,创建一张相应的数据核对结果表,然后,将数据核对结果按照数据源写入至对应的数据核对结果表中,如此,能够便于直观的了解各数据源的数据核对结果,便于数据的管理。同样,可以理解的是,由于Hive大数据平台的特性,创建的数据核对结果表也可以是一张临时表。
为了对本申请提供的数据核对方法进行清楚的说明,下面结合一个具体实施例进行说明,该实施例以资金对账为例,包括:
数据核对人员在终端配置数据核对规则信息,包括包含业务线、数据源、数据过滤条件、对比字段、优先级 、对账类型、对账结果输出字段以及对账结果回写至单据的哪个字段等,然后,通过终端发送携带数据核对规则配置信息的数据核对请求至服务器,服务器响应数据核对请求,获取数据核对规则配置信息,识别数据核对配置信息中的数据核对类型,根据识别出的数据核对类型查找出对应的数据核对任务流配置模板,然后,根据该配置模板中包含的可配置变量,提取数据核对规则配置信息中相应的目标任务流配置字段如任务流的ID、名称、所属业务、对账的数据范围等,将该模板中的可配置变量替换为具体的目标任务流配置字段,生成新的数据核对任务流配置文件。同时,根据数据核对规则执行脚本模板的可配置变量,提取出相应的数据核对规则执行配置信息。
然后,针对业务线,将数据核对任务流配置信息(即任务流配置文件)通过接口上传至批量工作流任务调度器如Azkaban,Azkaban针对业务线,生成相应的数据核对任务流,将数据核对规则执行配置信息对应填充至与业务线对应的数据核对规则执行脚本模板中,以生成数据核对规则执行脚本。再执行数据核对任务流,同时,在数据核对任务流的执行过程中,会执行数据核对规则执行脚本以进行数据核对,得到数据核对结果。具体的,可以是于本地的MySQL数据库,根据数据过滤条件从数据源中筛选出符合要求的待核对数据,通过Sqoop将待核对数据导入到Hive大数据平台,然后,根据数据核对规则执行优先级依次执行数据核对规则,具体包括根据数据对比字段匹配待核对数据,例如,比对业务侧单据的单号是否与资金侧单据的单号相同,业务侧单据的支付金额是否与资金侧单据的实际支付金额相等,得到字段匹配结果,字段匹配结果包括待核对数据的标识数据(如账单数据的数据唯一ID),业务侧单据号和资金侧单据号,以及金额字段和匹配字段的匹配结果(如匹配成功或匹配失败)。进一步的,可以将字段匹配成功或部分字段匹配成功的匹配结果保存至字段匹配结果表中,匹配失败的结果不存入字段匹配表中。在得到字段匹配结果表后,可以是查看字段匹配结果表中是否存在账单数据的数据唯一ID,若该字段匹配结果表包含有待核对数据的数据唯一ID,则判定与该数据唯一ID对应的待核对数据匹配成功,反之,则判定不存在于字段匹配结果表中的数据唯一ID对应的待核对数据匹配失败,以此方式得到待核对数据的数据核对结果。数据核对结果的输出字段包括数据状态(如核销状态)、相关联的数据核对规则以及数据核对类型等。对待核对数据进行数据核对,得到相应的数据核对结果。最后,针对各个数据源,创建一张相应的数据核对结果表,然后,将数据核对结果按照数据源写入至对应的数据核对结果表中。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的数据核对方法的数据核对装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个数据核对装置实施例中的具体限定可以参见上文中对于数据核对方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种数据核对装置,包括:数据获取模块510、数据解析模块520、数据处理模块530和数据核对模块540,其中:
数据获取模块510,用于获取数据核对规则配置信息。
数据解析模块520,用于识别数据核对规则配置信息的数据核对类型,并基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息。
数据处理模块530,用于针对业务线,根据数据核对任务流配置信息生成数据核对任务流,根据数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本。
数据核对模块540,用于当数据核对任务流运行至脚本执行任务时,执行数据核对规则执行脚本以进行数据核对。
上述数据核对装置,基于数据核对类型解析数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息,进而针对业务线,根据数据核对任务流配置信息生成与数据核对任务流,根据数据核对规则执行配置信息生成与数据核对规则执行脚本,然后,执行数据核对任务流,并执行数据核对规则执行脚本以进行数据核对。上述方案,通过可配置的数据核对任务流配置信息和数据核对规则执行配置信息,生成数据核对任务流和数据核对规则执行脚本,实现了数据核对任务流模板化和数据核对规则的模板化,且支持所有业务场景的数据核对规则,覆盖了所有业务及其场景,面对不同的业务场景,无需修改脚本,只需相应修改数据核对规则配置信息即可,如此,极大程度上提高了数据核对效率。
在其中一个实施例中,数据解析模块520还用于根据数据核对类型确定对应的数据核对任务流配置模板,根据数据核对任务流配置模板,确定任务流可配置变量,提取数据核对规则配置信息中与任务流可配置变量对应的目标任务流配置字段,将任务流可配置变量替换为目标任务流配置字段,得到数据核对任务流配置信息。
在其中一个实施例中,数据处理模块530还用于根据预设数据核对规则执行脚本模板,确定数据核对规则执行可配置变量,提取数据核对规则配置信息中与数据核对规则执行可配置变量对应的目标数据核对规则配置字段,将数据核对规则执行可配置变量替换为目标数据核对规则配置字段,得到数据核对规则执行脚本。
在其中一个实施例中,数据核对模块540还用于根据数据过滤条件从数据源抽取出待核对数据,按照数据核对规则执行优先级执行数据核对规则,对待核对数据进行数据核对,得到数据核对结果。
在其中一个实施例中,数据核对模块540还用于根据数据对比字段匹配待核对数据,得到字段匹配结果,字段匹配结果包括待核对数据的标识数据,根据数据对比字段匹配待核对数据,得到字段匹配结果,字段匹配结果包括待核对数据的标识数据,将字段匹配结果中的匹配成功结果数据存入预创建的字段匹配结果表,若待核对数据的标识数据存在于字段匹配结果表,则判定与待核对数据的标识数据对应的待核对数据核对成功,若待核对数据的标识数据不存在于字段匹配结果表,则判定与待核对数据的标识数据对应的待核对数据核对失败。
如图7所示,在其中一个实施例中,装置还包括数据存储模块550,用于针对待核对数据的数据源,创建对应的数据核对结果表,将数据核对结果按照数据源写入对应的数据核对结果表。
上述数据核对装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据核对规则配置信息以及数据核对结果等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据核对方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在其中一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述数据核对方法中的步骤。
在其中一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述数据核对方法中的步骤。
在其中一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述数据核对方法中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (10)

1.一种数据核对方法,其特征在于,所述方法包括:
获取数据核对规则配置信息,所述数据核对规则配置信息包括业务线;
识别所述数据核对规则配置信息的数据核对类型,并基于所述数据核对类型解析所述数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息;
针对所述业务线,根据所述数据核对任务流配置信息生成数据核对任务流,根据所述数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本;
当所述数据核对任务流运行至脚本执行任务时,执行所述数据核对规则执行脚本以进行数据核对。
2.根据权利要求1所述的数据核对方法,其特征在于,基于所述数据核对类型解析所述数据核对规则配置信息,得到数据核对任务流配置信息包括:
根据所述数据核对类型确定对应的数据核对任务流配置模板;
根据所述数据核对任务流配置模板,确定任务流可配置变量;
提取所述数据核对规则配置信息中与所述任务流可配置变量对应的目标任务流配置字段;
将所述任务流可配置变量替换为所述目标任务流配置字段,得到数据核对任务流配置信息。
3.根据权利要求1所述的数据核对方法,其特征在于,所述根据所述数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本包括:
根据所述预设数据核对规则执行脚本模板,确定数据核对规则执行可配置变量;
提取所述数据核对规则配置信息中与所述数据核对规则执行可配置变量对应的目标数据核对规则配置字段;
将所述数据核对规则执行可配置变量替换为所述目标数据核对规则配置字段,得到数据核对规则执行脚本。
4.根据权利要求1所述的数据核对方法,其特征在于,所述数据核对规则配置信息包括数据过滤条件、数据源、数据核对规则和数据核对规则执行优先级;
所述执行所述数据核对规则执行脚本以进行数据核对包括:
根据所述数据过滤条件从所述数据源抽取出待核对数据;
按照所述数据核对规则执行优先级执行所述数据核对规则,对所述待核对数据进行数据核对,得到数据核对结果。
5.根据权利要求4所述的数据核对方法,其特征在于,所述数据核对规则配置信息包括数据对比字段;
执行所述数据核对规则,对所述待核对数据进行数据核对,得到数据核对结果包括:
根据所述数据对比字段匹配所述待核对数据,得到字段匹配结果,所述字段匹配结果包括待核对数据的标识数据;
将所述字段匹配结果中的匹配成功结果数据存入预创建的字段匹配结果表;
若待核对数据的标识数据存在于所述字段匹配结果表,则判定与所述待核对数据的标识数据对应的待核对数据核对成功;
若待核对数据的标识数据不存在于所述字段匹配结果表,则判定与所述待核对数据的标识数据对应的待核对数据核对失败。
6.根据权利要求4或5所述的数据核对方法,其特征在于,所述得到数据核对结果之后,还包括:
针对所述待核对数据的数据源,创建对应的数据核对结果表;
将所述数据核对结果按照数据源写入对应的数据核对结果表。
7.一种数据核对装置,其特征在于,所述装置包括:
数据获取模块,用于获取数据核对规则配置信息,所述数据核对规则配置信息包括业务线;
数据解析模块,用于识别所述数据核对规则配置信息的数据核对类型,并基于所述数据核对类型解析所述数据核对规则配置信息,得到数据核对任务流配置信息和数据核对规则执行配置信息;
数据处理模块,用于针对所述业务线,根据所述数据核对任务流配置信息生成数据核对任务流,根据所述数据核对规则执行配置信息和预设数据核对规则执行脚本模板,生成数据核对规则执行脚本;
数据核对模块,用于当所述数据核对任务流运行至脚本执行任务时,执行所述数据核对规则执行脚本以进行数据核对。
8.根据权利要求7所述的数据核对装置,其特征在于,所述数据解析模块还用于根据所述数据核对类型确定对应的数据核对任务流配置模板,根据所述数据核对任务流配置模板,确定任务流可配置变量,提取所述数据核对规则配置信息中与所述任务流可配置变量对应的目标任务流配置字段,将所述任务流可配置变量替换为所述目标任务流配置字段,得到数据核对任务流配置信息。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202210230332.3A 2022-03-10 2022-03-10 数据核对方法、装置、计算机设备和存储介质 Active CN114416805B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210230332.3A CN114416805B (zh) 2022-03-10 2022-03-10 数据核对方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210230332.3A CN114416805B (zh) 2022-03-10 2022-03-10 数据核对方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN114416805A true CN114416805A (zh) 2022-04-29
CN114416805B CN114416805B (zh) 2022-08-02

Family

ID=81263986

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210230332.3A Active CN114416805B (zh) 2022-03-10 2022-03-10 数据核对方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN114416805B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110018819A (zh) * 2019-01-17 2019-07-16 阿里巴巴集团控股有限公司 一种数据核对脚本生成方法、装置及设备
CN112579571A (zh) * 2020-12-17 2021-03-30 招商局金融科技有限公司 监控数据配置、数据监控方法、装置、设备及存储介质
WO2021169169A1 (zh) * 2020-02-26 2021-09-02 深圳壹账通智能科技有限公司 资源转移数据核对方法、装置、计算机设备和存储介质
CN113591147A (zh) * 2021-07-30 2021-11-02 平安普惠企业管理有限公司 一种数据抽取的方法、装置、计算机设备及存储介质
CN114066587A (zh) * 2021-11-15 2022-02-18 平安证券股份有限公司 待交收数据对账方法、装置、设备及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110018819A (zh) * 2019-01-17 2019-07-16 阿里巴巴集团控股有限公司 一种数据核对脚本生成方法、装置及设备
WO2021169169A1 (zh) * 2020-02-26 2021-09-02 深圳壹账通智能科技有限公司 资源转移数据核对方法、装置、计算机设备和存储介质
CN112579571A (zh) * 2020-12-17 2021-03-30 招商局金融科技有限公司 监控数据配置、数据监控方法、装置、设备及存储介质
CN113591147A (zh) * 2021-07-30 2021-11-02 平安普惠企业管理有限公司 一种数据抽取的方法、装置、计算机设备及存储介质
CN114066587A (zh) * 2021-11-15 2022-02-18 平安证券股份有限公司 待交收数据对账方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN114416805B (zh) 2022-08-02

Similar Documents

Publication Publication Date Title
US10656979B2 (en) Structural and temporal semantics heterogeneous information network (HIN) for process trace clustering
CN109344170B (zh) 流数据处理方法、系统、电子设备及可读存储介质
US7523068B2 (en) Centralized payment processing system
US20200175403A1 (en) Systems and methods for expediting rule-based data processing
CN107862425B (zh) 风控数据采集方法、设备、系统及可读存储介质
CN112801777A (zh) 一种银行函证自动处理方法、系统、电子设备及存储介质
US20170163565A1 (en) System for analysis of resource usage and availability
CN117036062A (zh) 一种结算资源计算方法及装置
CN116737137A (zh) 业务流程的生成方法、装置、计算机设备和存储介质
CN114416805B (zh) 数据核对方法、装置、计算机设备和存储介质
CN114490415A (zh) 业务测试方法、计算机设备、存储介质和计算机程序产品
CN114371866A (zh) 业务系统的版本重构测试方法、装置和设备
CN111882294B (zh) 一种流程审批的方法和装置
US11995587B2 (en) Method and device for managing project by using data merging
US20220405665A1 (en) Method and device for managing project by using data merging
US20220405678A1 (en) Method and device for managing project by using data pointer
US20220405677A1 (en) Method and device for managing project by using cost payment time point setting
US20220405676A1 (en) Method and device for managing project by using data filtering
US20240095598A1 (en) Data processing methods and computer systems for wavelakes signal intelligence
CN113176874B (zh) 信息管理方法、装置、系统及介质
CN115629958A (zh) 一种针对不同业务接口的通用字段级自动校验方法和装置
CN115657901A (zh) 一种基于统一参数的业务变更方法及装置
US20230058933A1 (en) Systems and methods for preventing duplicate payments
CN113935842A (zh) 确定目标实体受益所有人的方法及装置
CN117312307A (zh) 业务数据处理方法、装置、计算机设备和存储介质

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