CN113778959A - 数据处理的方法、装置、设备和计算机可读介质 - Google Patents
数据处理的方法、装置、设备和计算机可读介质 Download PDFInfo
- Publication number
- CN113778959A CN113778959A CN202011325604.5A CN202011325604A CN113778959A CN 113778959 A CN113778959 A CN 113778959A CN 202011325604 A CN202011325604 A CN 202011325604A CN 113778959 A CN113778959 A CN 113778959A
- Authority
- CN
- China
- Prior art keywords
- data
- log file
- log
- monitoring
- basic information
- 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
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 11
- 238000000605 extraction Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 9
- 230000001502 supplementation Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 22
- 238000000034 method Methods 0.000 description 15
- 238000004364 calculation method Methods 0.000 description 9
- 239000000203 mixture Substances 0.000 description 9
- 238000004891 communication Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 4
- 238000006011 modification reaction Methods 0.000 description 4
- 230000003287 optical Effects 0.000 description 4
- 230000000875 corresponding Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000011030 bottleneck Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000011010 flushing procedure Methods 0.000 description 2
- 230000000644 propagated Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001360 synchronised Effects 0.000 description 2
- 238000004642 transportation engineering Methods 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0naXNvLTg4NTktMSc/Pgo8c3ZnIHZlcnNpb249JzEuMScgYmFzZVByb2ZpbGU9J2Z1bGwnCiAgICAgICAgICAgICAgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJwogICAgICAgICAgICAgICAgICAgICAgeG1sbnM6cmRraXQ9J2h0dHA6Ly93d3cucmRraXQub3JnL3htbCcKICAgICAgICAgICAgICAgICAgICAgIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJwogICAgICAgICAgICAgICAgICB4bWw6c3BhY2U9J3ByZXNlcnZlJwp3aWR0aD0nMzAwcHgnIGhlaWdodD0nMzAwcHgnIHZpZXdCb3g9JzAgMCAzMDAgMzAwJz4KPCEtLSBFTkQgT0YgSEVBREVSIC0tPgo8cmVjdCBzdHlsZT0nb3BhY2l0eToxLjA7ZmlsbDojRkZGRkZGO3N0cm9rZTpub25lJyB3aWR0aD0nMzAwLjAnIGhlaWdodD0nMzAwLjAnIHg9JzAuMCcgeT0nMC4wJz4gPC9yZWN0Pgo8dGV4dCB4PScxMDAuNScgeT0nMTcwLjAnIGNsYXNzPSdhdG9tLTAnIHN0eWxlPSdmb250LXNpemU6NDBweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjt0ZXh0LWFuY2hvcjpzdGFydDtmaWxsOiNFODQyMzUnID5IPC90ZXh0Pgo8dGV4dCB4PScxMjYuMScgeT0nMTg2LjAnIGNsYXNzPSdhdG9tLTAnIHN0eWxlPSdmb250LXNpemU6MjZweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjt0ZXh0LWFuY2hvcjpzdGFydDtmaWxsOiNFODQyMzUnID4yPC90ZXh0Pgo8dGV4dCB4PScxMzguMCcgeT0nMTcwLjAnIGNsYXNzPSdhdG9tLTAnIHN0eWxlPSdmb250LXNpemU6NDBweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjt0ZXh0LWFuY2hvcjpzdGFydDtmaWxsOiNFODQyMzUnID5PPC90ZXh0Pgo8L3N2Zz4K data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0naXNvLTg4NTktMSc/Pgo8c3ZnIHZlcnNpb249JzEuMScgYmFzZVByb2ZpbGU9J2Z1bGwnCiAgICAgICAgICAgICAgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJwogICAgICAgICAgICAgICAgICAgICAgeG1sbnM6cmRraXQ9J2h0dHA6Ly93d3cucmRraXQub3JnL3htbCcKICAgICAgICAgICAgICAgICAgICAgIHhtbG5zOnhsaW5rPSdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJwogICAgICAgICAgICAgICAgICB4bWw6c3BhY2U9J3ByZXNlcnZlJwp3aWR0aD0nODVweCcgaGVpZ2h0PSc4NXB4JyB2aWV3Qm94PScwIDAgODUgODUnPgo8IS0tIEVORCBPRiBIRUFERVIgLS0+CjxyZWN0IHN0eWxlPSdvcGFjaXR5OjEuMDtmaWxsOiNGRkZGRkY7c3Ryb2tlOm5vbmUnIHdpZHRoPSc4NS4wJyBoZWlnaHQ9Jzg1LjAnIHg9JzAuMCcgeT0nMC4wJz4gPC9yZWN0Pgo8dGV4dCB4PScxMy4zJyB5PSc1My42JyBjbGFzcz0nYXRvbS0wJyBzdHlsZT0nZm9udC1zaXplOjIzcHg7Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2ZpbGwtb3BhY2l0eToxO3N0cm9rZTpub25lO2ZvbnQtZmFtaWx5OnNhbnMtc2VyaWY7dGV4dC1hbmNob3I6c3RhcnQ7ZmlsbDojRTg0MjM1JyA+SDwvdGV4dD4KPHRleHQgeD0nMjguMicgeT0nNjIuOScgY2xhc3M9J2F0b20tMCcgc3R5bGU9J2ZvbnQtc2l6ZToxNXB4O2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0Om5vcm1hbDtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtmb250LWZhbWlseTpzYW5zLXNlcmlmO3RleHQtYW5jaG9yOnN0YXJ0O2ZpbGw6I0U4NDIzNScgPjI8L3RleHQ+Cjx0ZXh0IHg9JzM1LjAnIHk9JzUzLjYnIGNsYXNzPSdhdG9tLTAnIHN0eWxlPSdmb250LXNpemU6MjNweDtmb250LXN0eWxlOm5vcm1hbDtmb250LXdlaWdodDpub3JtYWw7ZmlsbC1vcGFjaXR5OjE7c3Ryb2tlOm5vbmU7Zm9udC1mYW1pbHk6c2Fucy1zZXJpZjt0ZXh0LWFuY2hvcjpzdGFydDtmaWxsOiNFODQyMzUnID5PPC90ZXh0Pgo8L3N2Zz4K O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 210000003666 Nerve Fibers, Myelinated Anatomy 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 230000003111 delayed Effects 0.000 description 1
- 239000003365 glass fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING; COUNTING
- G06Q—DATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/12—Accounting
- G06Q40/125—Finance or payroll
Abstract
本发明公开了数据处理的方法、装置、设备和计算机可读介质,涉及计算机技术领域。该方法的一具体实施方式包括:通过生成业务数据时的日志文件,监听生成所述业务数据时的消息;根据所述日志文件中的标识,调用数据基础信息补全所述日志文件得到日志数据,并将所述日志数据写入数据池;实时抽取所述数据池中的数据,并推送抽取的数据。该实施方式能够减少数据延迟。
Description
技术领域 本发明涉及计算机技术领域,尤其涉及一种数据处理的方法、装置、设备和计算机可读介质。 背景技术 目前,财务入账方案集成大多采用电子商务软件。电子商务软件的实施是依据统一待集成的数据池。在海量数据场景下,上述数据池中数据来源包括以下两种。 一种是基于统一业务数据对接。另一种基于大数据平台统一抽取业务数据,然后对接到电子商务软件中。 在实现本发明过程中,发明人发现现有技术中至少存在如下问题:由于业务数据的数据量巨大,大数据平台通过时间延迟的方式抽取业务数据,存在数据延迟较大的技术问题。 发明内容 有鉴于此,本发明实施例提供一种数据处理的方法、装置、设备和计算机可读介质,能够减少数据延迟。 为实现上述目的,根据本发明实施例的一个方面,提供了一种数据处理的方法,包括: 通过生成业务数据时的日志文件,监听生成所述业务数据时的消息; 根据所述日志文件中的标识,调用数据基础信息补全所述日志文件得到日志数据,并将所述日志数据写入数据池; 实时抽取所述数据池中的数据,并推送抽取的数据。 所述通过生成业务数据时的日志文件,监听生成所述业务数据时的消息,包括: 采用预设方式获取生成业务数据时的日志文件,监听生成所述业务数据时的消息。 所述业务数据通过生成业务数据时的日志文件,包括: 获取生成所述业务数据时的日志文件失败的情况下,则存储生成所述业务数据时的信息; 解析生成所述业务数据时的信息,得到生成所述业务数据时的日志文件; 所述根据所述日志文件中的标识,调用数据基础信息补全所述日志文件得到日志数据,包括: 根据所述日志文件中的标识,调用所述数据基础信息失败,则存储调用所述数据基础信息的数据; 解析所述调用所述数据基础信息的数据,得到所述数据基础信息以补全所述日志文件得到日志数据。 所述调用数据基础信息补全所述日志文件得到日志数据,包括: 调用所述数据基础信息失败,则在预设时间段后再次调用所述数据基础信息成功; 利用再次调用得到的数据基础信息补全所述日志文件得到日志数据 所述方法还包括: 通过比较两个或三个监控表,监控所述数据处理,所述监控表包括第一数据监控表、第二数据监控表和第三数据监控表, 所述第一数据监控表是根据所述日志文件获取的,所述第二数据监控表是根据所述数据池中的数据获取的,所述第三数据监控表是根据所述实时抽取数据获取的。 所述根据所述日志文件中的标识,调用数据基础信息补全所述日志文件得到日志数据,包括: 根据数据表的日志文件,更新缓存中的数据; 根据所述日志文件中的标识,在所述缓存中调用数据基础信息补全所述日志文件得到日志数据。 所述将所述日志数据写入数据池之后,还包括: 将外部数据通过接口直接写入所述数据池中。 根据本发明实施例的第二方面,提供了一种数据处理的装置,包括: 监听模块,用于通过生成业务数据时的日志文件,监听生成所述业务数据时的消息; 补全模块,用于根据所述日志文件中的标识,调用数据基础信息补全所述日志文件得到日志数据,并将所述日志数据写入数据池; 抽取模块,用于实时抽取所述数据池中的数据,并推送抽取的数据。 根据本发明实施例的第三方面,提供了一种数据处理的电子设备,包括: 一个或多个处理器; 存储装置,用于存储一个或多个程序, 当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的方法。 根据本发明实施例的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述的方法。 上述发明中的一个实施例具有如下优点或有益效果:通过生成业务数据时的日志文件,监听生成业务数据时的消息;根据日志文件中的标识,调用数据基础信息补全日志文件得到日志数据,并将日志数据写入数据池;实时抽取数据池中的数据,并推送抽取的数据。在生成业务数据的同时,通过监听生成业务数据时的消息异步处理数据,进而可以在数据池中实时抽取数据,进而减少数据延迟。 上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。 附图说明 附图用于更好地理解本发明,不构成对本发明的不当限定。其中: 图1是根据本发明实施例的数据处理的方法的主要流程的示意图; 图2是根据本发明实施例的监听业务数据的示意图; 图3是根据本发明实施例的在业务基础数据库调用数据基础信息的示意图; 图4是根据本发明实施例的调用数据基础信息补齐日志文件的流程示意图; 图5是根据本发明实施例的更新缓存中数据以补全日志文件的示意图; 图6是根据本发明实施例的调用数据基础信息补全日志文件的示意图; 图7是根据本发明实施例的推送实时抽取的数据的示意图 图8是根据本发明实施例的监控数据处理的示意图; 图9是根据本发明实施例的数据处理的装置的主要结构的示意图; 图10是本发明实施例可以应用于其中的示例性系统架构图; 图11是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。 具体实施方式 以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。 目前,在海量数据场景下,数以亿计的数据是大数据平台通过T+1方式抽取的离线数据。T+1即延迟一天。抽取到的数据,需要人工干预进行核对。针对人工核对后的数据,手动推送到电子商务软件中。 上述业务数据的处理方式,可以达到收入集成的效果,但是存在一定的局限性。海量数据导致数据抽取时间长,整个集成入账的周期需要十天以上。而且离线操作数据,难以做到实时或者准实时,时效性较差。人工抽取数据、校验数据、确认并推送数据,上述操作繁琐。由于集成过程数据不可见,数据可能错误。人工核对也难以发现细节问题,数据质量低导致返工场景多。 上述方案存在数据延迟大,进而导致数据准确度难以监控,以及难以追踪和解决出现的问题。而上述问题直接影响财务数据的准确性和时效性,并且对公司对经营情况难以实时展现。 为了解决数据延迟较大的技术问题,可以采用以下本发明实施例中的技术方案。 参见图1,图1是根据本发明实施例的数据处理的方法主要流程的示意图,通过监听生成业务数据时的消息得到日志文件,并将补全后的日志文件即日志数据写入数据池,以实现实时抽取。如图1所示,具体包括以下步骤: S101、通过生成业务数据时的日志文件,监听生成业务数据时的消息。 在本发明实施例中,为了提高数据处理的稳定性,解耦数据生产环境和数据集成环节。即,稳定性的关键就是异步解耦数据生产环节和数据集成环节,数据集成环节不影响数据生产过程。具体来说,数据生产环节发送业务流水消息,监听业务流水消息以得到相关文件。 为了提高数据处理的实时性,则以业务流水消息作为数据源头,再根据业务流水消息的日志文件进行监听。其中,业务流水可以理解为一段时间内业务数据的总和。 具体来说,可以通过生成业务数据时的日志文件,监听生成业务数据时的消息。在本发明实施例中,业务数据是处理交易过程中涉及的数据。如:业务数据是商品交易过程涉及的货款数据。 在生成业务数据时,常常需要异步发送中间件消息以通知数据库。作为一个示例,中间件消息可以是JMQ消息。JMQ消息是JMQ消息平台所使用的消息。 JMQ消息平台是提供可靠传递消息及数据的消息中间件平台,具有高可用性、扩展性和运维性,经常被用来作为异步处理的一种实现方式。 在本发明实施例中,通过日志文件监听生成业务数据时的消息。其中,日志文件是用于记录系统操作事件的记录文件或文件集合。作为一个示例,日志文件可以是MySQL中的binlog。 在本发明的一个实施例中,采用预设方式获取生成业务数据时的日志文件,监听生成业务数据时的消息。其中,生成业务数据是的日志文件是binlog。 预设方式包括以下一种,登录到mysql、mysqlbinlog工具和Binlake。Binlake是binlog的解析服务,用来解析数据库表的日志信息,进而方便开发人员只需要关注业务开发即可,不需要重复性的开发解析binlog部分的功能。 参见图2,图2是根据本发明实施例的监听业务数据的示意图。图2中业务数据包括计算结果数据和/或账单数据。 其中,计算结果数据是依据以下一种或多种方式得到的,标准价格计算、商家价格计算、仓储计算和非标导入。非标导入是一种按照预设方式导入计算的方式。 账单数据可以按照明细调整和/或账单调整得到。明细调整是指调整账单的项目。账单调整是指调整账单的结算方式。 监听生成上述业务数据时异步发送的JMQ消息,监听该JMQ消息,异步记录生成上述业务数据是的日志文件。可以理解的是,将上述业务数据作为计费结果日志流水。 S102、根据日志文件中的标识,调用数据基础信息补全日志文件得到日志数据,并将日志数据写入数据池。 日志文件用于记录数据库的更新数据。显然,日志文件并未记录业务数据的所有信息。为了增加日志文件的信息完整性,需要调用数据基础信息补全日志文件。 数据基础信息是表征业务数据的基础信息。作为一个示例,数据基础信息包括业务数据涉及的重量,业务数据涉及的体积,业务数据涉及的存储方式等。数据基础信息存储于业务基础数据库中,该业务基础数据库可以提供业务基础服务。 在本发明的一个实施例中,根据日志文件的标识从业务基础数据库中调用数据基础信息。日志文件中包括标识和更新数据。可以根据日志文件中的标识调用数据基础信息,进而补全日志文件。 作为一个示例,日志文件中包括标识1和标准价格计算的更新数据。根据标识1在数据库中调用数据基础信息,数据基础信息包括商家价格计算数据、仓储计算数据和非标调入数据。 根据日志文件中的标识,调用数据基础信息补全日志文件,补全后的日志文件即日志数据。可以理解的是,日志数据中包括业务数据的完整数据。 参见图3,图3是根据本发明实施例的在业务基础数据库调用数据基础信息的示意图,图3中在业务基础服务数据库中,通过JSF调用数据基础信息补全日志文件得到日志数据。 杰夫(Jingdong Service Framework,JSF)适合于分布式架构下,服务与服务之间的同步调用,应用于数据量小并发大的场景。通过JSF进行调用,能够适用并发量加大的情况,进而提高数据处理的效率,提高实时性。 经多次实践发现整个技术方案的技术瓶颈体,出现在补全日志文件的过程中。具体来说,在业务高峰的时候,每分钟三十万的调用频次就可以将该JSF服务的TP99提高到300毫秒(ms)。接口性能差导致数据池中数据的消费能力弱,限制处理能力,且容易对其他业务造成影响。 为了解决上述接口性能瓶颈问题,进一步降低数据延迟,可以采用以下技术方案。 参见图4,图4是根据本发明实施例的调用数据基础信息补齐日志文件的流程示意图,具体包括: S401、根据数据表的日志文件,更新缓存中的数据。 在业务基础数据库的基础上设置缓存,并将业务基础数据库的数据存储在缓存中。作为一个示例,缓存可以是redis缓存。可以理解的是,业务基础数据库中所存储的数据,与缓存中所存储的数据相同。 为了保证缓存中的数据与业务基础数据库中数据的一致性,可以监听业务基础数据库的binlog。基于业务基础数据库的binlog异步更新缓存中的数据。也就是说,缓存中的数据始终与业务基础数据库中数据一致。 S402、根据日志文件中的标识,在缓存中调用数据基础信息补全日志文件得到日志数据。 这样就可以根据日志文件中的标识,在缓存中调用数据基础信息补全日志文件得到日志数据。 在图4的实施例中,建立缓存以同步业务基础数据库中数据,进而提高调用数据基础信息的效率。 参见图5,图5是根据本发明实施例的更新缓存中数据以补全日志文件的示意图。可以将业务基础数据库中的数据同步到Redis数据缓存中。 监听业务基础数据库的binglog,在获知业务基础数据发生变化时,异步刷新Redis缓存中的数据,从而保证Redis数据缓存与业务基础数据库中数据的一致。 在实际的应用中,接口吞吐量提升了一个质的变化,tp99:50ms,调用峰值:100W/min。 在本发明的一个实施例中,写入数据池中的数据不仅有日志数据,还有外部数据。外部数据是已完成交易的数据。作为一个示例,在物流领域外部数据是已经完成结算的数据。相应地,日志数据是未完成结算的数据。 对于外部数据,由于已完成交易,无需监听,可以将外部数据通过接口直接写入数据池中。其中,该接口可以预先设置。即,通过预设接口将外部数据直接写入数据池中。 参见图6,图6是根据本发明实施例的调用数据基础信息补全日志文件的示意图。 在图6中,写入数据池的数据包括两部分,分别为外部数据和日志数据。对于外部数据而言,由于属于已完成交易的数据,对于外部数据而言无需监听。外部数据可以直接采用JSF通过接口直接写入数据池中。 对于日志数据,日志数据是在监听JMQ消息的日志文件基础上,补全后得到的。其中,JMQ消息是在计费结果日志流水时异步发送的。 为了补全日志文件,需要通过JSF在业务基础数据库中调用基础信息,进而得到日志数据。 至此,在数据池中已写入日志数据和外部数据。 S103、实时抽取数据池中的数据,并推送抽取的数据。 在数据池中存储有日志数据。在已写入外部数据的情况下,数据池中存储有日志数据和外部数据。 由于日志数据是在监听生成业务数据时的消息异步建立的。因此,在业务数据生成的同时,可以实时抽取数据池中数据,并推送抽取的数据。可以理解的是,上述实时抽取数据与现有技术T+1方式抽取数据相比而言,时延较小。 作为一个示例,可以通过实时大数据平台实时抽取数据。如:在数据池中通过大数据平台实时抽取数据,然后统一收集到数据仓库。最后,经大数据集市内部的调度可以展现给用户和使用。 然后,推送实时抽取的数据。作为一个示例,可以推送实时抽取的数据至电子商务软件中。 参见图7,图7是根据本发明实施例的推送实时抽取的数据的示意图。图7中数据池中存储有日志数据和外部数据,通过实时大数据平台实时抽取数据。然后,将实时抽取数据推送至电子商务软件。 作为一个示例,通过实时大数据平台实时抽取数据后,需要按照财务方式处理。经过财务方式处理后,将处理后的实时抽取数据推送中电子商务软件。 其中,财务方式处理的目的在于,将从实时抽取数据按照财务科目和结算主体、商家等维度进行分组汇总和统计的处理,方便入账和分析。 例如,数据池的数据可以按照物流业务场景,分为仓储数据、配送数据和运输数据。即,仓储数据是在仓储业务场景下发生的运营操作对应的计费数据的集成。配送数据是在配送业务场景下发生的运营操作对应的计费数据的集成。运输数据是在配送业务场景下发生的运营操作对应的计费数据的集成。相应地,外部数据是已完成结算的数据。 参见图8,图8是根据本发明实施例的监控数据处理的示意图,为了保障数据处理的稳定性,可以监控数据处理的过程。 图8中,将本发明实施例中的技术方案分为四部分,分别是生成业务数据、日志文件、数据池和实时抽取数据。 可以理解的是,日志文件即生成业务数据时生成的日志;数据池是包括日志数据和外部数据的数据库连接池;实时抽取数据是在数据池中实时抽取的数据。 为了保障第一时间发现问题,以保障每月数亿级数据的稳定性,可以通过数据监控表对本发明实施例中的各步骤进行监控。 具体来说,通过生成业务数据时的日志文件,监听生成业务数据时的消息的过程中,建立第一数据监控表。可以理解的是,第一数据监控表是根据日志文件获取的。 调用数据基础信息补全日志文件得到日志数据,并将日志数据写入数据池的过程中,建立第二数据监控表。可以理解的是,第二数据监控表是根据数据池中的数据获取的。 在数据池中实时抽取数据的过程中,建立第三数据监控表。可以理解的是,第三数据监控表是根据实时抽取的数据获取的。 这样,通过比较上述两个或三个监控表,监控数据处理。作为一个示例,针对同一单号,比较在不同监控表中的项目内容。作为另一个示例,可以针对同一个业务数据,分析在第一数据监控表、第二数据监控表和第三数据监控表中的数据变化是否符合业务逻辑。如:同一个业务数据在第二数据监控表的项目内容最多,在第三数据监控表中的项目内容属于第二数据监控表,在第一数据监控表中的项目内容属于第二数据监控表。 作为一个示例,通过比较上述两个或三个监控表,从业务数据源头发起,经过业务和财务等审批完成后,修改相关数据,相关数据包括业务数据和计费数据等。以生成新的业务流水和冲红的业务流水,进而保证集成数据在不修改的情况下可以正常冲红。 其中,数据冲红是描述财务数据调整时所做的一种数据冲抵操作。例如:一个订单10元,因计费要素或价格水平调整,导致重新计算,将原来的10元冲红成-10元,再将正确的计算金额计算记录到财务账目。 在本发明的一个实施例中,为了提高数据一致性,在生成日志文件和/或调用数据基础信息的情况下,可以采用信息解析重试,以再次获取日志文件和/或调用数据基础信息。 信息解析重试是系统不稳定或技术组件出现问题时的处理方式。如:系统服务不可用导致访问请求失败,重试后仍然失败。业务流程需要继续执行,而本次请求的数据也不能丢失和处理错误,那么先将本次业务场景的现场快照保留,延迟触发再次请求该服务,直到系统服务恢复。在此期间,曾经请求失败的数据会再次成功处理,进而保证最终的数据一致性和业务流程处理的一致性,保证系统高可用,即使系统出现问题,并不会对业务数据造成影响。 将信息解析重试应用于本发明实施例,继续参见图8,信息解析重试应用于生成日志文件的过程中,还可以应用于补全日志文件得到日志数据的过程中。 示例性地应用于生成日志文件,其中生成业务数据时的信息可以理解为:本次业务场景的现场快照。 在获取生成业务数据时的日志文件失败的情况下,则存储生成业务数据时的信息; 解析生成业务数据时的信息,得到生成业务数据时的日志文件。 示例性地,应用于补全日志文件得到日志数据。其中调用数据基础信息的数据可以理解为:本次业务场景的现场快照。 根据日志文件中的标识,调用数据基础信息失败,则存储调用数据基础信息的数据; 解析调用所述数据基础信息的数据,得到数据基础信息以补全日志文件得到日志数据。 在本发明的一个实施例中,为了提高补全日志文件的成功率,可以采用信息补全重试。 信息补全重试是调用数据基础信息失败,在预设时间段后再次调用数据基础信息以补全日志文件的方式。继续参见图8,信息补全重试应用于补全日志文件得到日志数据的过程中。 示例性地,调用数据基础信息失败,则在预设时间段后再次调用数据基础信息成功; 利用再次调用得到的数据基础信息补全日志文件得到日志数据 采用信息补全重试,能够保证数据的完整性和准确性,进而适用于自动化处理业务的异常场景。 在上述本发明的实施例中,通过生成业务数据时的日志文件,监听生成业务数据时的消息;根据日志文件中的标识,调用数据基础信息补全日志文件得到日志数据,并将日志数据写入数据池;实时抽取数据池中的数据,并推送抽取的数据。在生成业务数据的同时,通过监听生成业务数据时的消息异步处理数据,进而可以在数据池中实时抽取数据,进而减少数据延迟。 此外,在上述实施例中采用异步生成日志文件方式解耦业务数据,从而保证隔离生产。补全日志文件中涉及的JMQ和JSF服务均可以保证通过水平扩展分片、机器数量不断提高服务吞吐量的能力,在数据库压力可以支撑的情况下,可调配地提升服务能力。 参见图9,图9是根据本发明实施例的数据处理的装置的主要结构的示意图,数据处理的装置可以实现数据处理的方法,如图9所示,数据处理的装置具体包括: 监听模块901,用于通过生成业务数据时的日志文件,监听生成所述业务数据时的消息; 补全模块902,用于根据所述日志文件中的标识,调用数据基础信息补全所述日志文件得到日志数据,并将所述日志数据写入数据池; 抽取模块903,用于实时抽取所述数据池中的数据,并推送抽取的数据。 在本发明的一个实施例中,监听模块901,具体用于采用预设方式获取生成业务数据时的日志文件,监听生成所述业务数据时的消息。 在本发明的一个实施例中,监听模块901,具体用于获取生成所述业务数据时的日志文件失败的情况下,则存储生成所述业务数据时的数据; 解析生成所述业务数据时的数据,得到生成所述业务数据时的日志文件; 补全模块902,具体用于根据所述日志文件中的标识,调用所述数据基础信息失败,则存储调用所述数据基础信息的数据; 解析所述调用所述数据基础信息的数据,得到所述数据基础信息。 在本发明的一个实施例中,补全模块902,具体用于调用所述数据基础信息失败,则在预设时间段后再次调用所述数据基础信息成功; 利用再次调用得到的数据基础信息补全所述日志文件得到日志数据 在本发明的一个实施例中,抽取模块903,还用于通过比较两个或三个监控表,监控所述数据处理,所述监控表包括第一数据监控表、第二数据监控表和第三数据监控表, 所述第一数据监控表是根据所述日志文件获取的,所述第二数据监控表是根据所述数据池中的数据获取的,所述第三数据监控表是根据所述实时抽取数据获取的。 在本发明的一个实施例中,补全模块902,具体用于根据数据表的日志文件,更新缓存中的数据; 根据所述日志文件中的标识,在所述缓存中调用数据基础信息补全所述日志文件得到日志数据。 在本发明的一个实施例中,补全模块902,还用于将外部数据通过接口直接写入所述数据池中。 图10示出了可以应用本发明实施例的数据处理的方法或数据处理的装置的示例性系统架构1000。 如图10所示,系统架构1000可以包括终端设备1001、1002、1003,网络1004和服务器1005。网络1004用以在终端设备1001、1002、1003和服务器1005之间提供通信链路的介质。网络1004可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。 用户可以使用终端设备1001、1002、1003通过网络1004与服务器1005交互,以接收或发送消息等。终端设备1001、1002、1003上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。 终端设备1001、1002、1003可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。 服务器1005可以是提供各种服务的服务器,例如对用户利用终端设备1001、1002、1003所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。 需要说明的是,本发明实施例所提供的数据处理的方法一般由服务器1005执行,相应地,数据处理的装置一般设置于服务器1005中。 应该理解,图10中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。 下面参考图11,其示出了适于用来实现本发明实施例的终端设备的计算机系统1100的结构示意图。图11示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。 如图11所示,计算机系统1100包括中央处理单元(CPU)1101,其可以根据存储在只读存储器(ROM)1102中的程序或者从存储部分1108加载到随机访问存储器(RAM)1103中的程序而执行各种适当的动作和处理。在RAM 1103中,还存储有系统1100操作所需的各种程序和数据。CPU 1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。 以下部件连接至I/O接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。 特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被中央处理单元(CPU)1101执行时,执行本发明的系统中限定的上述功能。 需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。 附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。 描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括监听模块、补全模块和抽取模块。其中,这些模块的名称在某种情况下并不构成对该模块本身的限定,例如,监听模块还可以被描述为“用于通过生成业务数据时的日志文件,监听生成所述业务数据时的消息”。 作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括: 通过生成业务数据时的日志文件,监听生成所述业务数据时的消息; 根据所述日志文件中的标识,调用数据基础信息补全所述日志文件得到日志数据,并将所述日志数据写入数据池; 实时抽取所述数据池中的数据,并推送抽取的数据。 根据本发明实施例的技术方案,通过生成业务数据时的日志文件,监听生成业务数据时的消息;根据日志文件中的标识,调用数据基础信息补全日志文件得到日志数据,并将日志数据写入数据池;实时抽取数据池中的数据,并推送抽取的数据。在生成业务数据的同时,通过监听生成业务数据时的消息异步处理数据,进而可以在数据池中实时抽取数据,进而减少数据延迟。 上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。