CN112053150A - 一种数据处理方法、装置及存储介质 - Google Patents

一种数据处理方法、装置及存储介质 Download PDF

Info

Publication number
CN112053150A
CN112053150A CN201910491892.2A CN201910491892A CN112053150A CN 112053150 A CN112053150 A CN 112053150A CN 201910491892 A CN201910491892 A CN 201910491892A CN 112053150 A CN112053150 A CN 112053150A
Authority
CN
China
Prior art keywords
charging
service
data
sub
message
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.)
Pending
Application number
CN201910491892.2A
Other languages
English (en)
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.)
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information 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 Beijing Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201910491892.2A priority Critical patent/CN112053150A/zh
Publication of CN112053150A publication Critical patent/CN112053150A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/14Payment architectures specially adapted for billing systems
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/083Shipping

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Economics (AREA)
  • Databases & Information Systems (AREA)
  • Accounting & Taxation (AREA)
  • Strategic Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Finance (AREA)
  • Development Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Operations Research (AREA)
  • Data Mining & Analysis (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种数据处理方法、装置及存储介质:大数据平台模块增量抽取每个业务***的业务主表和相关联的业务子表,并推送到计费数据库形成对应的计费主表和计费子表;监控模块监控计费数据库中计费主表对应的***类型的二进制日志,将所监控的二进制日志通过消息队列发送给转单模块;转单模块根据消息队列中的计费主表获取到业务主表ID,根据业务主表ID从计费数据库查找到与所述计费主表相关联的计费子表;将计费主表和相关联的计费子表的数据组成报文,发送含有数据报文内容的报文消息队列给自身;根据报文消息队列的内容将报文数据转为计费标准单。采用本发明在对上游不造成影响的情况下完成多个上游的数据对接,将业务***单据转单成计费***需要的计费标准单。

Description

一种数据处理方法、装置及存储介质
技术领域
本发明涉及数据处理技术领域,特别涉及一种数据处理方法、装置及存储介质。
背景技术
物流计费***需要使用统一的单据(计费标准单)进行各种类型的物流费用计算,但是物流费用产生在物流流程中的各个节点,想要计算出这些费用需要对接多种不同的业务***。而业务***的数据有不同的形态。在对接过程中需要保证尽量不耗费业务***的性能,也能适应上游业务的不断变化。现有技术,主要通过业务人员提取业务***数据手工导入数据到计费***中,需要不断核对,仍然无法避免数据错误,需要大量人工干预,才能保证计费正常。另外一种方式是计费***提供接口,让业务***通过接口调用,传递数据。
现有技术前台导入的方式,无法应对特殊的业务规则,无法保证数据的准确度,人工无法应对业务大量增长后产生的数据压力。
发明内容
本发明的目的在于提供一种数据处理方法及装置,为了解决在对上游不造成影响的情况下完成多个上游的数据对接,将业务***单据转单成计费***需要的计费标准单。
为实现上述发明目的,本发明提供了一种业务处理方法,该方法包括:
大数据平台模块增量抽取每个业务***的业务主表和相关联的业务子表,并推送到计费数据库形成对应的计费主表和计费子表;
监控模块监控计费数据库中计费主表对应的***类型的二进制日志,将所监控的二进制日志通过消息队列发送给转单模块;
转单模块根据消息队列中的计费主表获取到业务主表ID,根据业务主表ID从计费数据库查找到与所述计费主表相关联的计费子表;将计费主表和相关联的计费子表的数据组成报文,发送含有数据报文内容的报文消息队列给自身;根据报文消息队列的内容将报文数据转为计费标准单。
为实现上述发明目的,本发明还提供了一种数据处理装置,该装置应用于计费***,该***包括:
大数据平台模块,增量抽取每个业务***的业务主表和相关联的业务子表,并推送到计费数据库形成对应的计费主表和计费子表;
监控模块,监控计费数据库中计费主表对应的***类型的二进制日志,将所监控的二进制日志通过消息队列发送给转单模块;
转单模块,根据消息队列中的计费主表获取到业务主表ID,根据业务主表ID从计费数据库查找到与所述计费主表相关联的计费子表;将计费主表和相关联的计费子表的数据组成报文,发送含有数据报文内容的报文消息队列给自身;根据报文消息队列的内容将报文数据转为计费标准单。
综上所述,本发明提供的数据处理方法及装置,与多个业务***对接,大数据平台模块增量抽取每个业务***的业务主表和相关联的业务子表,并推送到计费数据库形成对应的计费主表和计费子表;监控模块监控计费数据库中计费主表对应的***类型的二进制日志,将所监控的二进制日志通过消息队列(MQ)发送给转单模块;转单模块根据MQ中的计费主表获取到业务主表ID,根据业务主表ID从计费数据库查找到与所述计费主表相关联的计费子表;将计费主表和相关联的计费子表的数据组成报文,发送含有数据报文内容的报文MQ给自身;根据报文MQ的内容将报文数据转为计费标准单。通过本发明的方案,与现有技术相比,保证了数据的准确度,能够应对业务大量增长后产生的数据压力。
附图说明
图1为本发明数据处理装置的结构示意图。
图2为本发明数据处理方法的流程示意图。
图3为本发明实施例一种电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
本发明中大数据平台模块,采取从业务***数据库增量抽取的方式,增量抽取只抽取自上次抽取以来数据库中要抽取的表中新增或修改的数据。增量抽取比全量抽取应用更广。如何捕获变化的数据是增量抽取的关键。对捕获方法一般有两点要求:准确性,能够将业务***中的变化数据按一定的频率准确地捕获到;性能,不能对业务***造成太大的压力,影响现有业务。目前,增量数据抽取中常用的捕获变化数据的方法有:A、触发器,在要抽取的表上建立需要的触发器,一般要建立***、修改、删除三个触发器,每当源表中的数据发生变化,就被相应的触发器将变化的数据写入一个临时表,抽取线程从临时表中抽取数据,临时表中抽取过的数据被标记或删除。触发器方式的优点是数据抽取的性能较高,缺点是要求业务表建立触发器,对业务***有一定的影响。B、时间戳:他是一种基于快照比较的变化数据捕获方式,在源表上增加一个时间戳字段,***上更新修改表数据的时候,同时修改时间戳字段的值。当进行数据抽取时,通过比较***时间与时间戳字段的值来决定抽取哪些数据。有的数据库的时间戳支持自动更新,即表的其他字段的数据发生改变时,自动更新时间戳字段的值。还有其他捕获方式如C、全表比对方式,D、日志比对方式。
本发明中,大数据平台模块将增量抽取的数据推送到计费数据库,对计费数据库进行的操作都是***操作,计费数据库开启binlog日志,binlog日志是一种数据库操作日志,记录了对计费数据库的更改操作,例如:创建数据库或表(create)、***操作(insert)、更新操作(update)、删除操作(delete)等操作类型。监控模块只监控计费数据库中insert类型的binlog,当发生计费主表***操作的时候,发送binlog转换成的MQ给转单模块。转单模块进行计费数据库查询,将计费主表与计费子表相关联组成报文,发送含有数据报文内容的报文MQ给自身;根据报文MQ的内容将报文数据转为计费标准单。
本发明数据处理装置的结构示意图如图1所示,该装置应用于计费***,该***包括:
大数据平台模块101,增量抽取每个业务***的业务主表和相关联的业务子表,并推送到计费数据库104形成对应的计费主表和计费子表;
监控模块102,监控计费数据库中计费主表对应的***类型的二进制日志,将所监控的二进制日志通过消息队列(MQ)发送给转单模块;
转单模块103,根据MQ中的计费主表获取到业务主表ID,根据业务主表ID从计费数据库查找到与所述计费主表相关联的计费子表;将计费主表和相关联的计费子表的数据组成报文,发送含有数据报文内容的报文MQ给自身;根据报文MQ的内容将报文数据转为计费标准单。本发明转单模块将监控模块发送的MQ分为两部分,进行异步处理,一部分只做报文拼接组装,通过报文MQ进行转单,能够保证监控模块产生的MQ被快速消费,在入口的位置不造成积压,快速分流到下一个MQ再异步进行后续复杂逻辑处理。
其中,所述计费数据库的计费主表和计费子表还包括,用于记录数据表被推送***到计费数据库时间的推送时间字段(input date);用于记录数据表***时,以及被处理完成时的计费***时间戳字段(sys_ts);包括初始和已处理两种状态的计费***处理状态字段(sys_opt_status)。
转单模块103,还用于在查找到与所述计费主表相关联的计费子表之后,将计费主表和相关联的计费子表的ID构成的ID集合通过状态变更MQ给自身;根据状态变更MQ的内容更新计费数据库计费主表和计费子表中的计费***时间戳字段和计费***处理状态字段。
所述转单模块103,还用于将计费标准单发送给标准单数据库105进行保存。
优选地,
所述转单模块103,还用于在外部接口调不通,或在查找计费数据库失败时,将从监控模块接收的MQ通过重试(retry)通道发送给自身,以在网络恢复时进行重新转单。
所述转单模块103,还用于在接收到监控模块发送的MQ时,或者在自身收到含有数据报文内容的报文MQ时,根据计费***业务校验规则,在查找到缺少计费必要的字段时,将含有数据报文内容的报文写入业务异常表。
所述转单模块103,还用于在收到含有数据报文内容的报文MQ后,在确定业务单号、业务***来源,单据类型,以及交易类型与之前的计费标准单内容相同时,进一步根据计费状态确定是否将含有数据报文内容的报文写入重复异常表。
基于相同的发明构思,本发明还提供了一种数据处理方法,如图2所示,该方法包括:
步骤21、大数据平台模块增量抽取每个业务***的业务主表和相关联的业务子表,并推送到计费数据库形成对应的计费主表和计费子表。推送时间的选择可以选为每天在固定时间推送一次,目前采用错峰的方式,以减少对数据库的压力,即不同类型的单据在不同的时间推送过来。
业务***的业务主表包括业务主表ID,该业务主表ID对应的数据在业务***创建时间(create time),该业务主表ID对应的数据在业务***更新时间(update time),该业务主表ID对应的业务单号,客户编码,计费字段,计费字段如体积、重量、始发地、目的地等;业务***的业务子表包括与每个业务主表ID相关联的多个业务子表ID,每个业务子表ID对应的数据在业务***创建时间(create time),每个业务子表ID对应的数据在业务***更新时间(update time),每个业务子表ID对应的数据的计费状态。
在将增量抽取的每个业务***的业务主表和相关联的业务子表推送到计费数据库时,计费数据库的计费主表对应业务主表,计费子表对应业务子表。计费主表中保留了业务主表的字段数据,将该条数据对应一个计费主表ID,并关联业务主表ID,保留字段有业务单号,客户编码,计费字段,create time,update time等,另外增加字段有用于记录数据表被推送***到计费数据库时间的推送时间字段(input date);用于记录数据表***时,以及被处理完成时的计费***时间戳字段(sys_ts);包括初始和已处理两种状态的计费***处理状态字段(sys_opt_status)。
业务子表的每条数据并不是全部推送到计费子表中的,需要根据业务子表ID对应的每条数据的计费状态确定是否将该条数据推送到计费数据库的计费子表,推送到计费子表的一条数据,保留了业务子表该条数据的字段数据,将该条数据对应一个计费子表ID,该计费子表ID与业务子表ID一一对应,并关联业务主表ID,保留字段有计费状态,createtime,update time等。另外也增加了input date字段、sys_ts字段和sys_opt_status字段。
步骤22、监控模块监控计费数据库中计费主表对应的***类型的二进制日志,将所监控的二进制日志通过消息队列(MQ)发送给转单模块;
本步骤中,监控计费数据库中计费主表对应的***类型的二进制日志包括:配置要监控的计费数据库名称,以及计费主表名,并配置只监控***类型的二进制日志;根据配置监控计费数据库计费主表名对应的***类型的二进制日志。需要说明的是,本发明中计费数据库开启binlog日志,记录了对计费数据库的各种更改操作,但监控模块只监控insert类型的binlog日志。
消息队列(MQ)是一种应用程序对应用程序的通信方法。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。MQ具有高可用、高性能,无须担心调用失败或者处理超时等问题。
步骤23、转单模块根据MQ中的计费主表获取到业务主表ID,根据业务主表ID从计费数据库查找到与所述计费主表相关联的计费子表;将计费主表和相关联的计费子表的数据组成报文,发送含有数据报文内容的报文MQ给自身;根据报文MQ的内容将报文数据转为计费标准单。
本步骤中,根据报文MQ的内容将报文数据转为计费标准单包括:根据计费主表名确定计费标准单上的业务***来源,单据类型,以及交易类型,并写入计费标准单;将报文MQ中的业务单号、客户编码、计费状态、计费日期、计费字段写入计费标准单。
至此,完成了本发明的数据处理方法。
进一步地,在执行完步骤23后,转单模块将计费标准单发送给标准单数据库进行保存。
进一步地,在查找到与所述计费主表相关联的计费子表之后,该方法还包括:将计费主表和相关联的计费子表的ID构成的ID集合通过状态变更MQ给自身;根据状态变更MQ的内容更新计费数据库计费主表和计费子表中的计费***时间戳字段和计费***处理状态字段。具体地,在数据表***到计费数据库时,sys_ts字段与input date字段的值相同,字段值都是数据表***到计费数据库的时间,sys_opt_status字段值为初始。当转单模块接收到状态变更MQ时,表示转单成功,数据表已完成处理,此时,将计费数据库中的sys_ts字段更新为数据表完成处理的当前时间,将sys_opt_status字段的值更新为已处理。
本发明主要解决的问题是,是为了解决在对上游不造成影响的情况下完成多个上游的数据对接,将业务***单据转单成计费***需要的标准单据(标准单)。并通过数据业务校验,防重校验等业务规则,保证计费***需要计费的单据的数量和业务发生量都是准确的。并且在上游变化的时候,也能快速适应,快速变化。因此,本发明的异常数据同样通过MQ发送的方式异步处理。
第一种情况:转单模块在外部接口调不通,或在查找计费数据库失败时,将从监控模块接收的MQ通过重试(retry)通道发送给自身,以在网络恢复时进行重新转单。
第二种情况:转单模块在接收到监控模块发送的MQ时,或者在自身收到含有数据报文内容的报文MQ时,根据计费***业务校验规则,在查找到缺少计费必要的字段时,将含有数据报文内容的报文写入业务异常表。
第三种情况:转单模块在收到含有数据报文内容的报文MQ后,在确定业务单号、业务***来源,单据类型,以及交易类型与之前的计费标准单内容相同时,进一步根据计费状态确定是否将含有数据报文内容的报文写入重复异常表。
为清楚说明本发明,下面列举具体场景进行说明。
实施例一
1、大数据平台模块,增量抽取每个业务***的业务主表和相关联的业务子表。本实施例中所抽取的主表是小件纯配订单表,子表是状态流水表。
每天定时所抽取的业务***中业务主表名为lwb_main,业务主表中数据的示意如表1所示:
Figure BDA0002087305160000081
表1
业务子表lwb_status中有与业务主表ID140757507214515相关联的4条数据,业务子表中数据的示意如表2所示
Figure BDA0002087305160000082
表2
2、大数据平台模块,根据规则将表1和表2数据推送到计费数据库形成对应的计费主表和计费子表。
表1推送到计费***中,计费主表名为bi_lwb_main,计费主表中数据的示意如表3所示:
Figure BDA0002087305160000091
表3
表2中4条数据需要根据计费状态字段判断是否推送到计费***计费数据库中,根据业务规则,第4条数据中,计费状态字段值为1000表示妥投,需要将该条数据推送到计费数据库中,计费子表名为bi_lwb_status,计费子表中数据的示意如表4所示:
Figure BDA0002087305160000092
表4
3、监控模块
1)配置要监控的计费数据库的名称lbs_data,计费主表名bi_lwb_main,并配置监控binlog日志的类型为insert类型;
2)监控计费数据库lbs_data计费主表名bi_lwb_main对应的insert类型的binlog日志;
3)将监控到的binlog日志通过java程序拼接成json字符串或封装成java对象通过MQ发送给转单模块。
4、转单模块
1)根据MQ中的计费主表获取到业务主表ID140757507214515,由于计费主表bi_lwb_main与计费子表bi_lwb_status相关联,且bi_lwb_main和bi_lwb_status之间通过业务主表ID140757507214515相关联,所以根据业务主表ID140757507214515从计费数据库查找到与计费主表bi_lwb_main相关联的计费子表bi_lwb_status。
2)将计费主表bi_lwb_main和相关联的计费子表bi_lwb_status的数据组成报文,发送含有数据报文内容的报文MQ给自身;根据报文MQ的内容将报文数据转为计费标准单。
报文MQ的主题(topic)是lbs_data_send_bilwb,同一计费数据库中,不同的计费主表名对应不同的topic,处理逻辑不同。
根据计费主表bi_lwb_main,确定计费标准单上的业务***来源为ECLP沧海***,单据类型为小件纯配订单,交易类型为小件纯配普通。
将报文MQ中的业务单号(ECO140757507214515)、客户编码(EBU44180465480142019011401)、计费状态(妥投)、计费日期也就是计费子表中的createtime字段值(2019-01-15)、计费字段包括体积、重量等,写入计费标准单。计费标准单示意如表5所示:
Figure BDA0002087305160000101
表5
状态变更MQ的topic是lbs_data_update_bilwb,在转为计费标准单时,优选地,本发明实施例中还将计费主表ID13402170和计费子表ID13993313构成的ID集合通过状态变更MQ给自身;根据状态变更MQ的内容更新计费数据库计费主表和计费子表中的计费***时间戳字段和计费***处理状态字段。
再例如,在另外一种实施例中,业务主表名为so_main,计费主表名为bi_so_main。同一计费数据库中,不同的计费主表名对应不同的topic,报文MQ的topic是lbs_data_send_biso,状态变更MQ的topic是lbs_data_update_biso。根据计费主表bi_so_main可以确定计费标准单上的业务***来源是ECLP沧海***,单据类型是销售订单,交易类型是普通销售订单。进一步地,如果交易类型分为多种,则业务主表名与交易类型种类一一对应,进而计费主表名与交易类型一一对应,由于不同的计费主表名对应不同的topic,因此仍然通过计费主表名确定交易类型,单据类型和业务***来源。
实施例二
本发明的数据处理方案还可以在数据发生异常如丢失、错误的时候,可重推数据,还可以在计费标准单重复的时候,起到防重的目的。
第一种情况,转单模块需要调用外部接口,根据返回的值区分交易类型时,如果网络超时,则会出现外表接口调不通的情况;或者,在查找计费数据库获取与计费主表相关联的计费子表时,都有可能出现网络超时的情况,这时,将从监控模块接收的MQ通过重试(retry)通道发送给自身,以在网络恢复时可以进行重新转单。
第二种情况,转单模块在接收到监控模块发送的MQ时,或者在自身收到含有数据报文内容的报文MQ时,根据计费***业务校验规则,假设查找到计费字段的重量字段值为空时,则认为业务异常,不能转为计费标准单,因此,将含有数据报文内容的报文写入业务异常表。本实施例中业务异常表如表6所示:
Figure BDA0002087305160000121
表6
第三种情况,转单模块在收到含有数据报文内容的报文MQ后,在确定业务单号、业务***来源,单据类型,以及交易类型与之前的计费标准单内容相同时,需要进一步对计费状态进行判断,假设之前的计费标准单计费状态为妥投,而当前计费标准单的计费状态为拒收,妥投和拒收是无法共存的两个计费状态,因此可以确定,当前计费标准单是重复的,需要写入重复异常表。本实施例中重复异常表如表7所示:
Figure BDA0002087305160000122
表7
需要说明的是,表1至表7只是具体实施例中的一个示意,表中显示了必要字段,针对具体应用会显示不同的字段。
上述实施例的模块可以集成于一体,也可以分离部署;可以合并为一个模块,也可以进一步拆分成多个子模块。
另外,本申请实施例中还提供一种电子设备,结构示意图如图3所示,包括存储器301、处理器302及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述序列数据的目标定位方法的步骤。
此外,本申请实施例中还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现所述序列数据的目标定位方法的步骤。
本发明的数据处理方法及装置,会带来如下好处:
一、监听binlog日志只需要监听计费主表的***:因为一个单据的主要信息在计费主表上,并且是由计费主表关联到计费子表,所以监听计费主表信息已保证数据的完整性,并且相当比与全量监听insert产生binlog,可以减少MQ的数量,节省资源,减轻***压力。
二、转单模块将监控模块发送的MQ分为两部分,进行异步处理,一部分只做报文拼接组装,通过报文MQ进行转单;一部分通过状态变更MQ修改状态。相比于转单模块将监控模块发送的MQ直接进行报文组装、修改状态、转单,能够保证监控模块产生的MQ被快速消费,在入口的位置不造成积压,快速分流到下一个MQ再异步进行后续复杂逻辑处理。
三、大数据平台模块是将单子在每天固定的时间点推送到计费***的计费数据库中,这段较短时间产生了大量的binlong,随之产生较多的MQ。但是由于计费***的MQ线程是固定的,所以MQ每次能处理的消息数量也是固定的,所以计费***可以通过MQ的缓存来控制压力,只可能会造成短时间的MQ积压。
四、异常数据同样通过MQ发送的方式异步处理,通过调度框架如(clover),可后续重新处理这些数据。
五、Binlog日志的监听使得不需要与上游业务***直接交互,即可完成与业务***的对接。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (13)

1.一种数据处理方法,其特征在于,该方法包括:
大数据平台模块增量抽取每个业务***的业务主表和相关联的业务子表,并推送到计费数据库形成对应的计费主表和计费子表;
监控模块监控计费数据库中计费主表对应的***类型的二进制日志,将所监控的二进制日志通过消息队列发送给转单模块;
转单模块根据消息队列中的计费主表获取到业务主表ID,根据业务主表ID从计费数据库查找到与所述计费主表相关联的计费子表;将计费主表和相关联的计费子表的数据组成报文,发送含有数据报文内容的报文消息队列给自身;根据报文消息队列的内容将报文数据转为计费标准单。
2.如权利要求1所述的方法,其特征在于,所述计费数据库的计费主表和计费子表还包括,用于记录数据表被推送***到计费数据库时间的推送时间字段;用于记录数据表***时,以及被处理完成时的计费***时间戳字段;包括初始和已处理两种状态的计费***处理状态字段;
在查找到与所述计费主表相关联的计费子表之后,该方法还包括:
将计费主表和相关联的计费子表的ID构成的ID集合通过状态变更消息队列给自身;根据状态变更消息队列的内容更新计费数据库计费主表和计费子表中的计费***时间戳字段和计费***处理状态字段。
3.如权利要求1所述的方法,其特征在于,该方法进一步包括:将计费标准单发送给标准单数据库进行保存。
4.如权利要求1所述的方法,其特征在于,所述业务***的业务主表包括业务主表ID,该业务主表ID对应的数据在业务***创建时间,该业务主表ID对应的数据在业务***更新时间,该业务主表ID对应的业务单号,客户编码,计费字段;所述业务***的业务子表包括与每个业务主表ID相关联的多个业务子表ID,每个业务子表ID对应的数据在业务***创建时间,每个业务子表ID对应的数据在业务***更新时间,每个业务子表ID对应的数据的计费状态。
5.如权利要求4所述的方法,其特征在于,所述推送到计费数据库形成对应的计费子表包括:
根据业务子表ID对应的每条数据的计费状态确定是否将该条数据推送到计费数据库的计费子表;
在推送到计费数据库的计费子表时,将该条数据对应一个计费子表ID,该计费子表ID与业务子表ID一一对应,并关联业务主表ID。
6.如权利要求1所述的方法,其特征在于,所述监控计费数据库中计费主表对应的***类型的二进制日志包括:
配置要监控的计费数据库名称,以及计费主表名,并配置只监控***类型的二进制日志;
根据配置监控计费数据库计费主表名对应的***类型的二进制日志。
7.如权利要求5所述的方法,其特征在于,根据报文消息队列的内容将报文数据转为计费标准单包括:
根据计费主表名确定计费标准单上的业务***来源,单据类型,以及交易类型,并写入计费标准单;
将报文消息队列中的业务单号、客户编码、计费状态、计费日期、计费字段写入计费标准单。
8.如权利要求1所述的方法,其特征在于,转单模块在外部接口调不通,或在查找计费数据库失败时,将从监控模块接收的消息队列通过重试通道发送给自身,以在网络恢复时进行重新转单。
9.如权利要求1所述的方法,其特征在于,转单模块在接收到监控模块发送的消息队列时,或者在自身收到含有数据报文内容的报文消息队列时,根据计费***业务校验规则,在查找到缺少计费必要的字段时,将含有数据报文内容的报文写入业务异常表。
10.如权利要求1所述的方法,其特征在于,转单模块在收到含有数据报文内容的报文消息队列后,在确定业务单号、业务***来源,单据类型,以及交易类型与之前的计费标准单内容相同时,进一步根据计费状态确定是否将含有数据报文内容的报文写入重复异常表。
11.一种数据处理装置,其特征在于,该装置应用于计费***,该***包括:
大数据平台模块,增量抽取每个业务***的业务主表和相关联的业务子表,并推送到计费数据库形成对应的计费主表和计费子表;
监控模块,监控计费数据库中计费主表对应的***类型的二进制日志,将所监控的二进制日志通过消息队列发送给转单模块;
转单模块,根据消息队列中的计费主表获取到业务主表ID,根据业务主表ID从计费数据库查找到与所述计费主表相关联的计费子表;将计费主表和相关联的计费子表的数据组成报文,发送含有数据报文内容的报文消息队列给自身;根据报文消息队列的内容将报文数据转为计费标准单。
12.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1~10任一项所述的方法。
13.一种计算机可读介质,其上存储有计算机程序,其中,所述程序被处理器执行时实现如权利要求1~10中任一项所述的方法。
CN201910491892.2A 2019-06-06 2019-06-06 一种数据处理方法、装置及存储介质 Pending CN112053150A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910491892.2A CN112053150A (zh) 2019-06-06 2019-06-06 一种数据处理方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910491892.2A CN112053150A (zh) 2019-06-06 2019-06-06 一种数据处理方法、装置及存储介质

Publications (1)

Publication Number Publication Date
CN112053150A true CN112053150A (zh) 2020-12-08

Family

ID=73608992

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910491892.2A Pending CN112053150A (zh) 2019-06-06 2019-06-06 一种数据处理方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN112053150A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116582462A (zh) * 2023-07-14 2023-08-11 浪潮通信信息***有限公司 融合业务监控方法及装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116582462A (zh) * 2023-07-14 2023-08-11 浪潮通信信息***有限公司 融合业务监控方法及装置
CN116582462B (zh) * 2023-07-14 2023-09-22 浪潮通信信息***有限公司 融合业务监控方法及装置

Similar Documents

Publication Publication Date Title
CN109542865B (zh) 分布式集群***配置文件同步方法、装置、***及介质
CN108228814B (zh) 数据同步方法及装置
CN109829011B (zh) 一种分布式异构数据库的数据同步方法及装置
CN104092717B (zh) 消息处理方法及***、消息目的端设备
CN108076098A (zh) 一种业务处理方法及***
CN110019312B (zh) 读写数据分离调度方法、装置、设备及介质
CN109995643B (zh) 业务邮件推送方法及装置
US20230004576A1 (en) Data synchronization method and device for databases, and storage medium
CN106599061A (zh) 基于SQLite的嵌入式数据库同步方法
CN110650164B (zh) 文件的上传方法、装置、终端以及计算机存储介质
CN113127564B (zh) 一种参数同步方法和装置
CN107870982A (zh) 数据处理方法、***和计算机可读存储介质
CN102467520A (zh) 一种数据存储方法和装置
CN114595288A (zh) 一种基于sql命令级的多idc分布式***数据同步方法
CN112053150A (zh) 一种数据处理方法、装置及存储介质
CN109614442B (zh) 数据同步的数据表维护方法、装置、存储介质和电子设备
CN105450733A (zh) 一种业务数据分发处理方法及***
CN114564458B (zh) 集群间数据同步的方法、装置、设备和存储介质
CN105204776A (zh) 数据处理方法及装置
CN111506668B (zh) 机器人集群智能化数据同步方法及***
CN104834724A (zh) 一种数据库同步方法和装置
CN114625578A (zh) 数据处理方法、装置、电子设备及计算机可读存储介质
CN111045953A (zh) 一种基于分布式的测试用例执行***及方法
CN104809033A (zh) 一种备份方法及***
CN113051152B (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