首页 / 一种实时数据变更数据捕获平台

一种实时数据变更数据捕获平台有效专利 发明

技术领域

[0001] 本发明涉及数据分析监控技术领域,特别涉及一种实时数据变更数据捕获平台。

相关背景技术

[0002] 目前, 实时数据变更数据捕获平台的基础技术架构是基于事件驱动的,即数据变更会产生特定的事件,然后通过消息队列、通知等方式触发相应的数据处理和变更。现有技术多通过对原始数据和变更数据进行对比、计算差异等方式实现。由于实时数据变更数据量通常非常大,因此实时数据变更数据捕获平台通常采用异步的方式进行处理,以避免因为等待同步而导致的性能问题。
[0003] 但是,现有的实时数据变更数据捕获平台为了保证数据处理系统的性能稳定性多采用固定的监控资源分配机制(例如固定的数据比对或计算差异的间隔时间,因为数据比对或计算差异的间隔时间越短,所耗费的运行资源越多)来对大量需监控数据进行监控,并捕获其中发生的数据变更事件。这种变更数据捕获方式没有考虑到不同数据项可能发生变更的概率,导致监控资源分配机制不合理,进而导致变更数据捕获效率低,可能存在数据变更事件捕获滞后严重的问题。
[0004] 因此,本发明提出一种实时数据变更数据捕获平台。

具体实施方式

[0020] 以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
[0021] 实施例1:本发明提供了一种实时数据变更数据捕获平台,参考图1,包括:
影响关系推测模块,用于基于当前数据处理模式确定出所有需监控数据项之间存在的所有推测影响关系;
关系拓扑搭建模块,用于基于所有需监控数据项之间存在的所有推测影响关系和解析量化关系,搭建出所有需监控数据项的极限细化关系拓扑结构;
关系项组提取模块,用于在极限细化关系拓扑结构中提取出包含存在极限细化关系的至少两个需监控数据项构成的所有关系项组;
实时变更捕获模块,用于基于所有关系项组,确定出所有需监控数据项的监控资源分配结果,并基于监控资源分配结果和预设捕获机制以及所有关系项组,捕获所有需监控数据项中的实时变更数据,获得当前数据处理模式的变更数据捕获结果。
[0022] 该实施例中,当前数据处理模式为用户设置的数据处理系统(例如Clickhouse数据库)当前对需监控数据项数据处理模式,例如:将数据组织为表格的形式,每个表格都有列定义和数据值,不同的列之间不共享数据,而是共享索引,这种数据模型具有很多优点,例如可以实现高性能的数据查询,支持高效的并发读写等。
[0023] 该实施例中,需监控数据项为需要实时数据变更数据捕获平台监控并捕获其发生的数据变更事件的数据项,例如Clickhouse数据库中以列分布数据项。
[0024] 该实施例中,需监控数据项之间存在的推测影响关系为利用当前数据处理模式的多个历史捕获实例确定出的许监控数据项之间存在的数值影响关系(或量化关系)。
[0025] 该实施例中,需监控数据项之间存在的解析量化关系为可直接获取的、需监控数据项之间较为直观的量化关系,例如:年度销售额‑年度成本=年度利润。
[0026] 该实施例中,极限细化关系拓扑结构包含所有需监控数据项之间可确定出的最详细的量化关系的拓扑结构。
[0027] 该实施例中,关系项组包含存在极限细化关系的至少两个需监控数据项构成的组合。
[0028] 该实施例中,监控资源分配结果为对所有需监控数据项分配监控资源这一结果,监控资源例如有执行捕获机制的运行内存、或者执行捕获机制(即为执行计算差异或者数据比对,其中,计算差异和数据比对执行的对象是当前采集的需监控数据项的数据和上一次执行预设捕获机制时采集的需监控数据项的数据,即将该二者进行计算差异或者数据比对)的频率,执行捕获机制的运行内存和频率越大,表示监控资源分配越多。
[0029] 该实施例中,预设捕获机制例如将对应需监控数据项的最新数据与上一次进行数据比对时的数据进行比对或者计算其二者差异,若比对或计算差异的结果表示其二者存在差异,则基于对应需监控数据项的最新数据更新对应需监控数据项的数据。
[0030] 该实施例中,实时变更数据为最新一次执行捕获机制捕获到的需监控数据项的数据产生的变更数据。
[0031] 该实施例中,变更数据捕获结果包括所有需监控数据项在当前数据处理模式下的全生命周期中被捕获到的所有变更数据。
[0032] 以上技术的有益效果为:通过对需监控数据项之间存在的关系的极限细化分析,并基于确定出的关系项组考虑到不同数据项可能发生变更的概率,进而实现对其监控资源的合理分配,提高了变更数据捕获效率,改善了现有变更数据捕获方法可能存在的数据变更事件捕获滞后严重的问题。
[0033] 实施例2:在实施例1的基础上,影响关系推测模块,参考图2,包括:
数据处理模式确定子模块,用于确定出需监控数据任务的当前数据处理模式;
影响关系推测子模块,用于基于当前数据处理模式确定出所有需监控数据项之间存在的所有推测影响关系。
[0034] 该实施例中,需监控数据任务包括所有需监控数据项和所有需监控数据项的当前数据处理模式的变更数据捕获任务。
[0035] 以上技术的有益效果为:实现了当前数据处理模式的确定及所有需监控数据项之间存在的所有推测影响关系的确定。
[0036] 实施例3:在实施例2的基础上,影响关系推测子模块,包括:
历史捕获实例解析单元,用于获取当前数据处理模式的多个历史捕获实例,并确定出每个历史捕获实例中的所有变更事件;
影响持续时段确定单元,用于将滞后于每个变更事件的发生时间的预设时段作为每个变更事件的影响持续时段;
第一关联事件筛选单元,用于在每个历史捕获实例对应的全数据变更线程中,确定出在对应历史捕获实例中每个变更事件的影响持续时段内的所有变更事件,作为每个变更事件的第一关联变更事件集;
第二关联事件筛选单元,用于将所有历史捕获实例中的相同需监控变更数据项的所有变更事件的第一关联变更事件集中重合(即表示至少两个变更事件的发生时间相同且产生的变更数据也相同)的变更事件,当作对应需监控变更数据项的所有变更事件的第二关联变更事件集;
推测影响关系确定单元,用于基于每个需监控变更数据项的所有变更事件的第二关联变更事件集,确定出所有需监控数据项之间存在的所有推测影响关系。
[0037] 该实施例中,历史捕获实例为记录有之前完成的、对数据处理模式为当前数据处理模式的需监控数据任务在整个变更数据捕获过程中的所有变更事件的记录实例。
[0038] 该实施例中,变更事件为单个需监控数据项发生单次数据变更这一事件。
[0039] 该实施例中,预设时段预设的影响持续时段的持续时长。
[0040] 该实施例中,历史捕获实例对应的全数据变更线程为用时间线程记录历史捕获实例中所有变更事件的发生时间的结果。
[0041] 以上技术的有益效果为:通过对当前数据处理模式的多个历史捕获实例中的变更事件以发生时间为条件进行约束筛选,并进一步地,将当前数据处理模式的所有历史捕获实例第一次约束筛选后的第一关联变更事件集进行关联比对,通过对当前数据处理模式的多个历史捕获实例中的变更事件的两次筛选过程,实现了对所有需监控数据项之间存在的量化关系的深度推测。
[0042] 实施例4:在实施例3的基础上,推测影响关系确定单元,包括:
变更事件关联子单元,用于将每个第二关联变更数据集中的每个变更事件与对应所属的第一关联变更事件集对应的变更事件进行关联,获得多个变更事件关联组;
关联组划分汇总子单元,用于将所有变更事件关联组中,其中包含的所有变更事件对应的需监控数据项都对应相同的至少两个变更事件关联组进行汇总,获得对应至少两个需监控数据项的变更事件关联组集;
推测影响关系确定子单元,用于基于所有变更事件关联组集确定出所有需监控数据项之间存在的所有推测影响关系,其中,将每个变更事件关联组集中所有变更事件关联组都满足的量化关系,当作对应至少两个需监控数据项之间存在的推测影响关系。
[0043] 该实施例中,将每个第二关联变更数据集中的每个变更事件与对应所属的第一关联变更事件集对应的变更事件进行关联,获得多个变更事件关联组,例如:存在属于需监控数据项A的变更事件A1和变更事件A2;
变更事件A1的第一关联变更事件集中包含变更事件A01a、变更事件A02a、变更事件A11、变更事件A12、变更事件A13、……;
变更事件A2的第一关联变更事件集中包含变更事件A01b、变更事件A02b、变更事件A21、变更事件A22、变更事件A23、……;
则需监控数据项A的变更事件A1和变更事件A2的第二关联变更事件集包含变更事件A01a(或b)、变更事件A02a(或b);
则将变更事件A01a、变更事件A02a分别与变更事件A1进行关联获得两个变更事件关联组;
并将变更事件A01b、变更事件A02b分别与变更事件A2进行关联获得两个变更事件关联组。
[0044] 该实施例中,将所有变更事件关联组中,其中包含的所有变更事件对应的需监控数据项都对应相同的至少两个变更事件关联组进行汇总,获得对应至少两个需监控数据项的变更事件关联组集,例如:变更事件A1和变更事件A2对应的需监控数据项为需监控数据项A;
变更事件A01a和变更事件A01b对应的需监控数据项为需监控数据项B;
变更事件A02a对应的需监控数据项为需监控数据项C;
变更事件A02b对应的需监控数据项为需监控数据项D;
则变更事件关联组(A01a,A1)、(A02a,A1)、(A01b,A2),(A02b,A2)中属于同一变更事件关联组集的变更事件关联组有:(A01a,A1)和(A01b,A2)。
[0045] 以上技术的有益效果为:通过将每个第二关联变更数据集中的每个变更事件与对应所属的第一关联变更事件集对应的变更事件进行关联,并基于其中包含的变更事件对应的需监控数据项对应相同这一条件进行进一步汇总,实现了对所有需监控数据项之间存在的量化关系的进一步深度推测。
[0046] 实施例5:在实施例1的基础上,关系拓扑搭建模块,包括:
量化关系解析子模块,用于解析出所有需监控数据项之间存在的所有解析量化关系;
关系拓扑搭建子模块,用于基于所有需监控数据项之间存在的所有推测影响关系和解析量化关系,搭建出所有需监控数据项的极限细化关系拓扑结构。
[0047] 该实施例中,解析出所有需监控数据项之间存在的所有解析量化关系可通过检索预设解析量化关系表确定,其中,预设解析量化关系表包含预先标定的多组存在解析量化关系的需监控数据项。
[0048] 以上技术的有益效果为:实现所有需监控数据项之间存在的所有解析量化关系的获取,并结合所有需监控数据项之间存在的所有需监控数据项,完成所有需监控数据项的极限细化关系拓扑结构的搭建。
[0049] 实施例6:在实施例5的基础上,关系拓扑搭建子模块,包括:
关系去重汇总单元,用于将所有需监控数据项之间存在所有推测影响关系和解析量化关系进行去重汇总,获得所有需监控数据项之间的第一关系;
关系极限细化单元,用于对所有需监控数据项之间的第一关系进行关联,获得所有需监控数据项之间的第二关系;
关系合并搭建单元,用于基于所有需监控数据项之间的第一关系和第二关系,搭建出所有需监控数据项的极限细化关系拓扑结构。
[0050] 该实施例中,去重汇总即去掉重复的之后进行汇总。
[0051] 该实施例中,对所有需监控数据项之间的第二关系进行关联为对所有需监控数据项之间的第一关系进行合并,使得可以获得除第一关系以外的其他量化关系的过程,例如:需监控数据项S1‑需监控数据项S2=需监控数据项S3;
其中,需监控数据项S2=需监控数据项S4+需监控数据项S5;
则对上述两个量化关系“关联”后可以得出:需监控数据项S1‑(需监控数据项S4+需监控数据项S5)=需监控数据项S3;
该实施例中,基于所有需监控数据项之间的第一关系和第二关系,搭建出所有需监控数据项的极限细化关系拓扑结构即为:
将所有需监控数据项之间的第一关系和第二关系中表示的存在量化关系的需监控数据项之间进行连接,并将其对应量化关系标记在对应连接线上,获得所有需监控数据项的极限细化关系拓扑结构。
[0052] 以上技术的有益效果为:通过对所有需监控数据项之间存在所有推测影响关系和解析量化关系进行去重汇总并再次关联,实现对所有需监控数据项之间的关系的极限深度挖掘,并基于最终确定出的所有关系搭建出了所有需监控数据项的极限细化关系拓扑结构。
[0053] 实施例7:在实施例1的基础上,实时变更捕获模块,包括:
资源分配比确定子模块,用于基于所有关系项组确定出所有需监控数据项之间的监控资源分配比;
监控资源分配子模块,用于基于监控资源分配比为所有需监控数据项分配监控资源,获得监控资源分配结果;
实时变更捕获子模块,用于基于监控资源分配结果和预设捕获机制以及所有关系项组,获得变更数据捕获结果。
[0054] 该实施例中,监控资源分配比为表示所有需监控数据项分配获得的监控资源份额之间的比值,例如需监控数据项A、需监控数据项B、需监控数据项C之间的监控资源分配比为:1:1:1。
[0055] 该实施例中,基于监控资源分配比为所有需监控数据项分配监控资源包括:基于监控资源分配比确定出每个需监控数据项分配获得的监控资源份额,基于所有需监控数据项分配获得的监控资源分配为所有需监控数据项分配监控资源。
[0056] 以上技术的有益效果为:完成了对所有需监控数据项的监控资源的合理分配,并结合预设捕获机制和所有关系项组,高效地获得变更数据捕获结果。
[0057] 实施例8:在实施例7的基础上,资源分配比确定子模块,包括:
覆盖量确定单元,用于将包含单个需监控数据项的所有关系项组的总数,当作对应单个需监控数据项的覆盖量;
分配比确定单元,用于将所有需监控数据项的覆盖量之比,当作所有需监控数据项之间的监控资源分配比。
[0058] 该实施例中,将所有需监控数据项的覆盖量之比,当作所有需监控数据项之间的监控资源分配比,例如:需监控数据项A、需监控数据项B、需监控数据项C之间的覆盖量之比为1:1:1,则需监控数据项A、需监控数据项B、需监控数据项C之间的监控资源分配比1:1:1。
[0059] 以上技术的有益效果为:引入包含单个需监控数据项的所有关系项组的总数这一参量作为单个需监控数据项的覆盖量,实现了所有需监控数据项之间的监控资源分配比的合理确定。
[0060] 实施例9:在实施例7的基础上,实时变更捕获子模块基于监控资源分配结果和预设捕获机制以及所有关系项组,获得当前数据处理模式的变更数据捕获结果的方法,参考图3,包括:
步骤1:当基于监控资源分配结果和预设捕获机制在所有需监控数据项中捕获出至少一个变更事件;
步骤2:在所有关系项组中确定出每个变更事件中的变更数据项涉及的所有关系项组,并将所有变更数据项涉及的所有关系项组中除对应变更数据项以外剩余的每个需监控数据项,当作重点监控数据项;
步骤3:将每个重点监控数据项在所有变更数据项涉及的所有关系项组中出现的次数,当作每个重点监控数据项的重点标记次数;
步骤4:基于所有重点监控数据项和对应的重点标记次数,确定出新的监控资源分配比;
步骤5:基于新的监控资源分配比为所有需监控数据项分配监控资源,获得新的监控资源分配结果;
步骤6:基于新的监控资源分配结果循环执行步骤1至步骤5,捕获出至少一个新的变更事件,直至触发当前数据处理模式的结束标志时,则将当前捕获的所有变更事件汇总获得当前数据处理模式的变更数据捕获结果。
[0061] 该实施例中,基于监控资源分配结果和预设捕获机制在所有需监控数据项中捕获出至少一个变更事件例如:假设监控资源分配结果包括预设捕获机制的运行内存和预设捕获机制的执行间隔时间,则基于监控资源分配结果中包含的预设捕获机制的运行内存和预设捕获机制的执行间隔时间,对对应需监控数据项执行预设捕获机制,并当捕获到对应需监控数据项发生数据变更时,则基于发生数据变更的时间和需监控数据项以及产生的变更数据记录为一个变更事件。
[0062] 该实施例中,变更数据项为变更事件中记录发生数据变更的需监控数据项。
[0063] 该实施例中,变更数据项涉及的所有关系项组为包含对应变更数据项的变更事件的所有关系项组。
[0064] 该实施例中,基于新的监控资源分配比为所有需监控数据项分配监控资源,获得新的监控资源分配结果,与上一次基于监控资源比为所有需监控数据项分配监控资源获得监控资源分配结果的执行步骤相同。
[0065] 该实施例中,当前数据处理模式的结束标志例如为用户输入的结束请求或者用户或系统预先规定的结束标志(例如以未来时间为约束的停止时间)。
[0066] 以上技术的有益效果为:当捕获到变更事件时,则基于所有关系项组重新确定新的监控资源分配比,并获得新的监控资源分配结果,以此形成循环,实现捕获过程中的监控资源的不断重新分配,更加提高了变更数据捕获的效率。
[0067] 实施例10:在实施例9的基础上,步骤4:基于所有重点监控数据项和对应的重点标记次数,确定出新的监控资源分配比,包括:
当需监控数据项为重点监控数据项时,则将包含对应需监控数据项的所有关系项组的总数与对应的重点标记次数之和,当作对应需监控数据项的分配份额;
当需监控数据项不是重点监控数据项时,则将包含对应需监控数据项的所有关系项组的总数,当作对应需监控数据项的分配份额;
将所有需监控数据项的分配份额之比,当作所有需监控数据项之间的新的监控资源分配比。
[0068] 该实施例中,将所有需监控数据项的分配份额之比,当作所有需监控数据项之间的新的监控资源分配比例如:需监控数据项A、需监控数据项B、需监控数据项C之间的分配份额之比为1:1:1,则需监控数据项A、需监控数据项B、需监控数据项C之间的监控资源分配比1:1:1。
[0069] 以上技术的有益效果为:基于需监控数据项在被捕获到的变更事件中的变更数据项涉及的所有关系项组中的重点标记次数,考虑到不同数据项可能发生变更的概率,合理确定出所有需监控数据项之间的新的监控资源分配比。
[0070] 显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页 第1页 第2页 第3页
相关技术
实时数据相关技术
捕获平台相关技术
王海军发明人的其他相关专利技术