CN112579603A - 基于cdc的数据模型动态信息感知监测方法及装置 - Google Patents
基于cdc的数据模型动态信息感知监测方法及装置 Download PDFInfo
- Publication number
- CN112579603A CN112579603A CN202011544848.2A CN202011544848A CN112579603A CN 112579603 A CN112579603 A CN 112579603A CN 202011544848 A CN202011544848 A CN 202011544848A CN 112579603 A CN112579603 A CN 112579603A
- Authority
- CN
- China
- Prior art keywords
- information
- push
- field
- configuration
- change
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000012544 monitoring process Methods 0.000 title claims abstract description 60
- 238000013499 data model Methods 0.000 title claims abstract description 36
- 230000008447 perception Effects 0.000 title claims abstract description 8
- 230000008859 change Effects 0.000 claims abstract description 470
- 238000000605 extraction Methods 0.000 claims abstract description 54
- 230000008569 process Effects 0.000 claims abstract description 21
- 238000004891 communication Methods 0.000 claims abstract description 4
- 230000000694 effects Effects 0.000 claims description 180
- 238000005192 partition Methods 0.000 claims description 50
- 238000013507 mapping Methods 0.000 claims description 46
- 238000013481 data capture Methods 0.000 claims description 42
- 238000004458 analytical method Methods 0.000 claims description 15
- 230000005540 biological transmission Effects 0.000 claims description 10
- 230000014509 gene expression Effects 0.000 claims description 6
- 230000005012 migration Effects 0.000 claims description 5
- 238000013508 migration Methods 0.000 claims description 5
- 230000003252 repetitive effect Effects 0.000 claims description 5
- 238000012790 confirmation Methods 0.000 abstract description 5
- 238000010219 correlation analysis Methods 0.000 abstract description 4
- 230000006399 behavior Effects 0.000 description 25
- 238000012545 processing Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000012508 change request Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/214—Database migration support
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
Abstract
本发明实施例提供一种基于CDC的数据模型动态信息感知监测方法及装置,基于数据库推送组件将数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段,进而提取每个聚类推送字段对应的字段业务特征集合以及确定每个聚类推送字段的推送对象,根据多个推送对象对不同的字段业务特征集合进行推送信息配置以得到推送信息配置结果,根据数据库表结构变化关系信息生成消息推送集合并进行数据库信息推送,以监测增量抽取请求信息和增量数据变更信息。如此,能够基于数据库表结构变化关系信息进行关联分析,从而自动地通过推送对象实现信息推送信息配置和确认,提高推送效率的同时进一步提高推送过程中的信息准确性。
Description
技术领域
本发明涉及电子商务技术领域,具体而言,涉及一种基于CDC的数据模型动态信息感知监测方法及装置。
背景技术
CDC是oracle在数据库级别实现的增量抽取解决方案。在一般的ETL过程中,对于增量抽取,无非是在数据上加时间戳,全记录比对,关键字段比对,日志分析抽取等几种方法,要么需要修改原表结构,要么需要大量的算法,要么借助第三方的工具实现。Oracle从9i开始引入的CDC特性,使得有机会在数据库层面上直接实现增量抽取功能,在性能方面由于和数据库引擎的直接集成,比第三方工具应该具有一定的优势。
基于此,对于CDC的物理模型而言,如何精确对外推送相关物理数据模型的消息,从而便于通过推送对象实现信息推送信息配置和确认,是本领域亟待解决的技术问题。
发明内容
为了至少克服现有技术中的上述不足,本发明的目的在于提供一种基于CDC的数据模型动态信息感知监测方法及装置,在生成数据库表结构变化关系信息后,能够基于数据库推送组件将数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段,进而提取每个聚类推送字段对应的字段业务特征集合以及确定每个聚类推送字段的推送对象。能够根据多个推送对象对不同的字段业务特征集合进行推送信息配置以得到推送信息配置结果,根据数据库表结构变化关系信息生成消息推送集合并进行数据库信息推送,以监测增量抽取请求信息和增量数据变更信息。如此,能够基于数据库表结构变化关系信息进行关联分析,从而自动地通过推送对象实现信息推送信息配置和确认,提高推送效率的同时进一步提高推送过程中的信息准确性。
第一方面,本发明提供一种基于CDC的数据模型动态信息感知监测方法,应用于与数据发布终端通信的数据库服务平台,所述方法包括:
根据所述数据发布终端发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息;
基于数据库推送组件将所述数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段;
对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果;
在得到的所有推送信息配置结果均添加成功时,根据所述所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将所述消息推送集合进行数据库信息推送,并监测所述消息推送集合的增量抽取请求信息和增量数据变更信息。
在第一方面的一种可能的实现方式中,根据所述数据发布终端发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息,包括:
确定基于所述数据库表结构监测信息所解析得到的多个增量数据捕获信息;
针对所述多个增量数据捕获信息中的当前增量数据捕获信息,基于当前增量数据捕获信息在数据库服务分区内的第一捕获行为信息以及所述多个增量数据捕获信息中的各所述增量数据捕获信息在所述数据库服务分区内的第二捕获行为信息,确定当前增量数据捕获信息在所述数据库服务分区内的关键捕获对象信息;
根据当前增量数据捕获信息在两个相邻的数据库服务分区内的关键捕获对象信息确定当前增量数据捕获信息在两个相邻的数据库服务分区之间的关键捕获路径信息;
基于所述关键捕获路径信息从所述数据库表结构监测信息中提取所述数据库表结构变化关系信息。
在第一方面的一种可能的实现方式中,基于数据库推送组件将所述数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段,包括:
基于所述数据库推送组件确定所述数据库表结构变化关系信息中的多个物理模型的变化关系字段;
将各个物理模型的变化关系字段的推送信息配置日志数据列出以建立日志数据空间;其中,所述日志数据空间为多分区空间,每个分区空间对应一个分区业务标签,每个分区业务标签对应至少一个推送信息配置日志数据,所述日志数据空间的各个分区空间具有由高优先级到低优先级的业务迁移关系;
读取所述数据库推送组件的数据库推送历史信息,根据所述日志数据空间从所述数据库推送历史信息中提取出所述数据库推送组件对应的推送行为列表;
建立所述推送行为列表与所述日志数据空间之间的日志分析抽取模板,根据该日志分析抽取模板生成推送信息配置事件分布序列;其中,根据该日志分析抽取模板生成推送信息配置事件分布序列,包括:
将推送行为列表转换为多个推送行为服务节点序列,分别生成每个推送行为服务节点序列的至少一个聚类推送字段路径特征;
获取所述推送行为列表的互不重复的聚类推送字段路径特征构成聚类推送字段传递集,将所述聚类推送字段传递集中的各个聚类推送字段路径特征映射到所述日志数据空间中,组成推送信息配置事件分布序列;
将所述数据库推送组件的数据库推送历史信息中包含的推送信息配置日志数据与所述推送信息配置事件分布序列中的各个推送信息配置日志数据进行依次逐一对比;
在依次逐一对比过程中,若一个聚类推送字段路径特征的所有推送信息配置日志数据均包含在所述数据库推送组件的数据库推送历史信息中,则将该聚类推送字段路径特征记录为所述数据库推送组件的事件划分路径;
根据所述数据库推送组件的各个事件划分路径,将所述物理模型的变化关系字段聚类为多个聚类推送字段。
在第一方面的一种可能的实现方式中,对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果,包括:
确定每个聚类推送字段的推送配置触发节点和推送配置关联节点,在获取到所述推送配置触发节点与所述推送配置关联节点之后,获取所述推送配置触发节点的第一推送信息配置对象和所述推送配置关联节点的第二推送信息配置对象,其中,所述推送配置触发节点中包括第一订阅传递信息,所述推送配置关联节点中包括第二订阅传递信息;
获取所述第一推送信息配置对象中的变更字段推送信息配置数据集与所述第二推送信息配置对象中的变更字段推送信息配置数据集,得到变更推送信息配置列表;
确定所述变更推送信息配置列表中的任意两个关联数据集之间的变更推送配置表属性,得到变更推送配置表属性分布信息;
将所述变更推送配置表属性分布信息中的匹配预设变更推送配置表属性的变更推送配置表属性调整为预设变更推送配置表属性,得到更新属性分布信息;
根据所述更新属性分布信息、所述第一订阅传递信息以及所述第二订阅传递信息提取每个聚类推送字段对应的字段业务特征集合;
根据每个聚类推送字段的推送信息配置时序清单中的推送配置强度从预设的多个数据库中确定出与所述推送配置强度相对应的推送对象;其中,所述聚类推送字段、所述推送对象和所述字段业务特征集合互相之间一一对应;
确定每组字段业务特征集合与对应的推送对象之间的推送信息配置索引信息,通过所述推送信息配置索引信息在所述推送对象中查询与每组字段业务特征集合对应的推送配置匹配信息列表;
将每组字段业务特征集合与对应的推送配置匹配信息列表进行关联度比较得到相关性参数,根据所述相关性参数确定每组字段业务特征集合的推送信息配置结果;其中,当相关性参数达到设定相关性参数时,确定对应的推送信息配置结果添加成功。
在第一方面的一种可能的实现方式中,根据所述所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将所述消息推送集合进行数据库信息推送,包括:
提取所述数据库表结构变化关系信息中的第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件;其中,所述第一字段变化活动事件为所述数据库表结构变化关系信息的时间戳变化字段对应的活动事件、所述第二字段变化活动事件为所述数据库表结构变化关系信息的业务结构变化字段对应的活动事件、所述第三字段变化活动事件为所述数据库表结构变化关系信息的表达形式变化字段对应的活动事件;
确定出所述第一字段变化活动事件对应的第一字段变化特征信息与所述第二字段变化活动事件对应的第二字段变化特征信息之间的第一字段变化关联信息以及所述第二字段变化活动事件对应的第二字段变化特征信息与所述第三字段变化活动事件对应的第三字段变化特征信息之间的第二字段变化关联信息;
针对所述第一字段变化活动事件,以所述第一字段变化特征信息为参考按照所述第一字段变化关联信息对所述第一字段变化活动事件进行更新得到第四字段变化活动事件;
针对所述第二字段变化活动事件,以所述第二字段变化特征信息为参考按照所述第二字段变化关联信息对所述第二字段变化活动事件进行更新得到第五字段变化活动事件;
分别将所述第一字段变化活动事件和所述第二字段变化活动事件、所述第一字段变化活动事件和所述第四字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件、以及所述第二字段变化活动事件和所述第五字段变化活动事件进行推送组件配置,得到第一推送组件配置结果、第二推送组件配置结果、第三推送组件配置结果和第四推送组件配置结果;
确定出所述第一推送组件配置结果和所述第二推送组件配置结果之间的第一表间关联变化值以及所述第三推送组件配置结果和所述第四推送组件配置结果之间的第二表间关联变化值;
判断所述第一表间关联变化值和所述第二表间关联变化值是否均落入表间关联变化值区间内;
若是,根据所述第一推送组件配置结果和所述第三推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
若否,分别确定出所述第一表间关联变化值和所述第二表间关联变化值与所述表间关联变化值区间的第一映射区间段和第二映射区间段;
比较所述第一映射区间段和所述第二映射区间段的大小,在所述第一映射区间段匹配所述第二映射区间段时,根据所述第一推送组件配置结果和所述第二推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
在所述第一映射区间段大于所述第二映射区间段时,根据所述第三推送组件配置结果和所述第四推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
基于所述推送配置队列订阅窗口对所述数据库表结构变化关系信息进行订阅窗口匹配得到消息推送集合,并将所述消息推送集合按照队列执行优先级进行数据库信息推送。
第二方面,本发明实施例还提供一种基于CDC的数据模型动态信息感知监测系统,应用于与数据发布终端通信的数据库服务平台,所述装置包括:
查找模块,用于根据所述数据发布终端发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息;
聚类模块,用于基于数据库推送组件将所述数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段;
配置模块,用于对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果;
推送模块,用于在得到的所有推送信息配置结果均添加成功时,根据所述所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将所述消息推送集合进行数据库信息推送,并监测所述消息推送集合的增量抽取请求信息和增量数据变更信息。
第三方面,本发明实施例还提供一种数据库服务平台,所述数据库服务平台包括处理器、机器可读存储介质和网络接口,所述机器可读存储介质、所述网络接口以及所述处理器之间通过总线系统相连,所述网络接口用于与至少一个数据发布终端通信连接,所述机器可读存储介质用于存储程序、指令或代码,所述处理器用于执行所述机器可读存储介质中的程序、指令或代码,以执行第一方面或者第一方面中任意一个可能的实现方式中的基于CDC的数据模型动态信息感知监测方法。
第四方面,本发明实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其被执行时,使得计算机执行上述第一方面或者第一方面中任意一个可能的实现方式中的基于CDC的数据模型动态信息感知监测方法。
基于上述任意一个方面,本发明的实施方式中,在生成数据库表结构变化关系信息后,能够基于数据库推送组件将数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段,进而提取每个聚类推送字段对应的字段业务特征集合以及确定每个聚类推送字段的推送对象。能够根据多个推送对象对不同的字段业务特征集合进行推送信息配置以得到推送信息配置结果,根据数据库表结构变化关系信息生成消息推送集合并进行数据库信息推送,以监测增量抽取请求信息和增量数据变更信息。如此,能够基于数据库表结构变化关系信息进行关联分析,从而自动地通过推送对象实现信息推送信息配置和确认,提高推送效率的同时进一步提高推送过程中的信息准确性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它相关的附图。
图1为本发明实施例提供的变化数据捕捉系统的应用场景示意图;
图2为本发明实施例提供的基于CDC的数据模型动态信息感知监测方法的流程示意图;
图3为本发明实施例提供的基于CDC的数据模型动态信息感知监测系统的功能模块示意图;
图4为本发明实施例提供的用于实现上述的基于CDC的数据模型动态信息感知监测方法的数据库服务平台的结构示意框图。
具体实施方式
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见地,下面描述中的附图仅仅是本说明书的一些示例或实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图将本说明书应用于其它类似情景。除非从语言环境中显而易见或另做说明,图中相同标号代表相同结构或操作。
应当理解,本说明书中所使用的“系统”、“装置”、“单元”和/或“模组”是用于区分不同级别的不同组件、元件、部件、部分或装配的一种方法。然而,如果其他词语可实现相同的目的,则可通过其他表达来替换所述词语。
如本说明书和权利要求书中所示,除非上下文明确提示例外情形,“一”、“一个”、“一种”和/或“该”等词并非特指单数,也可包括复数。一般说来,术语“包括”与“包含”仅提示包括已明确标识的步骤和元素,而这些步骤和元素不构成一个排它性的罗列,方法或者设备也可能包含其它的步骤或元素。
本说明书中使用了流程图用来说明根据本说明书的实施例的系统所执行的操作。应当理解的是,前面或后面操作不一定按照顺序来精确地执行。相反,可以按照倒序或同时处理各个步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步操作。
图1是本发明一种实施例提供的变化数据捕捉系统10的交互示意图。变化数据捕捉系统10可以包括数据库服务平台100以及与所述数据库服务平台100通信连接的数据发布终端200。图1所示的变化数据捕捉系统10仅为一种可行的示例,在其它可行的实施例中,该变化数据捕捉系统10也可以仅包括图1所示组成部分的其中一部分或者还可以包括其它的组成部分。
本实施例中,变化数据捕捉系统10中的数据库服务平台100和数据发布终端200可以通过配合执行以下方法实施例所描述的基于CDC的数据模型动态信息感知监测方法,具体数据库服务平台100和数据发布终端200的执行步骤部分可以参照以下方法实施例的详细描述。
为了解决前述背景技术中的技术问题,图2为本发明实施例提供的基于CDC的数据模型动态信息感知监测方法的流程示意图,本实施例提供的基于CDC的数据模型动态信息感知监测方法可以由图1中所示的数据库服务平台100执行,下面对该基于CDC的数据模型动态信息感知监测方法进行详细介绍。
步骤S110,根据数据发布终端200发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息。
步骤S120,基于数据库推送组件将数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段。
步骤S130,对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果。
步骤S140,在得到的所有推送信息配置结果均添加成功时,根据所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将消息推送集合进行数据库信息推送,并监测消息推送集合的增量抽取请求信息和增量数据变更信息。
本实施例中,当数据发布终端200发起数据库表结构监测信息后,可以查找对应的数据库表结构变化关系信息,例如可以自动获取对应的数据库表结构变化(字段增加、变化),表间关联变化等物理模型变更内容,实时同步更新数模结构关系,从而得到数据库表结构变化关系信息,也即数据库表结构变化关系信息可以用于表征数据库表结构中的字段增加、变化、更新、映射关系改变等信息。
本实施例中,聚类推送字段可以理解为一个单独的推送过程中的推送配置事件所对应的字段,可以基于数据库推送组件将数据库表结构变化关系信息中的物理模型的变化关系字段进行聚类获得,在推送过程中可能会产生多个聚类推送字段。
本实施例中,字段业务特征可以理解为每个聚类推送字段所包括的各个记录的业务订阅属性字段信息。
本实施例中,增量抽取请求信息可以是指针对消息推送集合中的结果发起的增量数据查询请求,增量数据变更信息可以是指针对消息推送集合中的结果发起的增量数据的变更请求,查询请求可以便于用户进行第一时间的查询,变更请求可以便于用户第一时间进行一些错误数据变化字段的修正。
基于上述步骤,本实施例在生成数据库表结构变化关系信息后,能够基于数据库推送组件将数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段,进而提取每个聚类推送字段对应的字段业务特征集合以及确定每个聚类推送字段的推送对象。能够根据多个推送对象对不同的字段业务特征集合进行推送信息配置以得到推送信息配置结果,根据数据库表结构变化关系信息生成消息推送集合并进行数据库信息推送,以监测增量抽取请求信息和增量数据变更信息。如此,能够基于数据库表结构变化关系信息进行关联分析,从而自动地通过推送对象实现信息推送信息配置和确认,提高推送效率的同时进一步提高推送过程中的信息准确性。
在一种可能的实现方式中,针对步骤S110,在根据数据发布终端200发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息的过程中,可以通过以下示例性的子步骤来实现。
子步骤S111,确定基于数据库表结构监测信息所解析得到的多个增量数据捕获信息。
子步骤S112,针对多个增量数据捕获信息中的当前增量数据捕获信息,基于当前增量数据捕获信息在数据库服务分区内的第一捕获行为信息以及多个增量数据捕获信息中的各增量数据捕获信息在数据库服务分区内的第二捕获行为信息,确定当前增量数据捕获信息在数据库服务分区内的关键捕获对象信息。
子步骤S113,根据当前增量数据捕获信息在两个相邻的数据库服务分区内的关键捕获对象信息确定当前增量数据捕获信息在两个相邻的数据库服务分区之间的关键捕获路径信息。
子步骤S114,基于关键捕获路径信息从数据库表结构监测信息中提取数据库表结构变化关系信息。
基于上述子步骤,本实施例在提取数据库表结构变化关系信息的过程中,同时还考虑到相关联的增量数据捕获信息,并基于捕获行为信息进行关键信息的进一步追踪识别,从而提高提取的数据库表结构变化关系信息的准确性。
在一种可能的实现方式中,针对步骤S120,在基于数据库推送组件将数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段的过程中,可以通过以下示例性的子步骤来实现。
子步骤S121,基于数据库推送组件确定数据库表结构变化关系信息中的多个物理模型的变化关系字段。
子步骤S122,将各个物理模型的变化关系字段的推送信息配置日志数据列出以建立日志数据空间。
其中,日志数据空间为多分区空间,每个分区空间对应一个分区业务标签,每个分区业务标签对应至少一个推送信息配置日志数据,日志数据空间的各个分区空间具有由高优先级到低优先级的业务迁移关系。
子步骤S123,读取数据库推送组件的数据库推送历史信息,根据日志数据空间从数据库推送历史信息中提取出数据库推送组件对应的推送行为列表。
子步骤S124,建立推送行为列表与日志数据空间之间的日志分析抽取模板,根据该日志分析抽取模板生成推送信息配置事件分布序列。
例如,可以将推送行为列表转换为多个推送行为服务节点序列,分别生成每个推送行为服务节点序列的至少一个聚类推送字段路径特征。
然后,获取推送行为列表的互不重复的聚类推送字段路径特征构成聚类推送字段传递集,将聚类推送字段传递集中的各个聚类推送字段路径特征映射到日志数据空间中,组成推送信息配置事件分布序列。
在此基础上,将数据库推送组件的数据库推送历史信息中包含的推送信息配置日志数据与推送信息配置事件分布序列中的各个推送信息配置日志数据进行依次逐一对比。其中,在依次逐一对比过程中,若一个聚类推送字段路径特征的所有推送信息配置日志数据均包含在数据库推送组件的数据库推送历史信息中,则将该聚类推送字段路径特征记录为数据库推送组件的事件划分路径。这样,可以根据数据库推送组件的各个事件划分路径,将物理模型的变化关系字段聚类为多个聚类推送字段。
在一种可能的实现方式中,针对步骤S130,在对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果的过程中,可以通过以下示例性的子步骤来实现。
子步骤S131,确定每个聚类推送字段的推送配置触发节点和推送配置关联节点,在获取到推送配置触发节点与推送配置关联节点之后,获取推送配置触发节点的第一推送信息配置对象和推送配置关联节点的第二推送信息配置对象。
其中,推送配置触发节点中包括第一订阅传递信息,推送配置关联节点中包括第二订阅传递信息。
子步骤S132,获取第一推送信息配置对象中的变更字段推送信息配置数据集与第二推送信息配置对象中的变更字段推送信息配置数据集,得到变更推送信息配置列表。
子步骤S133,确定变更推送信息配置列表中的任意两个关联数据集之间的变更推送配置表属性,得到变更推送配置表属性分布信息。
子步骤S134,将变更推送配置表属性分布信息中的匹配预设变更推送配置表属性的变更推送配置表属性调整为预设变更推送配置表属性,得到更新属性分布信息。
子步骤S135,根据更新属性分布信息、第一订阅传递信息以及第二订阅传递信息提取每个聚类推送字段对应的字段业务特征集合。
子步骤S136,根据每个聚类推送字段的推送信息配置时序清单中的推送配置强度从预设的多个数据库中确定出与推送配置强度相对应的推送对象。其中,聚类推送字段、推送对象和字段业务特征集合互相之间一一对应。
子步骤S137,确定每组字段业务特征集合与对应的推送对象之间的推送信息配置索引信息,通过推送信息配置索引信息在推送对象中查询与每组字段业务特征集合对应的推送配置匹配信息列表。
子步骤S138,将每组字段业务特征集合与对应的推送配置匹配信息列表进行关联度比较得到相关性参数,根据相关性参数确定每组字段业务特征集合的推送信息配置结果。
其中,当相关性参数达到设定相关性参数时,确定对应的推送信息配置结果添加成功。
在一种可能的实现方式中,针对步骤S140,在根据所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将消息推送集合进行数据库信息推送的过程中,可以通过以下示例性的子步骤来实现。
子步骤S141,提取数据库表结构变化关系信息中的第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件。其中,第一字段变化活动事件为数据库表结构变化关系信息的时间戳变化字段对应的活动事件、第二字段变化活动事件为数据库表结构变化关系信息的业务结构变化字段对应的活动事件、第三字段变化活动事件为数据库表结构变化关系信息的表达形式变化字段对应的活动事件。
子步骤S142,确定出第一字段变化活动事件对应的第一字段变化特征信息与第二字段变化活动事件对应的第二字段变化特征信息之间的第一字段变化关联信息以及第二字段变化活动事件对应的第二字段变化特征信息与第三字段变化活动事件对应的第三字段变化特征信息之间的第二字段变化关联信息。
子步骤S143,针对第一字段变化活动事件,以第一字段变化特征信息为参考按照第一字段变化关联信息对第一字段变化活动事件进行更新得到第四字段变化活动事件,针对第二字段变化活动事件,以第二字段变化特征信息为参考按照第二字段变化关联信息对第二字段变化活动事件进行更新得到第五字段变化活动事件。
子步骤S144,分别将第一字段变化活动事件和第二字段变化活动事件、第一字段变化活动事件和第四字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件、以及第二字段变化活动事件和第五字段变化活动事件进行推送组件配置,得到第一推送组件配置结果、第二推送组件配置结果、第三推送组件配置结果和第四推送组件配置结果。
子步骤S145,确定出第一推送组件配置结果和第二推送组件配置结果之间的第一表间关联变化值以及第三推送组件配置结果和第四推送组件配置结果之间的第二表间关联变化值。
子步骤S146,判断第一表间关联变化值和第二表间关联变化值是否均落入表间关联变化值区间内。若第一表间关联变化值和第二表间关联变化值均落入表间关联变化值区间内,根据第一推送组件配置结果和第三推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口。若第一表间关联变化值和第二表间关联变化值均不落入表间关联变化值区间内,分别确定出第一表间关联变化值和第二表间关联变化值与表间关联变化值区间的第一映射区间段和第二映射区间段。
子步骤S147,比较第一映射区间段和第二映射区间段的大小,在第一映射区间段匹配第二映射区间段时,根据第一推送组件配置结果和第二推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口。
子步骤S148,在第一映射区间段大于第二映射区间段时,根据第三推送组件配置结果和第四推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口。
子步骤S149,基于推送配置队列订阅窗口对数据库表结构变化关系信息进行订阅窗口匹配得到消息推送集合,并将消息推送集合按照队列执行优先级进行数据库信息推送。
图3为本发明实施例提供的基于CDC的数据模型动态信息感知监测系统300的功能模块示意图,本实施例可以根据上述数据库服务平台100执行的方法实施例对该基于CDC的数据模型动态信息感知监测系统300进行功能模块的划分,也即该基于CDC的数据模型动态信息感知监测系统300所对应的以下各个功能模块可以用于执行上述数据库服务平台100执行的各个方法实施例。其中,该基于CDC的数据模型动态信息感知监测系统300可以包括查找模块310、聚类模块320、配置模块330以及推送模块340,下面分别对该基于CDC的数据模型动态信息感知监测系统300的各个功能模块的功能进行详细阐述。
查找模块310,用于根据数据发布终端200发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息。其中,查找模块310可以用于执行上述的步骤S110,关于查找模块310的详细实现方式可以参照上述针对步骤S110的详细描述即可。
聚类模块320,用于基于数据库推送组件将数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段。其中,聚类模块320可以用于执行上述的步骤S120,关于聚类模块320的详细实现方式可以参照上述针对步骤S120的详细描述即可。
配置模块330,用于对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果。其中,配置模块330可以用于执行上述的步骤S130,关于配置模块330的详细实现方式可以参照上述针对步骤S130的详细描述即可。
推送模块340,用于在得到的所有推送信息配置结果均添加成功时,根据所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将消息推送集合进行数据库信息推送,并监测消息推送集合的增量抽取请求信息和增量数据变更信息。其中,推送模块340可以用于执行上述的步骤S140,关于推送模块340的详细实现方式可以参照上述针对步骤S140的详细描述即可。
在一种可能的实现方式中,查找模块310具体用于:
确定基于数据库表结构监测信息所解析得到的多个增量数据捕获信息。
针对多个增量数据捕获信息中的当前增量数据捕获信息,基于当前增量数据捕获信息在数据库服务分区内的第一捕获行为信息以及多个增量数据捕获信息中的各增量数据捕获信息在数据库服务分区内的第二捕获行为信息,确定当前增量数据捕获信息在数据库服务分区内的关键捕获对象信息。
根据当前增量数据捕获信息在两个相邻的数据库服务分区内的关键捕获对象信息确定当前增量数据捕获信息在两个相邻的数据库服务分区之间的关键捕获路径信息。
基于关键捕获路径信息从数据库表结构监测信息中提取数据库表结构变化关系信息。
在一种可能的实现方式中,聚类模块320具体用于:
基于数据库推送组件确定数据库表结构变化关系信息中的多个物理模型的变化关系字段。
将各个物理模型的变化关系字段的推送信息配置日志数据列出以建立日志数据空间。其中,日志数据空间为多分区空间,每个分区空间对应一个分区业务标签,每个分区业务标签对应至少一个推送信息配置日志数据,日志数据空间的各个分区空间具有由高优先级到低优先级的业务迁移关系。
读取数据库推送组件的数据库推送历史信息,根据日志数据空间从数据库推送历史信息中提取出数据库推送组件对应的推送行为列表。
建立推送行为列表与日志数据空间之间的日志分析抽取模板,根据该日志分析抽取模板生成推送信息配置事件分布序列。其中,根据该日志分析抽取模板生成推送信息配置事件分布序列,包括:
将推送行为列表转换为多个推送行为服务节点序列,分别生成每个推送行为服务节点序列的至少一个聚类推送字段路径特征。
获取推送行为列表的互不重复的聚类推送字段路径特征构成聚类推送字段传递集,将聚类推送字段传递集中的各个聚类推送字段路径特征映射到日志数据空间中,组成推送信息配置事件分布序列。
将数据库推送组件的数据库推送历史信息中包含的推送信息配置日志数据与推送信息配置事件分布序列中的各个推送信息配置日志数据进行依次逐一对比。
在依次逐一对比过程中,若一个聚类推送字段路径特征的所有推送信息配置日志数据均包含在数据库推送组件的数据库推送历史信息中,则将该聚类推送字段路径特征记录为数据库推送组件的事件划分路径。
根据数据库推送组件的各个事件划分路径,将物理模型的变化关系字段聚类为多个聚类推送字段。
在一种可能的实现方式中,配置模块330具体用于:
确定每个聚类推送字段的推送配置触发节点和推送配置关联节点,在获取到推送配置触发节点与推送配置关联节点之后,获取推送配置触发节点的第一推送信息配置对象和推送配置关联节点的第二推送信息配置对象,其中,推送配置触发节点中包括第一订阅传递信息,推送配置关联节点中包括第二订阅传递信息。
获取第一推送信息配置对象中的变更字段推送信息配置数据集与第二推送信息配置对象中的变更字段推送信息配置数据集,得到变更推送信息配置列表。
确定变更推送信息配置列表中的任意两个关联数据集之间的变更推送配置表属性,得到变更推送配置表属性分布信息。
将变更推送配置表属性分布信息中的匹配预设变更推送配置表属性的变更推送配置表属性调整为预设变更推送配置表属性,得到更新属性分布信息。
根据更新属性分布信息、第一订阅传递信息以及第二订阅传递信息提取每个聚类推送字段对应的字段业务特征集合。
根据每个聚类推送字段的推送信息配置时序清单中的推送配置强度从预设的多个数据库中确定出与推送配置强度相对应的推送对象。其中,聚类推送字段、推送对象和字段业务特征集合互相之间一一对应。
确定每组字段业务特征集合与对应的推送对象之间的推送信息配置索引信息,通过推送信息配置索引信息在推送对象中查询与每组字段业务特征集合对应的推送配置匹配信息列表。
将每组字段业务特征集合与对应的推送配置匹配信息列表进行关联度比较得到相关性参数,根据相关性参数确定每组字段业务特征集合的推送信息配置结果。其中,当相关性参数达到设定相关性参数时,确定对应的推送信息配置结果添加成功。
在一种可能的实现方式中,推送模块340具体用于:
提取数据库表结构变化关系信息中的第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件。其中,第一字段变化活动事件为数据库表结构变化关系信息的时间戳变化字段对应的活动事件、第二字段变化活动事件为数据库表结构变化关系信息的业务结构变化字段对应的活动事件、第三字段变化活动事件为数据库表结构变化关系信息的表达形式变化字段对应的活动事件。
确定出第一字段变化活动事件对应的第一字段变化特征信息与第二字段变化活动事件对应的第二字段变化特征信息之间的第一字段变化关联信息以及第二字段变化活动事件对应的第二字段变化特征信息与第三字段变化活动事件对应的第三字段变化特征信息之间的第二字段变化关联信息。
针对第一字段变化活动事件,以第一字段变化特征信息为参考按照第一字段变化关联信息对第一字段变化活动事件进行更新得到第四字段变化活动事件。
针对第二字段变化活动事件,以第二字段变化特征信息为参考按照第二字段变化关联信息对第二字段变化活动事件进行更新得到第五字段变化活动事件。
分别将第一字段变化活动事件和第二字段变化活动事件、第一字段变化活动事件和第四字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件、以及第二字段变化活动事件和第五字段变化活动事件进行推送组件配置,得到第一推送组件配置结果、第二推送组件配置结果、第三推送组件配置结果和第四推送组件配置结果。
确定出第一推送组件配置结果和第二推送组件配置结果之间的第一表间关联变化值以及第三推送组件配置结果和第四推送组件配置结果之间的第二表间关联变化值。
判断第一表间关联变化值和第二表间关联变化值是否均落入表间关联变化值区间内。
若是,根据第一推送组件配置结果和第三推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口。
若否,分别确定出第一表间关联变化值和第二表间关联变化值与表间关联变化值区间的第一映射区间段和第二映射区间段。
比较第一映射区间段和第二映射区间段的大小,在第一映射区间段匹配第二映射区间段时,根据第一推送组件配置结果和第二推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口。
在第一映射区间段大于第二映射区间段时,根据第三推送组件配置结果和第四推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口。
基于推送配置队列订阅窗口对数据库表结构变化关系信息进行订阅窗口匹配得到消息推送集合,并将消息推送集合按照队列执行优先级进行数据库信息推送。
需要说明的是,应理解以上装置的各个模块的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且这些模块可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分模块通过处理元件调用软件的形式实现,部分模块通过硬件的形式实现。例如,查找模块310可以为单独设立的处理元件,也可以集成在上述装置的某一个芯片中实现,此外,也可以以程序代码的形式存储于上述装置的存储器中,由上述装置的某一个处理元件调用并执行以上查找模块310的功能。其它模块的实现与之类似。此外这些模块全部或部分可以集成在一起,也可以独立实现。这里所描述的处理元件可以是一种集成电路,具有信号的处理能力。在实现过程中,上述方法的各步骤或以上各个模块可以通过处理器元件中的硬件的集成逻辑电路或者软件形式的指令完成。
例如,以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(application specific integrated circuit,ASIC),或,一个或多个微处理器(digital signal processor,DSP),或,一个或者多个现场可编程门阵列(field programmable gate array,FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(centralprocessing unit,CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
图4示出了本发明实施例提供的用于实现上述的基于CDC的数据模型动态信息感知监测方法的数据库服务平台100的硬件结构示意图,如图4所示,数据库服务平台100可包括处理器110、机器可读存储介质120、总线130以及收发器140。
在具体实现过程中,至少一个处理器110执行所述机器可读存储介质120存储的计算机执行指令(例如图3中所示的基于CDC的数据模型动态信息感知监测系统300包括的查找模块310、聚类模块320、配置模块330以及推送模块340),使得处理器110可以执行如上方法实施例的基于CDC的数据模型动态信息感知监测方法,其中,处理器110、机器可读存储介质120以及收发器140通过总线130连接,处理器110可以用于控制收发器140的收发动作,从而可以与前述的数据发布终端200进行数据收发。
处理器110的具体实现过程可参见上述数据库服务平台100执行的各个方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述的图4所示的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,DSP)、专用集成电路(英文:ApplicationSpecificIntegrated Circuit,ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
机器可读存储介质120可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线130可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component Interconnect,PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,EISA)总线等。总线130可以分为地址总线、数据总线、控制总线等。为便于表示,本发明附图中的总线并不限定仅有一根总线或一种类型的总线。
此外,本发明实施例还提供一种可读存储介质,所述可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上基于CDC的数据模型动态信息感知监测方法。
上文已对基本概念做了描述,显然,对于本领域技术人员来说,上述详细披露仅仅作为示例,而并不构成对本说明书的限定。虽然此处并没有明确说明,本领域技术人员可能会对本说明书进行各种修改、改进和更新。该类修改、改进和更新在本说明书中被建议,所以该类修改、改进、修正仍属于本说明书示范实施例的精神和范围。
同时,本说明书使用了特定词语来描述本说明书的实施例。如“一种可能的实现方式”、“一种可能的示例”、和/或“示例性地”意指与本说明书至少一个实施例相关的某一特征、结构或特点。因此,应强调并注意的是,本说明书中在不同位置两次或多次提及的“一种可能的实现方式”、“一种可能的示例”、和/或“示例性地”并不一定是指同一实施例。此外,本说明书的一个或多个实施例中的某些特征、结构或特点可以进行适当的组合。
最后,应当理解的是,本说明书中所述实施例仅用以说明本说明书实施例的原则。其他的变形也可能属于本说明书的范围。因此,作为示例而非限制,本说明书实施例的替代配置可视为与本说明书的教导一致。相应地,本说明书的实施例不仅限于本说明书明确介绍和描述的实施例。
Claims (10)
1.一种基于CDC的数据模型动态信息感知监测方法,其特征在于,应用于与数据发布终端通信的所述数据库服务平台,所述方法包括:
根据所述数据发布终端发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息;
基于数据库推送组件将所述数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段;
对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果;
在得到的所有推送信息配置结果均添加成功时,根据所述所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将所述消息推送集合进行数据库信息推送,并监测所述消息推送集合的增量抽取请求信息和增量数据变更信息。
2.根据权利要求1所述的基于CDC的数据模型动态信息感知监测方法,其特征在于,根据所述数据发布终端发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息,包括:
确定基于所述数据库表结构监测信息所解析得到的多个增量数据捕获信息;
针对所述多个增量数据捕获信息中的当前增量数据捕获信息,基于当前增量数据捕获信息在数据库服务分区内的第一捕获行为信息以及所述多个增量数据捕获信息中的各所述增量数据捕获信息在所述数据库服务分区内的第二捕获行为信息,确定当前增量数据捕获信息在所述数据库服务分区内的关键捕获对象信息;
根据当前增量数据捕获信息在两个相邻的数据库服务分区内的关键捕获对象信息确定当前增量数据捕获信息在两个相邻的数据库服务分区之间的关键捕获路径信息;
基于所述关键捕获路径信息从所述数据库表结构监测信息中提取所述数据库表结构变化关系信息。
3.根据权利要求1所述的基于CDC的数据模型动态信息感知监测方法,其特征在于,基于数据库推送组件将所述数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段,包括:
基于所述数据库推送组件确定所述数据库表结构变化关系信息中的多个物理模型的变化关系字段;
将各个物理模型的变化关系字段的推送信息配置日志数据列出以建立日志数据空间;其中,所述日志数据空间为多分区空间,每个分区空间对应一个分区业务标签,每个分区业务标签对应至少一个推送信息配置日志数据,所述日志数据空间的各个分区空间具有由高优先级到低优先级的业务迁移关系;
读取所述数据库推送组件的数据库推送历史信息,根据所述日志数据空间从所述数据库推送历史信息中提取出所述数据库推送组件对应的推送行为列表;
建立所述推送行为列表与所述日志数据空间之间的日志分析抽取模板,根据该日志分析抽取模板生成推送信息配置事件分布序列;其中,根据该日志分析抽取模板生成推送信息配置事件分布序列,包括:
将推送行为列表转换为多个推送行为服务节点序列,分别生成每个推送行为服务节点序列的至少一个聚类推送字段路径特征;
获取所述推送行为列表的互不重复的聚类推送字段路径特征构成聚类推送字段传递集,将所述聚类推送字段传递集中的各个聚类推送字段路径特征映射到所述日志数据空间中,组成推送信息配置事件分布序列;
将所述数据库推送组件的数据库推送历史信息中包含的推送信息配置日志数据与所述推送信息配置事件分布序列中的各个推送信息配置日志数据进行依次逐一对比;
在依次逐一对比过程中,若一个聚类推送字段路径特征的所有推送信息配置日志数据均包含在所述数据库推送组件的数据库推送历史信息中,则将该聚类推送字段路径特征记录为所述数据库推送组件的事件划分路径;
根据所述数据库推送组件的各个事件划分路径,将所述物理模型的变化关系字段聚类为多个聚类推送字段。
4.根据权利要求3所述的基于CDC的数据模型动态信息感知监测方法,其特征在于,对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果,包括:
确定每个聚类推送字段的推送配置触发节点和推送配置关联节点,在获取到所述推送配置触发节点与所述推送配置关联节点之后,获取所述推送配置触发节点的第一推送信息配置对象和所述推送配置关联节点的第二推送信息配置对象,其中,所述推送配置触发节点中包括第一订阅传递信息,所述推送配置关联节点中包括第二订阅传递信息;
获取所述第一推送信息配置对象中的变更字段推送信息配置数据集与所述第二推送信息配置对象中的变更字段推送信息配置数据集,得到变更推送信息配置列表;
确定所述变更推送信息配置列表中的任意两个关联数据集之间的变更推送配置表属性,得到变更推送配置表属性分布信息;
将所述变更推送配置表属性分布信息中的匹配预设变更推送配置表属性的变更推送配置表属性调整为预设变更推送配置表属性,得到更新属性分布信息;
根据所述更新属性分布信息、所述第一订阅传递信息以及所述第二订阅传递信息提取每个聚类推送字段对应的字段业务特征集合;
根据每个聚类推送字段的推送信息配置时序清单中的推送配置强度从预设的多个数据库中确定出与所述推送配置强度相对应的推送对象;其中,所述聚类推送字段、所述推送对象和所述字段业务特征集合互相之间一一对应;
确定每组字段业务特征集合与对应的推送对象之间的推送信息配置索引信息,通过所述推送信息配置索引信息在所述推送对象中查询与每组字段业务特征集合对应的推送配置匹配信息列表;
将每组字段业务特征集合与对应的推送配置匹配信息列表进行关联度比较得到相关性参数,根据所述相关性参数确定每组字段业务特征集合的推送信息配置结果;其中,当相关性参数达到设定相关性参数时,确定对应的推送信息配置结果添加成功。
5.根据权利要求1-4中任意一项所述的基于CDC的数据模型动态信息感知监测方法,其特征在于,根据所述所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将所述消息推送集合进行数据库信息推送,包括:
提取所述数据库表结构变化关系信息中的第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件;其中,所述第一字段变化活动事件为所述数据库表结构变化关系信息的时间戳变化字段对应的活动事件、所述第二字段变化活动事件为所述数据库表结构变化关系信息的业务结构变化字段对应的活动事件、所述第三字段变化活动事件为所述数据库表结构变化关系信息的表达形式变化字段对应的活动事件;
确定出所述第一字段变化活动事件对应的第一字段变化特征信息与所述第二字段变化活动事件对应的第二字段变化特征信息之间的第一字段变化关联信息以及所述第二字段变化活动事件对应的第二字段变化特征信息与所述第三字段变化活动事件对应的第三字段变化特征信息之间的第二字段变化关联信息;
针对所述第一字段变化活动事件,以所述第一字段变化特征信息为参考按照所述第一字段变化关联信息对所述第一字段变化活动事件进行更新得到第四字段变化活动事件;
针对所述第二字段变化活动事件,以所述第二字段变化特征信息为参考按照所述第二字段变化关联信息对所述第二字段变化活动事件进行更新得到第五字段变化活动事件;
分别将所述第一字段变化活动事件和所述第二字段变化活动事件、所述第一字段变化活动事件和所述第四字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件、以及所述第二字段变化活动事件和所述第五字段变化活动事件进行推送组件配置,得到第一推送组件配置结果、第二推送组件配置结果、第三推送组件配置结果和第四推送组件配置结果;
确定出所述第一推送组件配置结果和所述第二推送组件配置结果之间的第一表间关联变化值以及所述第三推送组件配置结果和所述第四推送组件配置结果之间的第二表间关联变化值;
判断所述第一表间关联变化值和所述第二表间关联变化值是否均落入表间关联变化值区间内;
若是,根据所述第一推送组件配置结果和所述第三推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
若否,分别确定出所述第一表间关联变化值和所述第二表间关联变化值与所述表间关联变化值区间的第一映射区间段和第二映射区间段;
比较所述第一映射区间段和所述第二映射区间段的大小,在所述第一映射区间段匹配所述第二映射区间段时,根据所述第一推送组件配置结果和所述第二推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
在所述第一映射区间段大于所述第二映射区间段时,根据所述第三推送组件配置结果和所述第四推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
基于所述推送配置队列订阅窗口对所述数据库表结构变化关系信息进行订阅窗口匹配得到消息推送集合,并将所述消息推送集合按照队列执行优先级进行数据库信息推送。
6.一种基于CDC的数据模型动态信息感知监测系统,其特征在于,应用于与数据发布终端通信的所述数据库服务平台,所述装置包括:
查找模块,用于根据所述数据发布终端发送的数据库表结构监测信息,查找对应的数据库表结构变化关系信息;
聚类模块,用于基于数据库推送组件将所述数据库表结构变化关系信息中的物理模型的变化关系字段聚类为多个聚类推送字段;
配置模块,用于对每个聚类推送字段进行字段业务特征提取得到每个聚类推送字段对应的字段业务特征集合,确定与划分得到的每个聚类推送字段相对应的推送对象,并采用每组字段业务特征集合对应的推送对象对该组字段业务特征集合进行推送信息配置,得到推送信息配置结果;
推送模块,用于在得到的所有推送信息配置结果均添加成功时,根据所述所有推送信息配置结果所对应的数据库推送对象生成消息推送集合,将所述消息推送集合进行数据库信息推送,并监测所述消息推送集合的增量抽取请求信息和增量数据变更信息。
7.根据权利要求6所述的基于CDC的数据模型动态信息感知监测系统,其特征在于,所述查找模块具体用于:
确定基于所述数据库表结构监测信息所解析得到的多个增量数据捕获信息;
针对所述多个增量数据捕获信息中的当前增量数据捕获信息,基于当前增量数据捕获信息在数据库服务分区内的第一捕获行为信息以及所述多个增量数据捕获信息中的各所述增量数据捕获信息在所述数据库服务分区内的第二捕获行为信息,确定当前增量数据捕获信息在所述数据库服务分区内的关键捕获对象信息;
根据当前增量数据捕获信息在两个相邻的数据库服务分区内的关键捕获对象信息确定当前增量数据捕获信息在两个相邻的数据库服务分区之间的关键捕获路径信息;
基于所述关键捕获路径信息从所述数据库表结构监测信息中提取所述数据库表结构变化关系信息。
8.根据权利要求6所述的基于CDC的数据模型动态信息感知监测系统,其特征在于,所述聚类模块具体用于:
基于所述数据库推送组件确定所述数据库表结构变化关系信息中的多个物理模型的变化关系字段;
将各个物理模型的变化关系字段的推送信息配置日志数据列出以建立日志数据空间;其中,所述日志数据空间为多分区空间,每个分区空间对应一个分区业务标签,每个分区业务标签对应至少一个推送信息配置日志数据,所述日志数据空间的各个分区空间具有由高优先级到低优先级的业务迁移关系;
读取所述数据库推送组件的数据库推送历史信息,根据所述日志数据空间从所述数据库推送历史信息中提取出所述数据库推送组件对应的推送行为列表;
建立所述推送行为列表与所述日志数据空间之间的日志分析抽取模板,根据该日志分析抽取模板生成推送信息配置事件分布序列;其中,根据该日志分析抽取模板生成推送信息配置事件分布序列,包括:
将推送行为列表转换为多个推送行为服务节点序列,分别生成每个推送行为服务节点序列的至少一个聚类推送字段路径特征;
获取所述推送行为列表的互不重复的聚类推送字段路径特征构成聚类推送字段传递集,将所述聚类推送字段传递集中的各个聚类推送字段路径特征映射到所述日志数据空间中,组成推送信息配置事件分布序列;
将所述数据库推送组件的数据库推送历史信息中包含的推送信息配置日志数据与所述推送信息配置事件分布序列中的各个推送信息配置日志数据进行依次逐一对比;
在依次逐一对比过程中,若一个聚类推送字段路径特征的所有推送信息配置日志数据均包含在所述数据库推送组件的数据库推送历史信息中,则将该聚类推送字段路径特征记录为所述数据库推送组件的事件划分路径;
根据所述数据库推送组件的各个事件划分路径,将所述物理模型的变化关系字段聚类为多个聚类推送字段。
9.根据权利要求7所述的基于CDC的数据模型动态信息感知监测系统,其特征在于,所述配置模块具体用于:
确定每个聚类推送字段的推送配置触发节点和推送配置关联节点,在获取到所述推送配置触发节点与所述推送配置关联节点之后,获取所述推送配置触发节点的第一推送信息配置对象和所述推送配置关联节点的第二推送信息配置对象,其中,所述推送配置触发节点中包括第一订阅传递信息,所述推送配置关联节点中包括第二订阅传递信息;
获取所述第一推送信息配置对象中的变更字段推送信息配置数据集与所述第二推送信息配置对象中的变更字段推送信息配置数据集,得到变更推送信息配置列表;
确定所述变更推送信息配置列表中的任意两个关联数据集之间的变更推送配置表属性,得到变更推送配置表属性分布信息;
将所述变更推送配置表属性分布信息中的匹配预设变更推送配置表属性的变更推送配置表属性调整为预设变更推送配置表属性,得到更新属性分布信息;
根据所述更新属性分布信息、所述第一订阅传递信息以及所述第二订阅传递信息提取每个聚类推送字段对应的字段业务特征集合;
根据每个聚类推送字段的推送信息配置时序清单中的推送配置强度从预设的多个数据库中确定出与所述推送配置强度相对应的推送对象;其中,所述聚类推送字段、所述推送对象和所述字段业务特征集合互相之间一一对应;
确定每组字段业务特征集合与对应的推送对象之间的推送信息配置索引信息,通过所述推送信息配置索引信息在所述推送对象中查询与每组字段业务特征集合对应的推送配置匹配信息列表;
将每组字段业务特征集合与对应的推送配置匹配信息列表进行关联度比较得到相关性参数,根据所述相关性参数确定每组字段业务特征集合的推送信息配置结果;其中,当相关性参数达到设定相关性参数时,确定对应的推送信息配置结果添加成功。
10.根据权利要求6所述的基于CDC的数据模型动态信息感知监测系统,其特征在于,所述推送模块具体用于:
提取所述数据库表结构变化关系信息中的第一字段变化活动事件、第二字段变化活动事件和第三字段变化活动事件;其中,所述第一字段变化活动事件为所述数据库表结构变化关系信息的时间戳变化字段对应的活动事件、所述第二字段变化活动事件为所述数据库表结构变化关系信息的业务结构变化字段对应的活动事件、所述第三字段变化活动事件为所述数据库表结构变化关系信息的表达形式变化字段对应的活动事件;
确定出所述第一字段变化活动事件对应的第一字段变化特征信息与所述第二字段变化活动事件对应的第二字段变化特征信息之间的第一字段变化关联信息以及所述第二字段变化活动事件对应的第二字段变化特征信息与所述第三字段变化活动事件对应的第三字段变化特征信息之间的第二字段变化关联信息;
针对所述第一字段变化活动事件,以所述第一字段变化特征信息为参考按照所述第一字段变化关联信息对所述第一字段变化活动事件进行更新得到第四字段变化活动事件;
针对所述第二字段变化活动事件,以所述第二字段变化特征信息为参考按照所述第二字段变化关联信息对所述第二字段变化活动事件进行更新得到第五字段变化活动事件;
分别将所述第一字段变化活动事件和所述第二字段变化活动事件、所述第一字段变化活动事件和所述第四字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件、以及所述第二字段变化活动事件和所述第五字段变化活动事件进行推送组件配置,得到第一推送组件配置结果、第二推送组件配置结果、第三推送组件配置结果和第四推送组件配置结果;
确定出所述第一推送组件配置结果和所述第二推送组件配置结果之间的第一表间关联变化值以及所述第三推送组件配置结果和所述第四推送组件配置结果之间的第二表间关联变化值;
判断所述第一表间关联变化值和所述第二表间关联变化值是否均落入表间关联变化值区间内;
若是,根据所述第一推送组件配置结果和所述第三推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
若否,分别确定出所述第一表间关联变化值和所述第二表间关联变化值与所述表间关联变化值区间的第一映射区间段和第二映射区间段;
比较所述第一映射区间段和所述第二映射区间段的大小,在所述第一映射区间段匹配所述第二映射区间段时,根据所述第一推送组件配置结果和所述第二推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
在所述第一映射区间段大于所述第二映射区间段时,根据所述第三推送组件配置结果和所述第四推送组件配置结果确定出针对数据库表结构变化关系信息进行订阅窗口匹配的订阅窗口匹配逻辑信息并按照数据库表结构变化关系信息对应的订阅窗口匹配逻辑信息对所述第一字段变化活动事件、所述第二字段变化活动事件和所述第三字段变化活动事件进行订阅窗口提取得到推送配置队列订阅窗口;
基于所述推送配置队列订阅窗口对所述数据库表结构变化关系信息进行订阅窗口匹配得到消息推送集合,并将所述消息推送集合按照队列执行优先级进行数据库信息推送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011544848.2A CN112579603B (zh) | 2020-12-24 | 2020-12-24 | 基于cdc的数据模型动态信息感知监测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011544848.2A CN112579603B (zh) | 2020-12-24 | 2020-12-24 | 基于cdc的数据模型动态信息感知监测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112579603A true CN112579603A (zh) | 2021-03-30 |
CN112579603B CN112579603B (zh) | 2023-11-17 |
Family
ID=75139288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011544848.2A Active CN112579603B (zh) | 2020-12-24 | 2020-12-24 | 基于cdc的数据模型动态信息感知监测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112579603B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115081679A (zh) * | 2022-05-19 | 2022-09-20 | 中核武汉核电运行技术股份有限公司 | 基于cdc的工业数据动态变化自动感知处理系统 |
WO2023227921A1 (en) * | 2022-05-23 | 2023-11-30 | Coupang Corp. | Systems and methods for database migration |
CN117290561A (zh) * | 2023-11-27 | 2023-12-26 | 北京衡石科技有限公司 | 业务状态信息反馈方法、装置、设备和计算机可读介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645072A (zh) * | 2009-08-25 | 2010-02-10 | 山东中创软件商用中间件股份有限公司 | 基于Oracle CDC技术实现的变更数据抽取方法 |
CN106844585A (zh) * | 2017-01-10 | 2017-06-13 | 广东精规划信息科技股份有限公司 | 一种基于多源物联网位置感知的时空关系分析系统 |
KR20190063835A (ko) * | 2017-11-30 | 2019-06-10 | 주식회사 리얼타임테크 | 인-메모리 데이터베이스의 실시간 데이터 변경 처리 시스템 |
CN111008189A (zh) * | 2019-11-26 | 2020-04-14 | 浙江电子口岸有限公司 | 一种动态数据模型构建方法 |
CN112069773A (zh) * | 2020-07-23 | 2020-12-11 | 北京三快在线科技有限公司 | 数据处理系统、方法、装置、电子设备和计算机可读介质 |
-
2020
- 2020-12-24 CN CN202011544848.2A patent/CN112579603B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101645072A (zh) * | 2009-08-25 | 2010-02-10 | 山东中创软件商用中间件股份有限公司 | 基于Oracle CDC技术实现的变更数据抽取方法 |
CN106844585A (zh) * | 2017-01-10 | 2017-06-13 | 广东精规划信息科技股份有限公司 | 一种基于多源物联网位置感知的时空关系分析系统 |
KR20190063835A (ko) * | 2017-11-30 | 2019-06-10 | 주식회사 리얼타임테크 | 인-메모리 데이터베이스의 실시간 데이터 변경 처리 시스템 |
CN111008189A (zh) * | 2019-11-26 | 2020-04-14 | 浙江电子口岸有限公司 | 一种动态数据模型构建方法 |
CN112069773A (zh) * | 2020-07-23 | 2020-12-11 | 北京三快在线科技有限公司 | 数据处理系统、方法、装置、电子设备和计算机可读介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115081679A (zh) * | 2022-05-19 | 2022-09-20 | 中核武汉核电运行技术股份有限公司 | 基于cdc的工业数据动态变化自动感知处理系统 |
WO2023227921A1 (en) * | 2022-05-23 | 2023-11-30 | Coupang Corp. | Systems and methods for database migration |
CN117290561A (zh) * | 2023-11-27 | 2023-12-26 | 北京衡石科技有限公司 | 业务状态信息反馈方法、装置、设备和计算机可读介质 |
CN117290561B (zh) * | 2023-11-27 | 2024-03-29 | 北京衡石科技有限公司 | 业务状态信息反馈方法、装置、设备和计算机可读介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112579603B (zh) | 2023-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112579603B (zh) | 基于cdc的数据模型动态信息感知监测方法及装置 | |
CN108052394B (zh) | 基于sql语句运行时间的资源分配的方法及计算机设备 | |
CN111339171B (zh) | 数据查询的方法、装置及设备 | |
CN111294819B (zh) | 一种网络优化方法及装置 | |
CN115269612B (zh) | 一种基于微服务的跨平台多维数据融合系统 | |
US11809406B2 (en) | Event records in a log file | |
US20190197140A1 (en) | Automation of sql tuning method and system using statistic sql pattern analysis | |
CN112434003B (zh) | 一种sql优化方法、装置、计算机设备及存储介质 | |
CN111381940B (zh) | 分布式数据处理方法及装置 | |
CN112765386A (zh) | 基于大数据和互联网的信息管理方法、系统及云服务器 | |
CN114416573A (zh) | 一种应用程序的缺陷分析方法、装置、设备及介质 | |
CN107330031B (zh) | 一种数据存储的方法、装置及电子设备 | |
CN111090401B (zh) | 存储设备性能预测方法及装置 | |
CN111125226B (zh) | 一种配置数据采集方法及装置 | |
CN111339720B (zh) | 基于大数据采集的芯片信息生成方法、装置及计算机设备 | |
CN111932076A (zh) | 一种规则配置和发布方法、装置及计算设备 | |
CN114579809A (zh) | 事件分析方法、装置、电子设备及存储介质 | |
CN112688947B (zh) | 基于互联网的网络通信信息智能监测方法及系统 | |
CN114860608A (zh) | 基于场景构建的系统自动化测试方法、装置、设备及介质 | |
CN112132664B (zh) | 基于大数据与电子商城平台的购物数据共享方法及系统 | |
CN113946717A (zh) | 一种子图指标特征获得方法、装置、设备及存储介质 | |
CN110177006B (zh) | 基于接口预测模型的节点测试方法及装置 | |
CN113868141A (zh) | 数据测试方法、装置、电子设备及存储介质 | |
CN112612679A (zh) | 系统运行状态监控方法、装置、计算机设备和存储介质 | |
CN112948687B (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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Room 1105, 11th Floor, Shining Building, No. 35 Xueyuan Road, Haidian District, Beijing, 100083 Applicant after: Beijing Zhixiang Information Technology Co.,Ltd. Address before: 100055 No.6, Xili, Malian Road, Xicheng District, Beijing Applicant before: Beijing Zhixiang Energy Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |