[发明专利]一种基于Flink的实时SQL扩展处理方法及装置在审
申请号: | 201910902237.1 | 申请日: | 2019-09-24 |
公开(公告)号: | CN110704474A | 公开(公告)日: | 2020-01-17 |
发明(设计)人: | 徐超 | 申请(专利权)人: | 杭州玳数科技有限公司 |
主分类号: | G06F16/242 | 分类号: | G06F16/242 |
代理公司: | 32231 常州佰业腾飞专利代理事务所(普通合伙) | 代理人: | 李珍 |
地址: | 310030 浙江省杭州市西湖区*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 解析 读取 缓存策略 扩展处理 输出方式 集群 创建 分类 | ||
本发明提供了一种基于Flink的实时SQL扩展处理方法及装置,其中方法包括:获取SQL语句信息;将SQL语句信息进行分类;如果为SourceTable,则对SQL语句信息进行第一解析,生成SourceTableInfo;根据解析出的SourceTableInfo,创建kafka连接;如果为SideTable,则对SQL语句信息进行第二解析,生成SideTableInfo;根据解析出的SideTableInfo,读取缓存策略属性;如果为SinkTable,则对SQL语句信息进行第三解析,生成SinkTableInfo;根据解析出的SinkTableInfo,创建输出方式;提交到Flink集群。
技术领域
本发明涉及大数据技术数据处理技术领域,尤其涉及一种基于Flink的实时SQL扩展处理方法及装置。
背景技术
目前,Flink(网页代码标记)是一种互联网广泛使用的实时计算框架,具有流和批统一的抽象,并且基于其的结构特征具有高吞吐和低延迟的特性。
不过由于其SQL(Structured Query Language,结构化查询语言)语法的不完整性。数据开发在使用的过程中需要根据其提供的Api(Application Program Interface,应用程序接口)接口编写Source和Sink,异常繁琐,并且在需要关联到外部数据源的时候没有提供SQL相关的实现方式,因此数据开发在生产过程中使用开源的Flink直接编写SQL作为实时的数据分析需要额外较大的工作量。
发明内容
本发明旨在提供一种克服上述问题之一或者至少部分地解决上述任一问题的基于Flink的实时SQL扩展处理方法及装置。
为达到上述目的,本发明的技术方案具体是这样实现的:
本发明的一个方面提供了一种基于Flink的实时SQL扩展处理方法,包括:获取SQL语句信息;将SQL语句信息进行分类,得到以下至少之一:SourceTable、SideTable和SinkTable;如果SQL语句信息的类型为SourceTable,则对SQL语句信息进行第一解析,生成SourceTableInfo;根据解析出的SourceTableInfo,创建kafka连接;如果SQL语句信息的类型为SideTable,则对SQL语句信息进行第二解析,生成SideTableInfo;根据解析出的SideTableInfo,创建缓存策略属性;如果SQL语句信息的类型为SinkTable,则对SQL语句信息进行第三解析,生成SinkTableInfo;根据解析出的SinkTableInfo,创建输出方式;提交到Flink集群。
其中,方法还包括:定义预设语法;其中,预设语法包括:SOURCE表语法、Sink语法、维表语法以及自定义函数语法;第一解析至少包括利用SOURCE表语法进行解析;第二解析至少包括利用维表语法进行解析;第三解析至少包括利用Sink语法进行解析。
其中,第一解析包括:解析注册的表名称,解析字段信息,解析输入源kafka连接信息,解析指定的watermarker字段和允许的延迟信息;第二解析包括:解析注册的表名称,解析字段信息,解析外部数据源的连接信息,解析维表的缓存策略;第三解析包括:解析注册的表名称,解析字段名称,解析输出的目标连接信息,数据刷新的频率和数据量。
其中,维表的缓存策略包括:LRU和None缓存策略和All缓存策略。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州玳数科技有限公司,未经杭州玳数科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910902237.1/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种数据库查询方法和装置
- 下一篇:一种ETL加载表结构的比对方法及系统