一种基于递归算法的SQL自动生成系统与方法技术方案

技术编号:31381775 阅读:42 留言:0更新日期:2021-12-15 11:30
本发明专利技术涉及数据处理技术领域,具体涉及一种基于递归算法的SQL自动生成系统与方法。该统包括数据分析可视化DAG子系统和SQL自动生成子系统;所述数据分析可视化DAG子系统用于提供图形化拖拉拽的方式创建用于数据分析的DAG图,并将DAG图转换为Json数据,所述SQL自动生成子系统用于将Json数据解析为实际可执行的SQL语句。本发明专利技术能够以图形化拖拉拽的方式创建DAG图,并将DAG图转换为特定格式的Json数据,将DAG图解析为实际可执行的SQL语句,降低了SQL语句生成及汇总的复杂程度,可以支持生成各种复杂SQL语句,避免了手动书写出错的问题,提高了工作效率,使数据的准确性得到很高的提升。的提升。的提升。

【技术实现步骤摘要】
一种基于递归算法的SQL自动生成系统与方法


[0001]本专利技术涉及数据处理
,具体涉及一种基于递归算法的SQL自动生成系统与方法。

技术介绍

[0002]随着科技的不断进步以及信息化的进程加快,大数据的应用日益广泛,大数据与各类应用越来越密不可分,大数据离不开各类数据库和SQL语言的支撑,数据库的应用也随之越来越普遍。而SQL为结构化查询语言,是一种特殊目的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。
[0003]SQL作为高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
[0004]但是,在大数据的应用中,为了满足汇总数据需求,在应用系统开发的过程中需要定制大量的汇总任务来完成该工作,传统的方式是通过手动写SQL语句来完成该工作,但是手动书本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于递归算法的SQL自动生成系统;其特征在于,包括数据分析可视化DAG子系统和SQL自动生成子系统:所述数据分析可视化DAG子系统,包含基于JDBC的多数据源元数据服务模块、组件化拖拉拽服务模块以及DAG图Json转换服务模块,所述数据分析可视化DAG子系统用于提供图形化拖拉拽的方式创建用于数据分析的DAG图,并将DAG图转换为Json数据;所述SQL自动生成子系统用于将Json数据解析为实际可执行的SQL语句,所述SQL自动生成子系统包括Stage动态切割模块以及基于递归算法的SQL自动生成模块。2.如权利要求1所述的基于递归算法的SQL自动生成系统,其特征在于,所述基于JDBC的多数据源元数据服务模块通过JDBC与常见的数据库系统建立连接,提供元数据查询服务,所述基于JDBC的多数据源元数据服务模块的服务内容包括:查询数据库实例列表、查询Table列表以及查询Table字段信息,所述基于JDBC的多数据源元数据服务模块中的元数据查询服务用于给DAG图绘制提供必要的元数据信息。3.如权利要求2所述的基于递归算法的SQL自动生成系统,其特征在于,所述组件化拖拉拽服务模块用于提供一个通用的可视化界面,通过所述可视化界面以及元数据服务,通过拖拉拽的方式生成用于数据分析的DAG图;所述组件化拖拉拽服务模块的服务功能包括:提供用于数据分析的拖拉拽组件,展示数据库实例列表以及展示Table列表;其中,所述拖拉拽组件包括表输入组件、表输出组件、条件过滤组件、字段选择组件、分组聚合组件、连接组件以及联合组件,所述拖拉拽组件的各组件单独设置属性,组件之间通过连线进行组合,形成DAG图。4.如权利要求3所述的基于递归算法的SQL自动生成系统,其特征在于,所述DAG图Json转换服务模块用于可动态地在可视化界面中,通过所述拖拉拽组件生成的DAG图转换为Json数据格式,所述Json数据格式中,每个组件都有一个唯一id,通过type属性表示拖拉拽组件中不同组件的类型,拖拉拽组件的组件之间通过to属性进行关联,to属性类型为List,List元素的取值为其下游组件的id。5.如权利要求4所述的基于递归算法的SQL自动生成系统,其特征在于,所述Stage动态切割模块用于将DAG图中的组件切割成有先后关系的Stage,每个Stage包含一到多个组件;所述基于递归算法的SQL自动生成模块基于所述Stage动态切割模块,将DAG图解析为实际执行的SQL语句。6.一种基于递归算法的SQL自动生成方法,其特征在于,所述基于递归算法的SQL自动生成方法适用于权利要求1

5中任意一项所述基于递归算法的SQL自动生成系统;该方法包括以下步骤:提供图形化拖拉拽的方式创建用于数据分析的DAG图,并将DAG图转换为Json数据;将Json数据解析为实际可执行的SQL语句。7.如权利要求6所述的基于递归算法的SQL自动生成方法,其特征在于,所述提供图形化拖拉拽的方式创建用于数据分析的DAG图,并将DAG图转换为Json数据的方法,包括:通过JDBC与常见的数据库系统建立连接,提供元数据查询服务,进行基于JDBC的多数据源元数据服务;提供一个通用的可视化界面,通过所述可视化界面以及元数据服务,通过拖拉拽的方式生成用于数据分析的DAG图,进行组件化拖拉拽服务;
可动态地在可视化界面中,...

【专利技术属性】
技术研发人员:周成梅雨孙禄明
申请(专利权)人:全景智联武汉科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1