掌桥专利:专业的专利平台
掌桥专利
首页

一种用于数据可视化的多数据源接入方法及系统

文献发布时间:2024-04-18 19:53:33


一种用于数据可视化的多数据源接入方法及系统

技术领域

本发明属于数据可视化技术领域,具体涉及一种用于数据可视化的多数据源接入方法及系统。

背景技术

数据可视化(英語:Data visualization)被许多学科视为与视觉传达含义相同的现代概念。它涉及到数据的可视化表示的创建和研究。

为了清晰有效地传递信息,数据可视化使用统计图形、图表、信息图表和其他工具。可以使用点、线或条对数字数据进行编码,以便在视觉上传达定量信息。有效的可视化可以帮助用户分析和推理数据和证据。它使复杂的数据更容易理解和使用。用户可能有特定的分析任务(如进行比较或理解因果关系),以及该任务要遵循的图形设计原则。表格通常用于用户查找特定的度量,而各种类型的图表用于显示一个或多个变量的数据中的模式或关系。

数据可视化既是一门艺术也是一门科学。有些人认为它是描述统计学的一个分支,但也有些人认为它是一个扎根理论开发工具。互联网活动产生的数据量的增加和环境中传感器数量的增加被称为大数据或物联网。处理、分析和交流这些数据对数据可视化来说是分析方面的挑战。

数据可视化是关于数据之视觉表现形式的研究,这种数据的视觉表现形式也随着行业不断快速发展,相对于传统图表与BI数据仪表盘,以更加时效性、多样性、直观生动和友好的形式呈现数据可视化效果,成为日常工作中的急迫需求;但是数据可视化效果的呈现也表现出其不可复用性的一面。现有数据可视化多采用一次性设计,其呈现效果的数据来源是特定的,数据类型是特定的,一旦数据来源发生变化、减少或增加数据类型,原来已经开发完成的数据可视化的交付物就不能真实反映出其数据价值,需要数据研发人员重新针对新数据源数据类型进行重新定制开发数据可视化组件对应数据类型,以实现支持该种数据类型的接入处理,造成了周期长、工作量大,导致存在开发效率低、成本高的问题。

比如,面对不同的客户,可视化数据相同,但是数据来源不同,现有技术中总是针对客户的数据来源进行修改,带来额外的工作量,导致工作效率低。

另一方面,在数据可视化交付的不同阶段数据源类型是不一样的,譬如:

1)在开发阶段中,可视化组件一般是接入静态JSON数据;

2)在测试阶段中,此可视化组件是测试数据库环境下的动态数据;

3)在交付实施阶段中,此可视化组件的数据来源可能是数据仓库中数据集中低代码数据,也可能是SQL数据,更可能是websocket数据或者是MQTT实时数据。

总之,目前针对不同的数据来源,需要数据研发人员重新针对新数据源数据类型进行重新定制开发数据可视化组件对应数据类型,以实现支持该种数据类型的接入处理,造成开发周期长、工作量大,即由于现有技术中支持的数据来源少,导致实现数据可视化功能时开发效率低和成本高的问题。

发明内容

本发明的目的在于提供一种用于数据可视化的多数据源接入方法及系统,用以解决现有技术中实现数据可视化功能时开发工作效率低和成本高的问题。

为解决上述技术问题,本发明所提供的技术方案以及技术方案对应的有益效果如下:

本发明的一种用于数据可视化的多数据源接入方法,其特征在于:

包括以下步骤:

1)获取可视化大屏的可视化组件;

2)设计可视化组件接入数据源的数据源类型,确定各类型数据源的接入方式;

3)为可视化组件选择接入数据源的数据源类型,配置数据源信息,获取数据集;

4)将数据集绑定到该可视化组件上,并依据可视化组件的数据需求将数据集中的数据进行转换;

所述数据源类型包括JSON静态数据类型、FILE数据类型、JDBC数据类型、API接口数据类型和SCRIPT数据类型中至少两种数据类型;API接口数据为依据待请求数据的基础信息通过接口方式获取待请求数据,以用于建立数据集;SCRIPT数据为通过JavaScript和/或Python脚本方式获取待请求数据,并对获取的待请求数据依据业务需求进行二次处理得到的数据,以用于建立数据集。

上述技术方案的有益效果为:本发明在实现数据可视化功能时,支持多种数据类型接入;本发明只需依据可视化组件数据需求一次配置支持关系型数据库、系统接口服务、内存数据库、静态文件与静态数据等多种形式,在实现数据可视化时,通过选择数据来源类型,配置数据源信息,即可得到该类型的数据,无需开发人员过多的修改。基于异构数据源整合,可轻松接入企业各个业务系统,减小工作人员的工作量,降低了制作大屏的开发成本和人力成本,提高了开发效率,彻底打破数据孤岛。

进一步地,为了支持多种数据源,步骤4)中将数据集中的数据进行转换包括:依据可视化组件中需要的目标数据对数据集中的数据进行裁剪;依据可视化组件中需要的目标数据的数据类型,将数据集中的数据进行类型转换。

进一步地,API接口数据类型采用以下方式接入:

选择数据模型,创建数据集,配置API接口基础信息,即可获取API接口请求的数据,以用于生成对应的数据集;API基础信息包括请求地址、请求方式和请求数据;请求数据中包括请求头、请求参数和请求body。

进一步地,为了提高展示数据的灵活性,SCRIPT数据类型数据源采用以下方式接入:选择数据模型,创建数据集,采用脚本抓取数据,并将经过脚本处理得到的数据与模板变量关联,以得到生成数据集的数据。

进一步地,通过设定模板变量的方式进行裁剪数据。

进一步地,JSON静态数据类型数据源采用以下方式接入:选择JSON静态数据类型,在编辑区域内编写图表数据,其中数据格式依据对应可视化组件中的数据格式确定;保存编写的图表数据,生成JSON静态数据对应的数据集;

FILE数据类型数据源采用以下方式接入:FILE数据类型对应的数据源文件包括Excel或CSV;获取选择的数据源文件,并建立数据模型,建立生成对应的数据集;

JDBC数据类型数据源采用以下方式接入:创建JDBC数据源,选择数据源驱动,设置连接数据库的配置信息;配置信息包括JDBC源地址、JDBC用户名和JDBC密码;验证与数据库的连通状况;连通性验证通过后,获取JDBC数据,建立数据模型,得到对应的数据集。

进一步地,JDBC数据源连接的数据库为MySQL、SQL Server、PostgreSQL、Oracle、Redis和MongoDB中任意一种数据库。

进一步地,类型数据源的接入方式的设定包括对接入数据源的刷新频率的设定,以用于根据设定的刷新频率刷新数据。

为了解决以上问题,本发明又提供了一种用于数据可视化的多数据源接入系统,该系统包括处理器,所述处理器用于执行计算机指令,以实现如本发明的一种用于数据可视化的多数据源接入方法。

附图说明

图1是本发明的方法实施例中的用于数据可视化的多数据源接入方法流程图;

图2是本发明的方法实施例中一种数据大屏模板示意图;

图3是本发明的方法实施例中数据转换示意图;

图4是本发明的方法实施例中JSON静态数据的配置界面示意图;

图5是本发明的方法实施例中JSON静态数据的数据格式示意图。

具体实施方式

本发明的目的是提供一种用于数据可视化的多数据源接入方法,本发明在不改变组件构建的情况下,保证了上层组件构建的稳定性,实现了多元异构数据的分析和展示,支持关系型数据库、系统接口服务、内存数据库、静态文件与静态数据等多种形式。基于异构数据源整合,可轻松接入企业各个业务系统,彻底打破数据孤岛,解决了现有技术中实现数据可视化开发周期长、工作量大、成本高、效率低的问题。

为了使本发明的目的、技术方案及优点更加清楚明了,以下结合附图及实施例,对本发明进行进一步详细说明。

方法实施例:

本发明的一种用于数据可视化的多数据源接入方法实施例,如图1所示,包括以下步骤:

步骤一,基于可视化设计器,进行可视化大屏的制作,设计可视化组件,如图2中所示。

步骤二,选择可视化组件,为其配置多种数据类型的数据源接入方式。

第一种:JSON静态数据:手动录入一些静态的数据建立数据集,通过数据集绑定到可视化组件图表上,该数据类型主要用来测试、演示、应急的场合使用。

可视化组件是经过与数据集进行绑定生效,数据集的数据可以由JSON静态数据形式来提供。针对参数的值可通过变量替换,格式为${xxx},请求内容支持Velocity模板引擎替换变量。使用静态JSON静态数据的方式绑定图表的数据,这种方式可以便于进行系统演示、调试和测试,在不需要连接数据源的情况,通过手动录入数据的方式就可以来快速搭建数据可视化效果。

该方法通过可视化工具进行配置,包括如下步骤:

S11:选中组件,如图4所示,以折线图为例进行说明,选择数据类型,数据类型包括静态数据、动态数据和SQL数据,设置刷新时间,此外,还可以编辑静态数据。

S12:编辑数据值。具体操作中打开代码编辑框,编写图表数据即可,数据格式要求参考各组件中的数据格式定义,如图5所示。

第二种:FILE数据源:上传Excel/CSV文件,得到Excel/CSV文件数据,建立数据模型和数据集,然后对其中的数据进行可视化展现。

该方法通过可视化工具进行配置,包括如下步骤:

①选择FILE数据源名称,并选择对应的文件源上传至平台文件服务器。

②文件上传成功后,弹出页面下面将增加已上传文件提示,并且提供下载。

③文件确认上传成功,单击提交,完成FILE数据源添加。

④新添加的数据源会自动显示在FILE数据源列表中。

第三种:JDBC数据源:和各种数据库之间建立连接,通过建立数据模型和数据集,通过数据集可将数据库中的数据绑定到可视化图表与其它可视化组件上进行可视化分析。支持MySQL、SQL Server、PostgreSQL、Oracle、Redis、MongoDB数据库类型。可视化平台支持JDBC数据源适配连接扩展,可通过数据字典功能添加JDBC数据源配置,能方便扩展多种数据源的适配。JDBC(Java Database Connectivity,简称)Java数据库连接)是Java提供的一些接口,这些接口大部分是数据库厂商提供的(jar包)。

该方法通过可视化工具进行配置,包括如下步骤:

①单击【新建】,默认创建JDBC数据源,在弹出框内选择需要新建的数据源驱动,添加数据源时,填写JDBC数据源名称,选择好JDBC数据源驱动并提供连接数据库必要的信息(JDBC源地址、JDBC用户名、JDBC密码)。

②数据库信息填写完成后,单击测试按钮进行测试连接,验证数据库是否能够连通正常。

③测试连接成功后,单击提交,完成数据源添加。

④新添加的数据源会自动显示在数据源列表中。

第四种:API接口服务:使用API接口的方式建立数据集,通过数据集将数据绑定到可视化图表与其它可视化组件。API接口为依据数据需求设定的各个接口,以用于获取需求数据。该方法通过可视化工具进行配置,包括如下步骤:

①在数据模型列表上,找到对应数据模型项上操作列,单击新建数据集,将弹出新建数据集页面,然后选择数据源类型为API接口服务,填写必要的API基础信息(请求地址、请求方式【post/get】、请求数据)。

②请求数据需要根据提供的API请求要求分别填写请求头、请求参数、请求body、请求头、请求参数,请求Body,直接用JSON数据格式编写键值参数。

③API接口服务必要信息填写完成后,在数据转换功能右下角,单击调用按钮,将弹出数据预览页面,同时右上角将显示接口调用的日志信息。

第五种:SCRIPT数据源:支持使用JavaScript或Python脚本抓取的处理的数据,将数据绑定到可视化图表与其它可视化组件。SCRIPT数据源为通过JavaScript或Python脚本对抓取得到的原始数据依据业务需求逻辑处理后的数据。比如,抓取的原始数据为各个消费者的消费额,而可视化组件中显示的是所有消费者的消费总额,则此处需要对各个消费者的消费额进行累加处理,得到消费总额。SCRIPT数据源当前支持JavaScrip、Python两种脚本方式处理数据源,DataColourDVP上的图表及其它可视化组件是经过与数据集进行绑定生效,数据集的数据可以由SCIIPT数据源形式来提供。针对参数的值可通过变量替换,格式为${xxx},请求内容支持Velocity模板引擎替换变量。

该方法通过可视化工具进行配置,包括如下步骤:

①在数据模型列表上,找到对应数据模型项上操作列,单击新建数据集,将弹出新建数据集页面,然后选择数据源类型为SCRIPT数据源。

②用户JavaScript/Python处理业务数据。

③用JavaScript/Python脚本处理数据完成后,在关联变量功能右下角,单击调用按钮,将弹出数据预览页面,同时右上角将显示接口调用的日志信息。

步骤三,当数据源(静态数据、动态数据、SQL数据等)挂载以后,可能数据格式不适配设计器对应的组件的格式,那么这个过程需要通过数据处理的功能对数据进行裁剪、适配,如图3所示。其中,当为动态数据和SQL数据时,还可以通过设置刷新频率来定时查询数据。

数据处理一:变量关联,裁剪数据以供可视化组件显示。

依据需要在可视化组件中展示的数据信息,从各数据集众多信息中提取出目标信息,完成对数据的裁剪,以在对应的可视化组件中展示。

本实施例中变量支持JSON静态数据、JDBC数据源和API接口服务、SCRIPT数据源四种数据源类型的关联使用,SQL表达式、JSON数据、API(请求头、请求参数、请求Body)、Python/Javascript数据处理脚本都支持Velocity模板引擎替换变量。下面依据某系统为例进行详细介绍,系统用户变量包括:USER_ID【用户ID】、DEPT_ID【部门ID】、TENANT_ID【租户ID】、ROLE_ID_LIST【角色ID数组】、ROLE_ID_STRING【角色列表串,格式为1,2,3】

①SQL表达式。

对于JDBC数据类型,采用SQL表达式,通过变量对数据源过滤、下钻查询。

示例:通过设定部门、开始时间、结束时间三个变量,使用SQL表达式获取变量对应的目标数据,支持数据动态过滤查询。

②API(请求地址、请求头、请求参数、请求Body)。

当选择动态数据时,API接口的请求地址、请求头、请求参数、请求Body通过变量给接口传递参数,实现数据动态查询。

③JSON数据。

当选择静态数据时,JSON数据通过Velocity模板引擎、变量替换返回不同的静态数据。

④Python/Javascript数据处理脚本。

Python/Javascript数据处理脚本通过Velocity模板引擎、变量替换,将更便于数据的处理。

数据处理二:数据转换,以适配可视化组件显示。

数据转换功能支持JavaScript脚本语言编写,方便前端组件渲染对数据的二次处理,满足更好的数据展示效果。具体地,包括对数据类型的转换、接口类型的转换。依据组件中需要的数据类型、接口类型,将数据源中的数据进行转换,以适配可视化组件。比如,数据源中得到的一种格式的视频流,该格式可视化组件不支持,则需要转换为可视化组件支持的视频流格式。

本发明方案的有益效果包括:

本发明可视化组件可以接入多种数据类型的数据源,通过为可视化组件一次配置支持关系型数据库、系统接口服务、内存数据库、静态文件与静态数据等多种形式。在不同阶段,面对不同客户的数据源时,只需简单的调整数据源类型、配置数据源信息即可。本发明基于异构数据源整合,可轻松接入企业各个业务系统,减小工作人员的工作量,降低了制作大屏的开发成本和人力成本,彻底打破数据孤岛。并且,相对现有方法需要多个专业人员长时间的配合工作,本发明的方法只需一个专业人员,在短时间内就能制作完成数据大屏,在很大程度上降低了人力成本。

另一方面,具有较强的适应性和兼容性。在进行可视化图形组件的数据连接设置为动态更新,即可根据设定的刷新频率更新数据,一旦数据源发生数据及数据类型的改变、增加或减少。

本发明中设置了SCRIPT数据源,可以依据需求灵活获取对应的数据,扩展功能强,可适应企业不同的数据场景,解决企业各业务系统的数据孤岛问题,帮助企业建立数据中心,为上层应用提供了多种数据服务的能力,并为数据中台建设搭建基石。

总之,本发明有效解决了企业组织架构下不同角色对不同类型数据分析需求,帮助企业快速建立战略决策分析的能力,以适应市场多变的需求,加速企业商业创新。

系统实施例:

本发明的一种用于数据可视化的多数据源接入系统实施例,该系统为可视化可编辑的系统,用于配置可视化组件接入数据的数据源类型,该系统包括存储器、处理器和内部总线,处理器、存储器之间通过内部总线完成相互间的通信和数据交互。存储器包括至少一个存储于存储器中的软件功能模块,处理器通过运行存储在存储器中的软件程序以及模块,执行各种功能应用以及数据处理,实现本发明的方法实施例中介绍的一种用于数据可视化的多数据源接入方法。

其中,处理器可以为微处理器MCU、可编程逻辑器件FPGA等处理装置。存储器可为利用电能方式存储信息的各式存储器,例如RAM、ROM等。

技术分类

06120116338951