[发明专利]一种基于元数据的数据血缘关系分析方法及系统在审
申请号: | 201910850181.X | 申请日: | 2019-09-09 |
公开(公告)号: | CN110555032A | 公开(公告)日: | 2019-12-10 |
发明(设计)人: | 郑波;张强;饶鑫淞;杨川明 | 申请(专利权)人: | 北京搜狐新媒体信息技术有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242;G06F16/22;G06F16/28 |
代理公司: | 11227 北京集佳知识产权代理有限公司 | 代理人: | 古利兰 |
地址: | 100190 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 遍历 结构化查询语言 抽象语法树 查询语言 词法规则 血缘关系 语法规则 组成单元 任务树 优化器 字段 解析 分析方法及系统 输入输出表 语法分析器 查询 定义结构 关系梳理 逻辑层 物理层 元数据 语句 分析 抽象 翻译 转化 | ||
1.一种基于元数据的数据血缘关系分析方法,其特征在于,包括:
通过开源语法分析器定义结构化查询语言的词法规则和语法规则,并对所述结构化查询语言的词法规则和语法规则进行解析,将结构化查询语言转化为抽象语法树;
遍历所述抽象语法树,抽象出查询的基本组成单元;
遍历所述查询的基本组成单元,生成执行操作树;
通过逻辑层优化器进行所述执行操作树变换;
遍历所述执行操作树,翻译为任务树;
通过物理层优化器进行所述任务树的变换,生成最终的执行计划;
基于所述最终的执行计划对Hive查询语言的语句进行解析,分析出输入输出表、字段和相应的处理条件。
2.根据权利要求1所述的方法,其特征在于,所述查询的基本组成单元为结构化查询语言基本的组成单元,包括:输入源、计算过程和输出。
3.根据权利要求1所述的方法,其特征在于,所述遍历所述抽象语法树,抽象出查询的基本组成单元,包括:
先序遍历所述抽象语法树,将不同的Token节点保存到相应的属性中。
4.根据权利要求1所述的方法,其特征在于,所述遍历所述查询的基本组成单元,生成执行操作树,包括:
遍历上一个过程中生成的QB和QBParseInfo对象的保存语法的属性,生成执行操作树。
5.一种基于元数据的数据血缘关系分析系统,其特征在于,包括:
第一解析模块,用于通过开源语法分析器定义结构化查询语言的词法规则和语法规则,并对所述结构化查询语言的词法规则和语法规则进行解析,将结构化查询语言转化为抽象语法树;
第一遍历模块,用于遍历所述抽象语法树,抽象出查询的基本组成单元;
第二遍历模块,用于遍历所述查询的基本组成单元,生成执行操作树;
第一变换模块,用于通过逻辑层优化器进行所述执行操作树变换;
第三遍历模块,用于遍历所述执行操作树,翻译为任务树;
第二变换模块,用于通过物理层优化器进行所述任务树的变换,生成最终的执行计划;
第二解析模块,用于基于所述最终的执行计划对Hive查询语言的语句进行解析,分析出输入输出表、字段和相应的处理条件。
6.根据权利要求5所述的系统,其特征在于,所述查询的基本组成单元为结构化查询语言基本的组成单元,包括:输入源、计算过程和输出。
7.根据权利要求5所述的系统,其特征在于,所述第一遍历模块具体用于:
先序遍历所述抽象语法树,将不同的Token节点保存到相应的属性中。
8.根据权利要求6所述的系统,其特征在于,所述第二遍历模块具体用于:
遍历上一个过程中生成的QB和QBParseInfo对象的保存语法的属性,生成执行操作树。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京搜狐新媒体信息技术有限公司,未经北京搜狐新媒体信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910850181.X/1.html,转载请声明来源钻瓜专利网。