数据可视化查询语言系统技术方案

技术编号:14704702 阅读:109 留言:0更新日期:2017-02-25 04:30
本发明专利技术公开了数据可视化查询语言系统,包括:DVL构建器,所述将用户操作模型和数据模型构建为DVL语句,所述DVL构建器连接有数据模块模块,操作模型模块以及DVL语法规则模块;DVL解析引擎模块连接有DVL构建器以将DVL语句解析为执行子过程的执行计划树;还包括数据分析引擎模块将执行子过程的执行计划树按照执行顺序逐一执行,融合图形信息和数据信息,生成图形数据模型;所述获取的图形数据模块送至可视化引擎模块,可视化引擎模块将图形模型数据渲染为用户可见的BI图表。此发明专利技术是将系统前端可视化图表展现和后端数据分析过程进行了语言(DVL)级别的隔离,从而实现了图形展现和后端数据处理的完全解耦,并可提对外提供语言级别的标准数据可视化接口。

【技术实现步骤摘要】

本专利技术属于数据可视化
和计算机语言系统领域,具体涉及数据可视化查询语言系统
技术介绍
采用领域模型语言技术进行语言定义,基于Antlr技术组件开发,使用词法、语法、语义分析技术进行DVL语言解析和执行。数据图形化过程一般分为数据统计、图元信息(每个图形要显示必须要有的图形显示所需的描述性信息)构建、图形渲染3个过程,而数据统计和图元信息构建往往被割裂到两个服务或组件中,导致系统接口种类和数量过多,给系统构架和使用带来难度。使用领域模型语言技术定义的DVL可将以上两个过程结合,对外提供统一的语言接口,在系统内部使用Antlr技术组件进行DVL解析,从而达到统计过程图元构建过程一体化,降低系统对外耦合度,并提升系统的适应性。
技术实现思路
本专利技术的目的是提供数据可视化查询语言系统,简化数据可视化系统的设计复杂度,扩展复杂度和开发效率,并提供灵活的基于语言级别的人机交互方式。为达到上述目的,本专利技术的技术方案如下:数据可视化查询语言系统,包括:DVL构建器,所述将用户操作模型和数据模型构建为DVL语句,所述DVL构建器连接有数据模块模块,操作模型模块以及DVL语法规则模块;DVL解析引擎模块,所述DVL解析引擎模块连接有DVL构建器以将DVL语句解析为执行子过程的执行计划树;还包括数据分析引擎模块,所述数据分析引擎模块将执行子过程的执行计划树按照执行顺序逐一执行,融合图形信息和数据信息,生成图形数据模型;所述获取的图形数据模块送至可视化引擎模块,所述可视化引擎模块将图形模型数据渲染为用户可见的BI图表。在本专利技术的一个优选实施例中,所述DVL语句包括三段,图形段、图形数据段和数据段,所述图形段描述图形显示方式,图形数据段描述图形数据格式,数据段描述数据最终来源。在本专利技术的一个优选实施例中,在用户熟悉DVL语句的前提下,由用户编写DVL语句,并提交系统解析执行,返回用户所希望的展现图形。通过上述技术方案,本专利技术的有益效果是:本专利技术通过定义接口语言(DVL)的方式,提供软件前端展示和后端数据处理的结合接口,完全实现了软件的可视化图表展示和后端数据处理的解耦,从而减小了和第三方系统的集成复杂度,减少系统间迁移成本。对于人机交互部分定义了标准语言DVL,可通过输入DVL语言自定义的可视化图表类型和样式,强化了人机交互过程的灵活性和标准性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术整体技术结构图;图2是本专利技术的架构图;图3是本专利技术的DVL语法总体结构图;具体实施方式为了使本专利技术实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本专利技术。参照图1和图2所示,基于领域模型语言技术的数据可视化查询语言系统,包括:DVL构建器,所述将用户操作模型和数据模型构建为DVL语句,所述DVL构建器连接有数据模块模块,操作模型模块以及DVL语法规则模块;DVL解析引擎模块,所述DVL解析引擎模块连接有DVL构建器以将DVL语句解析为执行子过程的执行计划树;还包括数据分析引擎模块,所述数据分析引擎模块将执行子过程的执行计划树按照执行顺序逐一执行,融合图形信息和数据信息,生成图形数据模型;所述获取的图形数据模块送至可视化引擎模块,所述可视化引擎模块将图形模型数据渲染为用户可见的BI图表。上述DVL(数据可视化查询语言)构建器,该构建器在系统中以服务的方式提供系统内部的DVL构建功能,该服务融合数据模型、操作模型、并依据DVL语法规则构建DVL语句。DVL构建过程分为两个层次:1)在用户熟悉DVL语法规则的前提下,由用户编写DVL语句,并提交系统解析执行,返回用户所希望的展现图形。2)系统提供DVL构建工具,通过交互界面由用户根据目的进行属性、图形类型或数据图形元素选择,由构建工具根据用户操作和语法规则进行DVL的构建并提交系统解析。融合过程逻辑如下:1)首先将操作模型中的操作和DVL中图形段和图形数据段行对应,图形段代表了用户的对图形类型以及对应图形显示基本参数的定义,例如:显示为饼图,并且标题为“某某单位销售额分布”,图形数据段代表了用户对该图形的数据显示方式的定义,例如:X轴显示销量数据,Y轴显示区域名称等;2)然后根据用户选择的数据源,表,字段,条件,构建出DVL中的数据段,即抽取该数据所需的标准SQL语句。具体地,DVL语法规则属于系统预定义规则,由系统使用者或第三方系统接入者遵守,系统内部根据语法规则进行合法性验证和解析。DVL语言总体结构分为三段,即图形段、图形数据段和数据段,其中图形段(chart_define_clause)描述图形显示方式,图形数据段(chart_data_clause)描述图形数据格式,数据段(sql_stat)描述数据最终来源。通过以上三段构成整个DVL语言语法规则。DVL解析引擎模块,该引擎在系统中以服务的方式提供系统内部的DVL解析功能,其功能将词法,语法以及语义解析为子过程执行计划树,该执行计划树经过该功能的优化,其执行顺序会在其逻辑正确的情况下采取最优执行顺序。在数据库数据提取的接口定义过程中,不同数据库以不同Visitor对象的方式进行执行,确保系统对所有数据库类型的接口级别的适配。解析引擎服务使用Antlr技术组件解析DVL语句,其中解析规则由DVL语言的语法和词法定义,具体以词法和语法定义文件的形式提供给Antlr技术组件,Antlr技术组件将语法和词法定义文件解析为基于Java编程语言的基础程序,而DVL解析引擎是以继承该Java类的形式并通过覆盖方法的方式实现,从而对外提供DVL解析服务。数据分析引擎模块,该引擎在系统中以服务的方式提供系统内部的子过程执行计划树的执行,包括从数据库提取数据,根据图形信息和数据信息构建图形模型数据两个过程。数据库提取数据过程将标准SQL子句翻译为对应数据库类型的可执行SQL语句,例如:mysql、oracle、sqlserver等。各数据库类型都具有不同的解析定义程序,此程序为词法语法解析基础Java类(通过Antlr技术组件生成)的不同继承,解析完成后提交对应数据库执行,并返回数据。根据图形信息和数据信息构建图形模型数据过程,该过程将图形信息中的图形类型,图形基本参数对应到不同图形的模型翻译程序中,对应翻译程序将图形显示参数以及数据信息进行组合,输出为图形显示所需的XML数据(图形模型数据),提交可视化引擎进行图表渲染。可视化引擎服务模块,该服务将图形模型数据渲染为可视化图表,为确保图形组件的可替换性,系统将模型数据格式和图表组件本身进行了隔离。参照图2,该图中大写单词代表DVL中的关键字,小写部分代表子句;结构中的顺序连接代表必须定义部分,分支连接代表可选定义部分。总体分为3个部分,1)图表类型和样式,2)图表数据格式,3)数据抽取所需SQL语句,具体地:其中:PLOT和CREATE为DVL关键字,chart_define_clause为图形类型和样式定义部分,chart_d本文档来自技高网...
数据可视化查询语言系统

【技术保护点】
数据可视化查询语言系统,其特征在于,包括:DVL构建器,所述将用户操作模型和数据模型构建为DVL语句,所述DVL构建器连接有数据模块模块,操作模型模块以及DVL语法规则模块;DVL解析引擎模块,所述DVL解析引擎模块连接有DVL构建器以将DVL语句解析为执行子过程的执行计划树;还包括数据分析引擎模块,所述数据分析引擎模块将执行子过程的执行计划树按照执行顺序逐一执行,融合图形信息和数据信息,生成图形数据模型;所述获取的图形数据模块送至可视化引擎模块,所述可视化引擎模块将图形模型数据渲染为用户可见的BI图表。

【技术特征摘要】
1.数据可视化查询语言系统,其特征在于,包括:DVL构建器,所述将用户操作模型和数据模型构建为DVL语句,所述DVL构建器连接有数据模块模块,操作模型模块以及DVL语法规则模块;DVL解析引擎模块,所述DVL解析引擎模块连接有DVL构建器以将DVL语句解析为执行子过程的执行计划树;还包括数据分析引擎模块,所述数据分析引擎模块将执行子过程的执行计划树按照执行顺序逐一执行,融合图形信息和数据信息,生成图形数据模型;所述获取的图形数据...

【专利技术属性】
技术研发人员:程宏亮肖斌王锟郭联伟苏魁
申请(专利权)人:西安美林数据技术股份有限公司
类型:发明
国别省市:陕西;61

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

1