CN112699129A - 一种数据处理系统、方法及装置 - Google Patents

一种数据处理系统、方法及装置 Download PDF

Info

Publication number
CN112699129A
CN112699129A CN202110049918.5A CN202110049918A CN112699129A CN 112699129 A CN112699129 A CN 112699129A CN 202110049918 A CN202110049918 A CN 202110049918A CN 112699129 A CN112699129 A CN 112699129A
Authority
CN
China
Prior art keywords
data
service
database
management
server
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
CN202110049918.5A
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 Sankuai Online Technology Co Ltd
Original Assignee
Beijing Sankuai Online 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 Sankuai Online Technology Co Ltd filed Critical Beijing Sankuai Online Technology Co Ltd
Priority to CN202110049918.5A priority Critical patent/CN112699129A/zh
Publication of CN112699129A publication Critical patent/CN112699129A/zh
Pending legal-status Critical Current

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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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/23Updating
    • 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/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本说明书公开了一种数据处理系统、方法及装置,系统中的各业务服务器可根据业务用户的业务请求执行业务,并将产生的业务数据存储至对应的业务数据库中,以使该业务数据库更新日志。之后,该系统中的管理端服务器,可通过监控各业务数据库的日志,确定各业务数据库的增量数据,并将该增量数据写入该系统的管理端数据库中。然后,将各业务数据库中的历史全量数据写入该管理端数据库中。当接收到管理用户的数据查询请求时,便可根据该管理端数据库中的数据进行数据查询,并将数据查询结果返回给管理用户。通过实时同步管理端数据库与各业务数据库中的业务数据的方式,使管理用户可基于管理端数据库进行数据查询服务,提高管理用户的数据查询效率。

Description

一种数据处理系统、方法及装置
技术领域
本申请涉及数据处理技术领域,尤其涉及一种数据处理系统、方法及装置。
背景技术
随着互联网以及大数据的发展,越来越多的用户通过互联网业务平台执行业务,使得业务平台所需处理的业务数据也不断增多。
为了提高业务处理效率,通常将业务拆分为若干子业务,并分别由该业务平台中的若干子业务平台执行。其中,每个子业务平台对应有单独的数据库,以存储执行的子业务的业务数据。
例如,电商平台可提供购买业务以及退货业务,因此可将电商平台拆分为购买平台以及退货平台,由购买平台执行借贷业务,由退货平台执行还款业务。并且,购买业务的业务数据存储于购买平台对应的数据库中,退货业务的业务数据存储于退货平台对应的数据库中。
当业务人员需要进行综合业务分析时,可通过远程调用的方式,分别从各子业务系统中获取所需的业务数据,以综合进行业务数据分析。
但是,分别调用各子业务系统以获取业务数据,往往需要较长的调用时间,导致业务分析的效率较低。
发明内容
本说明书实施例提供一种数据处理系统、方法及装置,用于部分解决现有技术中的问题。
本说明书实施例采用下述技术方案:
本说明书提供的一种数据处理系统,所述数据处理系统包含若干业务服务器、各业务服务器分别对应的业务数据库、管理端数据库以及所述管理端数据库对应的管理端服务器,其中:
针对每个业务服务器,该业务服务器根据业务用户的业务请求,执行所述业务请求对应的业务,并将执行业务产生的业务数据存储至该业务服务器对应的业务数据库中;
针对每个业务数据库,该业务数据库存储执行业务产生的业务数据,并根据存储的业务数据,确定该业务数据库的日志;
所述管理端服务器,监控各业务数据库的日志,并根据监控到的各业务数据库的日志,确定各业务数据库的增量数据,将确定出的增量数据写入所述管理端数据库中;
所述管理端服务器,将各业务数据库中的历史全量数据写入所述管理端数据库中;
所述管理端服务器,当接收到管理用户的数据查询请求时,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给所述管理用户。
可选地,所述管理端服务器,针对监控到的各业务数据库的每个日志,判断该日志记录的是否为批量删除操作;
若是,则不根据该日志进行数据处理;
若否,则根据该日志进行数据处理,确定该日志对应的增量数据。
可选地,所述管理端服务器,针对监测到的每个业务数据库的日志,判断该业务数据库的日志记录的是否为对数据的修改操作;
若是,则将所述日志记录的对数据的修改操作转化为对数据的添加操作,并根据所述添加操作,确定该业务数据库的增量数据。
可选地,所述管理端服务器,依次针对预设的每个主键范围,从各业务数据库中的历史全量数据中,确定对应该主键范围的历史全量数据;
所述管理端服务器,依次将确定出的各主键范围对应的历史全量数据写入所述管理端数据库中。
可选地,所述管理端服务器,依次针对预设的每个主键范围,从各业务数据库中确定对应该主键范围的第一数据集,并从所述管理端数据库中确定对应该主键范围的第二数据集;
所述管理端服务器,根据所述第一数据集以及所述第二数据集,进行数据核对。
可选地,所述管理端服务器,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,按照预设的各数据查询维度,进行数据聚合,确定对应各数据查询维度的聚合数据;
所述管理端服务器,当接收到所述管理用户发送的数据查询请求时,根据所述数据查询请求中包含的数据查询维度,确定对应的聚合数据,并将确定出的聚合数据返回给所述管理用户。
可选地,所述业务服务器,当接收到所述业务用户的数据查询请求时,根据所述业务服务器对应的业务数据库中的数据,进行数据查询,并将数据查询结果返回给所述业务用户。
本说明书还提供了一种数据处理方法,所述数据处理方法用于数据处理系统中,所述数据处理系统包含若干业务服务器、各业务服务器分别对应的业务数据库、管理端数据库以及所述管理端数据库对应的管理端服务器;
所述方法包括:
所述管理端服务器监控各业务数据库的日志,并根据监控到的各业务数据库的日志,确定各业务数据库的增量数据;
将确定出的增量数据写入所述管理端数据库中;
将各业务数据库中的历史全量数据写入所述管理端数据库中;
当接收到管理用户的数据查询请求时,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给所述管理用户。
本说明书提供一种数据处理装置,包括:
监控模块,监控各业务数据库的日志,并根据监控到的各业务数据库的日志,确定各业务数据库的增量数据;
增量写入模块,将确定出的增量数据写入所述管理端数据库中;
全量写入模块,将各业务数据库中的历史全量数据写入所述管理端数据库中;
查询模块,当接收到管理用户的数据查询请求时,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给所述管理用户。
本说明书提供的一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述数据处理方法。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
在本说明书中进行数据处理时,系统中的各业务服务器可根据业务用户的业务请求执行业务,并将产生的业务数据存储至对应的业务数据库中,以使该业务数据库更新日志。之后,该系统中的管理端服务器,可通过监控各业务数据库的日志,确定各业务数据库的增量数据,并将该增量数据写入该系统的管理端数据库中。然后,将各业务数据库中的历史全量数据写入该管理端数据库中。当接收到管理用户的数据查询请求时,便可根据该管理端数据库中的数据进行数据查询,并将数据查询结果返回给管理用户。通过实时同步管理端数据库与各业务数据库中的业务数据的方式,使管理用户可基于管理端数据库进行数据查询服务,提高管理用户的数据查询效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本说明书实施例提供的一种数据处理系统的架构示意图;
图2为本说明书实施例提供的一种数据传输的结构示意图;
图3为本说明书实施例提供的一种数据核对流程示意图;
图4为本说明书实施例提供的一种数据处理方法的流程示意图;
图5为本说明书实施例提供的一种数据处理装置的结构示意图。
具体实施方式
为使本说明书的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
一般的,在各业务平台中,管理人员(即,本说明书中的管理用户)还需根据用户(即,本说明书中的业务用户)在业务平台中的业务数据,综合进行业务分析。目前,为了提高业务执行效率,通常由业务平台中的各子业务平台负责不同子业务的执行。如,在金融平台中,借贷业务由借贷平台处理,还款业务由还款平台处理。
当业务平台的管理用户需要进行业务分析时,如,分析各用户的业务执行情况,则管理端服务器可根据管理用户的数据查询请求,分别向各子业务平台的业务服务器发送业务数据获取请求,以从各业务服务器对应的业务数据库中获取相应的业务数据进行业务分析。但是,通过管理端服务器分别向各业务服务器发送请求以获取数据,数据获取的时间较长,导致业务分析效率较低。
并且,各子业务平台的业务服务器以及业务数据库不仅需要处理来自业务用户的业务执行请求以及数据获取请求等,还需处理来自管理用户的数据查询请求,业务处理的压力较大。
基于上述存在的问题,本说明书提供一种数据处理系统以及数据处理方法,通过配置管理端数据库,将各业务平台中的业务数据传输至管理端数据库中,并且管理端数据库还可实时监控各业务数据库,以进行业务数据的更新。当管理用户需要进行业务分析时,可通过管理端服务器进行数据查询,直接从管理端数据库获取数据。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1为本说明书实施例提供的数据处理系统的架构示意图,该系统包括:若干业务服务器100、各业务服务器100对应的业务数据库102、管理端数据库106以及管理端数据库106对应的管理端服务器104。其中,业务服务器100用于处理业务用户的业务请求,不同的业务服务器100对应于业务平台中不同的子业务平台,业务数据库102用于根据业务用户执行的业务,进行数据的查询与存储。管理端服务器104用于处理管理端用户的业务请求,管理端数据库106用于根据管理用户的业务请求,进行数据查询。并且,管理端数据库106还实时监控各业务数据库102中数据变化情况,以进行数据的更新。
具体的,在本说明书中的数据处理系统中,业务服务器100用于处理业务用户的业务请求。针对每个业务服务器100,当接收到业务用户通过终端发送的业务请求时,该业务服务器100可根据接收到的业务请求,执行该业务请求对应的业务,并将执行业务产生的业务数据存储至该业务服务器100对应的业务数据库102中。其中,当业务用户发送的业务请求为数据查询请求时,该业务服务器100可直接从对应的业务数据库102中查询数据,并返回给业务用户。
于是,针对每个业务数据库102,该业务数据库102可根据对应的业务服务器100执行业务所产生的业务数据,进行数据存储。并根据存储的各业务数据以及各业务数据的存储时间,确定该业务数据库102的日志。
为了提高管理用户的数据查询效率,本说明书在数据处理系统中还配置了管理端数据库106,将各业务数据库102中存储的业务数据迁移至该管理端数据库106中,并且实时监控各业务数据的数据变化,以当各业务数据库102中发生数据变化时,可更新该管理端数据库106中的数据。
进一步的,由于各业务数据库102中存储的历史业务数据的数据量较大,迁移至管理端数据库106中需要较长的时间,为保证在数据迁移过程中的数据准确性,避免在数据迁移过程中业务数据发生变化,而未能及时记录。在本说明书中可先监测各业务数据库102中的日志,记录各业务数据库102的增量数据,之后再迁移各业务数据库102中存储的历史业务数据。
于是在本说明书中,如图2所示,该管理端服务器104可通过数据传输模块(DataTransmission Service,DTS)中的监控代码,监控各业务数据库102的日志。并针对每个业务数据库102,根据监控到的该业务数据库102的日志中记录的对数据的变化操作,如,二进制日志(Binary Log,Binlog)语句,确定该业务数据库102的增量数据。之后,该管理端服务器104可通过DTS数据传输模块,将确定出的增量数据写入管理端数据库106中。
当该管理端服务器104实时监控各业务数据库102的数据变化后,便可进行历史业务数据的迁移,如图2所示,通过DTS数据传输模块将各业务数据库102中的历史全量数据写入该管理端数据库106中。
其中,在将历史全量数据写入管理端数据库106时,该管理端服务器104可通过DTS数据传输模块,依次针对预设的每个主键范围,从各业务数据库102中的历史全量数据中,确定对应该主键范围的历史全量数据,并依次将确定出的各主键范围对应的历史全量数据写入该管理端数据库106中。预设的主键范围可根据数据迁移的顺序进行设置,本说明书对此不做限制。
之后,该管理端服务器104可根据写入的历史全量数据以及监控到的各业务数据库102的增量数据,实时更新该管理端数据库106中存储的业务数据。
在本说明书中,当实时同步管理端数据库106与各业务数据库102中的业务数据后,便可为管理用户提供业务查询服务。当该管理端服务器104接收到管理用户的数据查询请求时,可根据该管理端数据库106中存储的业务数据,进行数据查询,并将数据查询结果返回给该管理用户。
基于图1所示的数据处理系统,在进行数据处理时,系统中的各业务服务器可根据业务用户的业务请求,执行对应的业务,并将执行业务产生的业务数据存储至该业务服务器对应的业务数据库中。该业务数据库可根据存储的业务数据,确定该业务数据库的日志。该系统中的管理端服务器,可通过监控各业务数据库的日志,确定各业务数据库的增量数据,并将确定出的增量数据写入该系统的管理端数据库中。同时,该管理端服务器可将各业务数据库中的历史全量数据写入该管理端数据库中。当该管理端服务器接收到管理用户的数据查询请求时,便可根据该管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给管理用户。在本说明书中将各业务数据库中的历史全量数据传输至管理端数据库中,并通过实时监控确定的增量数据对该管理端数据库中的数据进行更新,以通过该管理端数据库为管理用户提供数据查询服务,提高管理用户的数据查询效率。
并且,通过本说明书提供的数据处理方法,通过将管理端与业务端分隔开来,使得管理用户在进行数据查询时,可直接根据管理端数据库中存储的数据进行数据查询,避免了侵入其它各子业务平台,减缓了其它各子业务平台的运行压力。
另外,随着互联网以及大数据的发展,用户在业务平台中执行业务所产生的数据越来越多,为了提高业务执行效率,保证充足的存储空间,还可周期性的将业务数据库102中存储时间较早的业务数据进行批量删除。但是,由于管理端数据库106用于进行业务分析,需要保留全量的业务数据,因此在根据各业务数据库102的日志,确定增量数据时,该管理端服务器104还可针对监控到的各业务数据库102的每个日志,判断该日志记录的是否为批量删除操作。当确定该日志记录的是批量删除操作时,则不再根据该日志进行数据处理。当确定该日志记录的不是批量删除操作时,再根据该日志进行数据处理,确定该日志对应的增量数据。其中,各业务数据库的日志中记录的对各业务数据库中数据的增删查改等操作。
进一步的,在本说明书中,由于进行数据迁移需要较长的时间,并且该管理端服务器104还需根据监控到的日志中对数据的变化操作,如,对数据的添加操作、删除操作以及修改操作,确定该日志对应的增量数据,并将该增量数据写入该管理端数据库106中。
由于写入增量数据与迁移历史全量数据的时间不完全同步,可能出现增量数据写入完成但历史全量数据还未完全写入的情况,此时,若监控到对数据进行修改操作的日志,但管理端数据库106中还未写入对应的历史全量数据,则会导致数据同步出现错误。
因此在本说明书中为避免上述情况的出现,在确定增量数据之前,该管理端服务器104可针对监测到的每个业务数据库102的日志,判断该业务数据库102的日志记录的是否为对数据的修改操作,当确定日志记录的是对数据的修改操作时,可将该日志记录的对数据的修改操作转化为对数据的添加操作,并根据对数据的添加操作,确定该业务数据库102的增量数据。
例如,假设业务数据库102中存储的一条原始数据为{“id”:1,“name”:“张三”,“location”:“杭州”}。若用户对该原始数据中的地点进行修改,将“杭州”修改为“上海”,则产生的日志记录如下:
{“tableName”:“db.test”,“timestamp”:1610277778000,“type”:“update”,“data”:{“id”:1,“name”:“张三”,“location”:“上海”}}。其中包含对应的表名、修改的时间戳信息、对数据的变化操作的类型信息以及变化后的完整数据。
由于上述日志记录中变化操作的类型信息为修改操作,因此为进一步保证数据同步的一致性,可将该日志记录的对数据的修改操作转化为对数据的添加操作,即,通过insert into‘db.test’(id,name,location)values(1,‘张三’,‘上海’)on duplicate key语句,将对数据的修改操作转化为对数据的添加操作,并根据对数据的添加操作,确定增量数据,以同步写入管理端数据库106中。
进一步的,由于写入增量数据与迁移历史全量数据的时间不完全同步,为避免迁移的历史全量数据与迁移的增量数据存在数据重复的问题,在本说明书中迁移历史全量数据时,该管理端服务器104可先确定开始监控各业务数据库102的初始时间,并从各业务数据库102中确定在该初始时间之前存储的业务数据,作为历史全量数据。
或者,在本说明书另一种实施例中,该管理端服务器104也可根据管理端数据库106中写入的各历史全量数据以及各增量数据,确定重复存储的数据,并对重复存储的数据进行修改。
为保证管理端数据库106中写入数据的准确性,该管理端服务器还可根据各业务数据库102中的业务数据以及管理端数据库106中的业务数据,通过数据校验模块进行数据核对。具体的,该管理端服务器104可通过数据校验模块依次针对预设的每个主键范围,从各业务数据库102中确定对应该主键范围的第一数据集,并从该管理端数据库106中确定对应该主键范围的第二数据集。之后,根据该第一数据集以及该第二数据集,进行数据核对。其中,该预设的主键范围可根据数据核对的范围确定,可以与上述写入历史全量数据时设置的主键范围相同,也可以与之不同,本说明书对此不做限制,具体可根据需要设置。
进一步的,图3为本说明书提供的数据核对流程图,在根据第一数据集以及第二数据集进行数据核对时,该管理端服务器104可针对第一数据集中的每个第一数据,确定该第一数据对应在第二数据集中的第二数据,并判断该第二数据的数量是否符合预设数量,当不符合预设数量时,则可确定第二数据出现数据重复的问题,可提示管理用户进行修改。其中,预设数量可根据需要设置,本说明书对此不做限制。
当第二数据的数量符合预设数量时,或者当修改完成后的第二数据的数量符合预设数量时,则可继续根据第一数据集中包含的记录的数量以及第二数据集中包含的记录的数量,判断两个数据集中的记录的数量是否一致,当确定记录的数量不一致时,可确定存在数据缺失的问题,可提示管理用户进行修改。
当确定记录的数量一致时,或者当修改完成后的两个数据集中记录的数量一致时,可继续根据第一数据集中的各记录以及第二数据集中的各记录,逐条记录进行数据核对。
其中,在逐条记录进行核对时,该管理端服务器104也可先通过信息-摘要算法(Message-Digest algorithm 5,MD5)确定第一数据集的MD5值,并通过MD5算法确定第二数据集的MD5值,判断第一数据集与第二数据集的MD5值是否一致。当确定一致时,可确定迁移数据完全正确。当确定不一致时,可逐条核对第一数据集与第二数据集中对应数据的MD5值,确定错误数据,并提示管理用户进行修改。
在本说明书一种或多种实施例中,为了进一步提高管理用户的数据查询效率,该管理端服务器104也可根据该管理端数据库106中包含的各历史全量数据以及各增量数据,按照预设的各数据查询维度,预先进行数据聚合,确定对应各数据查询维度的聚合数据。以当管理端服务器104接收到该管理用户发送的数据查询请求时,可根据该数据查询请求中包含的数据查询维度,确定对应的聚合数据,并将确定出的聚合数据返回给该管理用户。
在本说明书中,管理端服务器104以及管理端数据库106可为管理用户提供数据查询等服务,当业务用户需要进行数据查询时,可向业务服务器100发送数据查询请求,并当该业务服务器100接收到业务用户的数据查询请求时,可根据该业务服务器100对应的业务数据库102,进行数据查询,并将数据查询结果返回给该业务用户。
需要说明的是,在本说明书中为进一步提高管理用户的数据查询效率,该管理端数据库106可采用分布式数据库,以节省获取数据的时间。并且,由于管理端数据库106中存储来自各业务数据库102的历史全量数据以及实施监测到的增量数据,所需存储空间较大,因此采用分布式数据库作为管理端数据库106,可通过区域region分裂方式进一步扩展存储空间,避免出现存储空间不足的情况。其中,具体采用哪种分布式数据库可根据业务需要设置,本说明书对此不做限制。并且,该管理端服务器104可以是单个服务器,也可以是多个服务器组成的系统,如,分布式服务器系统等,本说明书对此不做限制,可根据需要设置。
其中,当该管理端服务器为分布式服务器系统时,则数据查询服务以及数据同步服务可分别由分布式服务器系统中不同的服务器执行。
针对上述图1所示的数据处理系统,本说明书还对应提供了数据处理系统中所采用的数据处理方法,如图4所示。
图4为本说明书实施例提供的数据处理方法的流程示意图,其中,该数据处理方法可用于数据处理系统中,该数据处理系统包含若干业务服务器、各业务服务器分别对应的业务数据库、管理端数据库以及该管理端数据库对应的管理端服务器。该数据处理方法具体可包括以下步骤:
S200:所述管理端服务器监控各业务数据库的日志,并根据监控到的各业务数据库的日志,确定各业务数据库的增量数据。
在本说明书一种或多种实施例中,由于各业务数据库中存储的历史业务数据的数据量较大,迁移至管理端数据库中需要较长的时间,为保证在数据迁移过程中的数据准确性,避免在数据迁移过程中业务数据发生变化,而未能及时记录。在本说明书中可先监测各业务数据库中的日志,记录各业务数据库的增量数据。
具体的,该管理端服务可通过数据传输模块(Data Transmission Service,DTS)中的监控代码,监控各业务数据库的日志。并针对每个业务数据库,根据监控到的该业务数据库的日志中记录的对数据的变化操作,如,二进制日志(Binary Log,Binlog)语句,确定该业务数据库的增量数据。
S202:将确定出的增量数据写入所述管理端数据库中。
在本说明书一种或多种实施例中,当监控确定出各业务数据库中的增量数据后,便可将该增量数据写入管理端数据库中。具体的,该管理端服务器可通过DTS数据传输模块,将确定出的增量数据写入管理端数据库中。
S204:将各业务数据库中的历史全量数据写入所述管理端数据库中。
在本说明书一种或多种实施例中,当实时监控各业务数据库中的数据变化后,便可将各业务数据库中存储的历史业务数据迁移至管理端数据库中。
具体的,该管理端服务器可通过DTS数据传输模块,依次针对预设的每个主键范围,从各业务数据库中的历史全量数据中,确定对应该主键范围的历史全量数据,并依次将确定出的各主键范围对应的历史全量数据写入该管理端数据库中。其中,预设的主键范围可根据数据迁移的顺序进行设置,本说明书对此不做限制。
S206:当接收到管理用户的数据查询请求时,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给所述管理用户。
在本说明书一种或多种实施例中,当管理端数据库中存储的数据与各业务数据库中的数据实时同步后,便可通过管理端数据库为管理用户提供数据查询服务。
具体的,当该管理端服务器接收到管理用户的数据查询请求时,可根据该管理端数据库中存储的业务数据,进行数据查询,并将数据查询结果返回给该管理用户。其中,该管理端数据库中存储的数据包含各业务数据库中的历史全量数据,以及实时根据各业务数据库中数据变化,写入的增量数据。
在本说明书中,该数据处理方法具体可用于上述数据处理系统中,该数据处理的过程具体可参考本说明书提供的数据处理系统对数据进行处理的描述,由于数据处理过程已经在前文进行过详细描述,因此可参考前文,本说明书对此不再重复说明。
基于图1所示的数据处理方法,本说明书实施例还对应提供一种数据处理装置的结构示意图,如图5所示。
图5为本说明书实施例提供的一种数据处理装置的结构示意图,所述装置包括:
监控模块300,监控各业务数据库的日志,并根据监控到的各业务数据库的日志,确定各业务数据库的增量数据;
增量写入模块302,将确定出的增量数据写入所述管理端数据库中;
全量写入模块304,将各业务数据库中的历史全量数据写入所述管理端数据库中;
查询模块306,当接收到管理用户的数据查询请求时,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给所述管理用户。
本说明书实施例还提供了一种计算机可读存储介质,该存储介质存储有计算机程序,计算机程序可用于执行上述图4提供的数据处理方法。
当然,除了软件实现方式之外,本说明书并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书的实施例而已,并不用于限制本说明书。对于本领域技术人员来说,本说明书可以有各种更改和变化。凡在本说明书的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。

Claims (10)

1.一种数据处理系统,其特征在于,所述数据处理系统包含若干业务服务器、各业务服务器分别对应的业务数据库、管理端数据库以及所述管理端数据库对应的管理端服务器,其中:
针对每个业务服务器,该业务服务器根据业务用户的业务请求,执行所述业务请求对应的业务,并将执行业务产生的业务数据存储至该业务服务器对应的业务数据库中;
针对每个业务数据库,该业务数据库存储执行业务产生的业务数据,并根据存储的业务数据,确定该业务数据库的日志;
所述管理端服务器,监控各业务数据库的日志,并根据监控到的各业务数据库的日志,确定各业务数据库的增量数据,将确定出的增量数据写入所述管理端数据库中;
所述管理端服务器,将各业务数据库中的历史全量数据写入所述管理端数据库中;
所述管理端服务器,当接收到管理用户的数据查询请求时,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给所述管理用户。
2.如权利要求1所述的系统,其特征在于,所述管理端服务器,针对监控到的各业务数据库的每个日志,判断该日志记录的是否为批量删除操作;
若是,则不根据该日志进行数据处理;
若否,则根据该日志进行数据处理,确定该日志对应的增量数据。
3.如权利要求1所述的系统,其特征在于,所述管理端服务器,针对监测到的每个业务数据库的日志,判断该业务数据库的日志记录的是否为对数据的修改操作;
若是,则将所述日志记录的对数据的修改操作转化为对数据的添加操作,并根据所述添加操作,确定该业务数据库的增量数据。
4.如权利要求1所述的系统,其特征在于,所述管理端服务器,依次针对预设的每个主键范围,从各业务数据库中的历史全量数据中,确定对应该主键范围的历史全量数据;
所述管理端服务器,依次将确定出的各主键范围对应的历史全量数据写入所述管理端数据库中。
5.如权利要求1所述的系统,其特征在于,所述管理端服务器,依次针对预设的每个主键范围,从各业务数据库中确定对应该主键范围的第一数据集,并从所述管理端数据库中确定对应该主键范围的第二数据集;
所述管理端服务器,根据所述第一数据集以及所述第二数据集,进行数据核对。
6.如权利要求1所述的系统,其特征在于,所述管理端服务器,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,按照预设的各数据查询维度,进行数据聚合,确定对应各数据查询维度的聚合数据;
所述管理端服务器,当接收到所述管理用户发送的数据查询请求时,根据所述数据查询请求中包含的数据查询维度,确定对应的聚合数据,并将确定出的聚合数据返回给所述管理用户。
7.如权利要求1~6任一所述的系统,其特征在于,所述业务服务器,当接收到所述业务用户的数据查询请求时,根据所述业务服务器对应的业务数据库中的数据,进行数据查询,并将数据查询结果返回给所述业务用户。
8.一种数据处理方法,其特征在于,所述数据处理方法用于数据处理系统中,所述数据处理系统包含若干业务服务器、各业务服务器分别对应的业务数据库、管理端数据库以及所述管理端数据库对应的管理端服务器;
所述方法包括:
所述管理端服务器监控各业务数据库的日志,并根据监控到的各业务数据库的日志,确定各业务数据库的增量数据;
将确定出的增量数据写入所述管理端数据库中;
将各业务数据库中的历史全量数据写入所述管理端数据库中;
当接收到管理用户的数据查询请求时,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给所述管理用户。
9.一种数据处理装置,其特征在于,包括:
监控模块,监控各业务数据库的日志,并根据监控到的各业务数据库的日志,确定各业务数据库的增量数据;
增量写入模块,将确定出的增量数据写入所述管理端数据库中;
全量写入模块,将各业务数据库中的历史全量数据写入所述管理端数据库中;
查询模块,当接收到管理用户的数据查询请求时,根据所述管理端数据库中包含的各历史全量数据以及各增量数据,进行数据查询,并将数据查询结果返回给所述管理用户。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求8所述的方法。
CN202110049918.5A 2021-01-14 2021-01-14 一种数据处理系统、方法及装置 Pending CN112699129A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110049918.5A CN112699129A (zh) 2021-01-14 2021-01-14 一种数据处理系统、方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110049918.5A CN112699129A (zh) 2021-01-14 2021-01-14 一种数据处理系统、方法及装置

Publications (1)

Publication Number Publication Date
CN112699129A true CN112699129A (zh) 2021-04-23

Family

ID=75515109

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110049918.5A Pending CN112699129A (zh) 2021-01-14 2021-01-14 一种数据处理系统、方法及装置

Country Status (1)

Country Link
CN (1) CN112699129A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114020281A (zh) * 2021-11-08 2022-02-08 中电金信软件有限公司 一种数据库的部署方法、应用服务部署方法及装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114020281A (zh) * 2021-11-08 2022-02-08 中电金信软件有限公司 一种数据库的部署方法、应用服务部署方法及装置

Similar Documents

Publication Publication Date Title
CN112131237B (zh) 数据同步方法、装置、设备及计算机可读介质
CN110275916B (zh) 数据操作记录的存储方法、系统、装置及设备
CN106933703B (zh) 一种数据库数据备份的方法、装置及电子设备
KR102311032B1 (ko) 데이터베이스 동기화
CN108599973B (zh) 一种日志关联方法、装置及设备
TW201800967A (zh) 分布式流式資料處理的方法和裝置
US11223471B2 (en) Blockchain-type data storage
CN111177165A (zh) 数据一致性检测的方法、装置及设备
US10642530B2 (en) Global occupancy aggregator for global garbage collection scheduling
CN110659259A (zh) 数据库迁移方法、服务器以及计算机存储介质
CN113254163B (zh) 区块链数据的处理方法及装置
US11204933B2 (en) Data manipulation record storage method, system, apparatus, and device
CN112699129A (zh) 一种数据处理系统、方法及装置
CN113326288A (zh) 数据处理方法、装置、电子设备
CN111078418B (zh) 操作同步方法、装置、电子设备及计算机可读存储介质
CN116186082A (zh) 基于分布式的数据汇总方法、第一服务器和电子设备
CN115391337A (zh) 数据库分区的方法、装置、存储介质及电子设备
CN111444194A (zh) 一种块链式账本中索引的清除方法、装置及设备
CN108121719B (zh) 一种实现数据抽取转换加载etl的方法及装置
CN114900531B (zh) 数据同步方法、装置和系统
CN116126620A (zh) 数据库日志处理方法、数据库变更查询方法及相关装置
CN117493354A (zh) 数据的处理方法、处理系统、存储介质及处理器
CN113326268A (zh) 一种数据写入、读取方法及装置
CN116108035A (zh) 数据的还原方法及装置、处理器和电子设备
CN116821143A (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