[发明专利]基于SQL语言的实时计算程序的集成开发及执行系统有效
申请号: | 201911394328.5 | 申请日: | 2019-12-30 |
公开(公告)号: | CN111158653B | 公开(公告)日: | 2023-04-18 |
发明(设计)人: | 肖义;张治国;黄贤峰 | 申请(专利权)人: | 上海金仕达软件科技股份有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/41;G06F16/242 |
代理公司: | 上海华工专利事务所(普通合伙) 31104 | 代理人: | 缪利明 |
地址: | 201203 上海市浦*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 sql 语言 实时 计算 程序 集成 开发 执行 系统 | ||
本发明公开了一种基于SQL语言的实时计算程序的集成开发及执行系统,包括部署在服务器中的开发平台,SQL解析引擎,SQL执行引擎,以及实时SQL语法规则模块,其中:所述开发平台包括数据表管理模块、任务开发模块、任务执行模块;该开发平台还提供web交互页面,且通过客户端访问该开发平台,完成各项交互操作;所述SQL解析引擎将SQL文件解析,以生成相对应的执行计划;所述SQL执行引擎获取所述执行计划,下发至分布式计算平台执行所述执行计划,以完成实时计算任务。本发明中定义了完整了实时SQL语法,通过所述集成开发及执行系统可实现实时计算程序的快速开发,且提供了相应的自动编译环境并借助高效的分布式计算平台实现实时计算,还能够进行任务监控。
技术领域
本发明属于实时计算程序开发与执行系统领域,具体为一种基于SQL语言的实时计算程序的集成开发及执行系统。
背景技术
在一些场景下,需要对不断发生变化的数据进行各种逻辑计算,以在较短的时间内完成数据的统计、监控和分析功能,因此需要开发相应的实时计算程序。常见的实时程序都是使用底层程序设计语言进行开发,如C++语言、Java语言。
SQL语言是一种数据库查询和程序设计语言,用于开发数据库查询计算逻辑,是一种传播较广,使用人群较多,便于学习的编程语言。使用SQL语言来表达实时计算逻辑并开发实时计算程序可以极大地提高工作效率。
现有使用SQL语言进行实时计算程序开发的方法,没有完整的语法定义,例如只是开发一个简单的SQL识别器,只能识别简单的逻辑,不能进行复杂计算逻辑的处理,也不能形成自动化的编译环境。
发明内容
为了克服上述现有技术的缺陷,本发明提供了一种基于SQL语言的实时计算程序的集成开发及执行系统。
本发明解决其技术问题所采用的技术方案是:一种基于SQL语言的实时计算程序的集成开发及执行系统,包括部署在服务器中的开发平台,SQL解析引擎,SQL执行引擎,以及实时SQL语法规则模块,其中:
所述实时SQL语法规则配置模块用于配置实时SQL语法规则;
所述开发平台包括:
1)数据表管理模块,用于管理数据表;
2)任务开发模块,包括实时SQL编辑器,用于实时计算程序的代码编辑,通过实时SQL语法完成所述实时计算程序的代码开发后可生成SQL文件;
3)任务执行模块,用于调用所诉SQL执行引擎,或者调用所述SQL解析引擎及SQL执行引擎以执行实时计算任务;
该开发平台还提供web交互页面,且通过客户端访问该开发平台,完成各项交互操作;
所述SQL解析引擎包括语法检查单元、语法分析单元以及语法树分析单元;
所述语法检查单元用于执行步骤:
S1、获取所述SQL文件,并根据分隔符“;”将所述SQL文件拆分为若干语法步骤;
S2、根据所述实时SQL语法规则判断所述若干语法步骤是否符合实时SQL语法,若所有语法步骤均符合,则生成与所述若干语法步骤对应的若干SQL步骤文件;否则结束解析操作;
所述语法分析单元用于执行步骤:
S3、根据预设语法树将所述各SQL步骤文件的解析为对应的语法树对象,得到若干语法树;
所述语法树分析单元用于执行步骤:
S4、遍历所述若干语法树对象且将其转换为执行计划;
S5、判断执行计划是否符合预期设定,若符合,则输出所述执行计划;否则结束解析操作;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海金仕达软件科技股份有限公司,未经上海金仕达软件科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911394328.5/2.html,转载请声明来源钻瓜专利网。