[发明专利]基于Apache Calcite数据血缘和影响分析的方法及系统在审
| 申请号: | 202211404603.9 | 申请日: | 2022-11-10 |
| 公开(公告)号: | CN115544062A | 公开(公告)日: | 2022-12-30 |
| 发明(设计)人: | 冯明亮;周全;尤毅;沈明佶;王园行;赵昊宇;彭广亮;顾安懿;顾杰;李慧颖;徐羽沁;李天举;罗琳;吕路明 | 申请(专利权)人: | 兴业银行股份有限公司;兴业数字金融服务(上海)股份有限公司 |
| 主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F40/186;G06F40/205;G06F40/253 |
| 代理公司: | 上海段和段律师事务所 31334 | 代理人: | 黄磊 |
| 地址: | 350014 福建省福州*** | 国省代码: | 福建;35 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 apache calcite 数据 血缘 影响 分析 方法 系统 | ||
本发明提供了一种基于Apache Calcite数据血缘和影响分析的方法及系统,包括:根据采集的元数据,获取元数据信息,其中,所述元数据信息包括表、字段;集成Apache Calcite,对所述元数据信息的SQL字符串进行词法和语法分析,转化为抽象语法树AST;利用抽象语法树AST获取表、字段之间的关系图谱;根据所述关系图谱,进行表级、字段级的血缘分析与影响分析。本发明解析Greenplum、GaussDB等多种不同类型数据库SQL,针对不同数据库不同的关键字、函数等特殊语法,具有高度可扩展性,能够支持解析多种数据库的特殊语法。
技术领域
本发明涉及数据分析技术领域,具体地,涉及基于动态数据管理框架ApacheCalcite的数据血缘分析和影响分析的方法及系统。
背景技术
数据血缘分析和影响分析是数据管理和数据治理工具的核心功能,通过建立数据之间的血缘关系,一方面可以追溯下游数据的来源与加工逻辑,另一方面可以快速分析上游数据发生变化时的影响范围,从而能够及时的进行变更影响预警及配套改造。ApacheCalcite是提供了标准SQL语言、多种查询优化和连接各种数据源的基础框架,能够接入多种数据并实现使用SQL查询。但是,Apache Calcite只支持解析常规SQL,对于不同类型数据库的SQL解析会报错或者解析结果不完全。
发明内容
针对现有技术中的缺陷,本发明的目的是提供一种基于Apache Calcite的数据血缘分析和影响分析的方法及系统。
根据本发明提供的一种基于Apache Calcite数据血缘和影响分析的方法,包括:
步骤S1:根据采集的元数据,获取元数据信息,其中,所述元数据信息包括表、字段;
步骤S2:集成Apache Calcite,对所述元数据信息的SQL字符串进行词法和语法分析,转化为抽象语法树AST;
步骤S3:利用抽象语法树AST获取表、字段之间的关系图谱;
步骤S4:根据所述关系图谱,进行表级、字段级的血缘分析与影响分析。
优选地,所述步骤2包括如下步骤:
步骤S2.1:对Greenplum、GaussDB等数据库中的特殊语法进行改造适配,将SQL语句解析为抽象语法树AST;
步骤S2.2:利用自定义解析器,解析抽象语法树AST的节点对象,获取字段血缘依赖关系,写入指定的数据表中,所述解析包括:
对抽象语法树AST中查询、关联节点解析,获取字段与表之间的血缘依赖关系以及依赖详情;
对子查询中的字段,递归解析字段所属物理表信息,获取血缘依赖关系;
其中,通过Calcite将SQL语句不同部分解析封装为不同的节点对象,通过解析节点对象信息从而获取对应的血缘依赖关系。
优选地,所述自定义解析器包括Calcite SQL解析器;在生成Calcite SQL解析器的过程中,调整config.fmpp文件,以支持所需关键字;其中,config.fmpp文件是Calcite模板配置文件,完成FreeMarker和JavaCC的相关配置;调整templates文件夹中的Parser.jj文件中的解析规则来适应所需数据库解析,使用自定义解析函数满足特殊语法规则解析;其中,Parser.jj文件是JavaCC解析器所需要的解析核心文件;fmpp根据配置文件、模板文件和附加模板文件,自动生成解析文件Parser.jj,经过编译后生成SQL解析器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于兴业银行股份有限公司;兴业数字金融服务(上海)股份有限公司,未经兴业银行股份有限公司;兴业数字金融服务(上海)股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211404603.9/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





