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

一种基于数据处理的展示方法

文献发布时间:2024-04-18 19:58:26


一种基于数据处理的展示方法

技术领域

本发明涉及数据处理技术领域,具体涉及一种基于数据处理的展示方法。

背景技术

随着数据处理的展示方式越来越多,如前端大屏,大屏应用场景也越来越多,客户对于此类的性能要求也越来越高,需要实时性好且支持回放的大数据场景下的展示方案。然而,市面上如前端大屏设计基本都需要付费闭源,并且只有前端拖拽布局,没有跟后端数据打通,服务端接口仍需要编码经历开发流程的四个阶段才能上线一个接口,相当于半自动化,如图1所示。

另外,大数据场景下的展示方案需要制作人员有专业的技术水平,操作和处理步骤繁琐,难以快速实现数据大屏构建,不易上手,并且展示效果视觉冲击力差,难以根据用户需求任意制作各类展示大屏,无法真正达到设计与实现同步,效果与需求匹配。

发明内容

本发明的目的在于提供一种基于数据处理的展示方法,该方法从数据提供、数据展现、数据监控、安全认证等提供一站式解决方案,以满足用户一站式数据实时展示的制作需求。

为解决上述问题,本发明所采用的技术方案如下:

一种基于数据处理的展示方法,该方法应用于一种基于数据处理的展示平台,该展示平台包括原始数据层、数据服务层、网关层以及数据展现层,该方法包括以下步骤:

定义原始数据层,在原始数据层中包括多种原始业务数据,其支持多种数据结构,包括关系数据库、时序数据库、列式数据库等等;

定义数据服务层,通过创建API接口读取原始数据层中的原始业务数据,并上线接口,其中,在API接口设置若干个请求参数,请求参数包括时间、测点、统计方式等,从而补充当适配不同的数据库时所采用的不同语法或技术方案;

创建数据展示层,定义不同的图表组件,选取出目标的若干个图表组件,并在一个看板区域里进行拖拽布局选取其中一个图表组件,在与其对应的属性栏里面去配置数据接口,并保存展示端的设置参数,生成预览地址;其中,预览地址可以应用在不同第三方显示器中。

根据本发明提供的一种基于数据处理的展示方法,当数据展示层去调用API接口时,网关层对数据展示层调用进行登陆检查以及权限检查,并且针对该接口的调用做流量限制、熔断、降级、缓存处理。

根据本发明提供的一种基于数据处理的展示方法,流量限制处理包括:对该接口的调用为每秒最大调用20次,对单一接口进行过载保护;

熔断处理包括:当接口服务器处理达到上限时,会进行熔断处理,具体表现为:若该接口服务器的上限为M,当接口服务器上限超过M时,接口服务器不再接收新的请求,网关层通过检测指定时间内仍未收到响应,则中断请求;

降级处理包括:当接口调用异常,接口响应码为500时返回固定的兜底数据;

缓存处理包括:接口服务器对该次查询的结果进行缓存,并设置缓存时间,在缓存过期后重新从数据源获取数据。

根据本发明提供的一种基于数据处理的展示方法,当API接口去适配不同数据源时,先利用API接口识别出数据源中的数据库类型,根据具体的数据库类型去适配对应的检测语法;其中,检测语法用于检测数据库中语法的准确性和合法性,若存在非法性、语法问题,则接口层提示错误,在特定界面显示具体出错的行列。

根据本发明提供的一种基于数据处理的展示方法,在每个API接口中都有一个唯一的访问地址,在数据展示层设有一个地址填入栏,在该地址填入栏中填入相应的地址链接,即可实现调取相应的接口数据。

根据本发明提供的一种基于数据处理的展示方法,数据服务层的监听接口信息变更包括:

在单一接口服务器程序启动后从数据库加载接口列表进行接口注册,并往Nacos生成配置文件,且把接口列表写入配置文件

单一接口服务器监听nacos接口配置文件,当接口发生变更,由单一接口服务器同步修改nacos上的配置文件,此时其他接口服务器监听到nacos上的配置文件已变更,在获取到变更的接口后重新注册接口。

根据本发明提供的一种基于数据处理的展示方法,在多台接口服务器程序启动时,采用分布式加锁的方式,确保多台接口服务器同时启动时,只有一台接口服务器负责nacos配置文件的生成以及数据的写入。

根据本发明提供的一种基于数据处理的展示方法,在进行接口注册时,是通过spring的RequestMappingHandlerMapping类来实现的,getHandlerMethods()返回当前spring应用的所有注册接口判断当前接口是否注册,若注册,则调用unregisterMapping取消注册,若没有注册则调用registerMapping方法进行注册。

根据本发明提供的一种基于数据处理的展示方法,展示平台还包括一控制台,该控制台应用在播放大屏时选择同时在控制台服务创建控制器,提供远程控制功能,然后该控制台应用通过Socket方式实时连接数据展示层,数据展示层在Redis数据库登记控制台当前的投屏情况;与数据展示层处在同一网络的终端设备通过打开数据展示层的投屏控制页面,展示当前投屏情况,并通过Http方式经由数据展示层的控制器用Socket方式通知控制台进行主题切换。

根据本发明提供的一种基于数据处理的展示方法,对于数据展示层调用接口功能,包括:

由数据展示层的其中一个图表发起一个接口请求,经过请求解析器进行解析;

将解析后的接口请求方式依次输入接口配置加载器、校验拦截器、执行器、数据转换器,经过数据转换后的数据结构能直接被展示端的图表所识别渲染;

若开启有缓存,则将结果缓存起来,然后将结果返回给数据展示层的图表。

根据本发明提供的一种基于数据处理的展示方法,数据展示层的应用包括数据监控大屏、数据报表工具以及提供第三方可视化数据;

当数据展示层应用于数据监控大屏时,包括以下步骤:

通过拖拉拽可视化的方式,选取出若干个图表进行数据监控大屏的布局设计,同时选中单个图表进行样式的调整以及在接口数据来源输入框中填入接口地址;

创建原始数据层,为API接口提供数据来源;

创建API接口然后开始部署,将接口发布上线,在接口管理列表页面,复制接口地址填入单个图表的数据来源输入框中;

将数据进行保存,然后动态生成一个预览地址,将该预览地址在浏览器地址栏中打开。

由此可见,相对于现有技术,本发明通过创建基于数据处理的展示平台及方法,可以一站式解决从数据生产到数据预览、数据权限链路问题,将大屏看板、报表、数据开发全链路数字化打通,开发工程师无须再经历从需求调研、开发、联调、测试、部署、验收、上线的漫长周期,通过数字化的能力使大屏看板,报表,数据开发所见即所得,在线开发、在线验收,高性能、可扩展、支持集群动态扩容、docker部署、完全自主知识产权。因此,本发明避免繁琐的操作步骤,非专业人员可快速使用;满足用户各种个性化需求,真正实现设计与实现同步,效果与需求匹配,充分诠释大数据的利用价值。也可实现大批量数据的实时计算,从而使大屏展示具备较好的实时性,可按业务类型来刷新大屏展示。

下面结合附图和具体实施方式对本发明作进一步详细说明。

附图说明

图1是现有技术的一种前端大屏设计方案。

图2是本发明一种基于数据处理的展示方法实施例的流程图。

图3是本发明一种基于数据处理的展示平台实施例的原理图。

图4是本发明一种基于数据处理的展示方法实施例中关于应用界面的示意图。

图5是本发明一种基于数据处理的展示方法实施例中关于数据服务层的通信原理图。

图6是本发明一种基于数据处理的展示方法实施例中关于接口服务器节点监听接口信息变更功能的示意图。

图7是本发明一种基于数据处理的展示方法实施例中关于数据展现层调用接口功能的示意图。

图8是本发明一种基于数据处理的展示方法实施例中关于接口管理功能的示意图。

图9是本发明一种基于数据处理的展示方法实施例中关于数据监控大屏的第一界面示意图。

图10是本发明一种基于数据处理的展示方法实施例中关于数据监控大屏的第二界面示意图。

图11是本发明一种基于数据处理的展示方法实施例中关于数据报表的第一界面示意图。

图12是本发明一种基于数据处理的展示方法实施例中关于数据报表的第二界面示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

参见图2与图3,本发明提供一种基于数据处理的展示方法,该方法应用于一种基于数据处理的展示平台,该展示平台包括原始数据层、数据服务层、网关层以及数据展现层,其包括以下步骤:

步骤S1,定义原始数据层,在原始数据层中包括多种原始业务数据,其支持多种数据结构,包括关系数据库、时序数据库、列式数据库等等。其中,原始业务数据可具体化为设备运行的工况、统计分析指标,或者是某一用电区域的工况参数,其应用场景非常丰富。

步骤S2,定义数据服务层,通过创建API接口读取原始数据层中的原始业务数据,并上线接口,其中,在API接口设置若干个请求参数,请求参数包括时间、测点、统计方式等(请求参数的多样化),可以补充当适配不同的数据库时所采用的不同语法或技术方案;

步骤S3,创建数据展示层,如展示端,其包括看板名称、创建人、创建时间,定义不同的图表组件,图表组件包括折线图、柱状图等图型,选取出目标的若干个图表组件,并在一个看板区域里进行拖拽布局选取其中一个图表组件,在与其对应的属性栏里面去配置数据接口,并保存展示端的设置参数,生成预览地址;其中,预览地址可以应用在不同第三方显示器中。

进一步地,网关层还可以将接口暴露给应用服务终端进行集成,在设计端的本地,本实施例采用看板区域进行展示,可以将图表随意进行布局,并生成对应的预览地址,供展示终端去调用显示;也可以将接口提供给应用服务终端,在应用服务终端可以定义不同的图表、看板形式及其他的展示方式,如:第三方的BI报表工具、阿里DataV可视化等,应用服务终端会遵循网关层的相关协议,作自主的适应性调整。

在本实施例中,当数据展示层去调用API接口时,会先经过网关层,网关层对数据展示层调用进行登陆检查(认证方式:固定token等)以及权限检查,并且针对该接口的调用做流量限制、熔断、降级、缓存处理。

其中,流量限制处理包括:对该接口的调用为每秒最大调用20次,对单一接口进行过载保护;

其中,熔断处理包括:当接口服务器处理达到上限时,会进行熔断处理,具体表现为:若该接口服务器(单台节点)的上限为M,如100,当接口服务器上限超过M时,接口服务器不再接收新的请求,网关层通过检测指定时间内仍未收到响应,则中断请求;

其中,降级处理包括:当接口调用异常,接口响应码为500时返回固定的兜底数据;

其中,缓存处理包括:接口服务器对该次查询的结果进行缓存,并设置缓存时间,如10分钟,在缓存过期后重新从数据源获取数据。

在本实施例中,当API接口去适配不同数据源时,先利用API接口识别出数据源中的数据库类型,根据具体的数据库类型去适配对应的检测语法;其中,检测语法用于检测数据库中语法的准确性和合法性,若存在非法性、语法问题,则接口层提示错误,在特定界面显示具体出错的行列。具体的,如果语法有问题,则接口层提示错误,会特定界面显示具体出错的行列,如果存在非法性,如建表、授权、删除等危险语法,则可以接口层提示错误,会特定界面显示具体出错的行列,也可以直接在数据库中将其剔除,保留合法的语句,这样做的好处在于可以在接口上线前发现问题。

实施例说明:Mysql数据库——Mysql检测语法、Influxdb数据库--Influxdb检测语法等等。

在本实施例中,在每个API接口中都有一个唯一的访问地址,在数据展示层设有一个地址填入栏,在该地址填入栏中填入相应的地址链接,即可实现调取相应的接口数据。这样做的好处在于:数据流转更简洁高效并且可以替换不同的展示端来预览数据。

在本实施例中,数据服务层的监听接口信息变更包括:

在单一接口服务器程序启动后从数据库加载接口列表进行接口注册,并往Nacos生成配置文件,且把接口列表写入配置文件。

单一接口服务器监听nacos接口配置文件,当接口发生变更,由单一接口服务器同步修改nacos上的配置文件,此时其他接口服务器监听到nacos上的配置文件已变更,在获取到变更的接口后重新注册接口。

在本实施例中,在多台接口服务器程序启动时,采用分布式加锁的方式,确保多台接口服务器同时启动时,只有一台接口服务器负责nacos配置文件的生成以及数据的写入。

在进行接口注册时,是通过spring的RequestMappingHandlerMapping类来实现的,getHandlerMethods()返回当前spring应用的所有注册接口判断当前接口是否注册,若注册,则调用unregisterMapping取消注册,若没有注册则调用registerMapping方法进行注册。

在本实施例中,对于数据展示层调用接口功能,包括:

由数据展示层的其中一个图表发起一个接口请求,经过请求解析器进行解析;

将解析后的接口请求方式依次输入接口配置加载器、校验拦截器、执行器、数据转换器,经过数据转换后的数据结构能直接被展示端的图表所识别渲染;

若开启有缓存,则将结果缓存起来,然后将结果返回给数据展示层的图表。

在本实施例中,数据展示层的应用包括数据监控大屏、数据报表工具以及提供第三方可视化数据;

当数据展示层应用于数据监控大屏时,包括以下步骤:

通过拖拉拽可视化的方式,选取出若干个图表进行数据监控大屏的布局设计,同时选中单个图表进行样式的调整以及在接口数据来源输入框中填入接口地址;

创建原始数据层,为API接口提供数据来源;

创建API接口然后开始部署,将接口发布上线,在接口管理列表页面,复制接口地址填入单个图表的数据来源输入框中;

将数据进行保存,然后动态生成一个预览地址,将该预览地址在浏览器地址栏中打开。

如图4所示,本实施例的应用界面主要分为左侧接口分组,右侧接口列表及接口编辑界面。其中,接口编辑界面由:接口路径、基本信息、请求头、请求参数(参数校验)、查询语句、响应头、响应参数组成。

如图5所示,以下将从集群初始化原理、接口调用原理、接口管理原理三部分进行详解,因为网关层跟数据服务层目前其实是部署在一起的,所以网关层的原理与接口调用原理中有详细描述。

在本实施例中,对于接口服务器节点监听接口信息变更功能,如图6所示,包括以下步骤:

步骤S11:单一接口服务器程序启动后从数据库加载接口列表(扫描已上线的接口)进行接口注册,并且往Nacos生成配置文件,并把接口列表写入配置文件。

步骤S12:单一接口服务器监听nacos接口配置文件,当接口发生变更,如GET改为POST,修改接口地址、状态由上线修改为下线,或者由下线修改为上线等,单一接口服务器同步修改nacos上的配置文件,其他接口服务器监听到nacos上的配置文件变更了,获取到变更的接口后重新注册接口。

更进一步地,为了解决多台接口服务器在程序启动时都往nacos生成配置文件,本实施例采用分布式加锁的方式,确保多台接口服务器同时启动时,只有一台接口服务器负责nacos配置文件的生成以及数据的写入。

其中,接口注册的原理是通过spring的RequestMappingHandlerMapping类来实现的,getHandlerMethods()返回当前spring应用的所有注册接口判断当前接口是否注册,如果注册,则调用unregisterMapping取消注册,如果没有注册则调用registerMapping方法进行注册。

在本实施例中,对于展示端调用接口功能,如图7所示,包括以下步骤:

步骤S21:展示端的其中一个图表发起一个接口请求,先经过请求解析器,其中,解析器会解析请求头,请求参数,请求方法GET、POST,请求路径。

步骤S22:然后经过接口配置加载器,根据步骤S21解析出来的请求方法,请求路径查询接口配置信息,配置信息包括:权限配置,限流数据,接口参数,接口请求头,接口响应参数,接口脚本等。

步骤S23:然后经过校验拦截器,根据步骤S22加载的权限信息,限流设置,请求参数校验等,来确定是否往下执行,如果校验不通过,则返回验证失败的信息。

步骤S24:然后经过执行器,根据请求方法,请求路径查询是否有缓存数据,如果有则直接返回,如果没有则将步骤S22这一步加载出来的SQL脚本进行参数替换然后编译SQL脚本,如果开启了分页查询则对SQL脚本追加分页参数,如果开启了统计总数,则在SQL查询脚本执行之前,动态生成count()SQL语句,如果返回结果等于0,则不查询真实SQL语句,如果返回结果数大于0,则开启多线程并发执行,

步骤S25:然后经过数据转换器,如果接口开启了数据转换,则根据选择的转换类型对查询的结果做进一步的转换,内置转换规则有:折线图/柱状图、饼图、散点图、K线图、雷达图、仪表盘、漏斗图、分类统计图,经过转换后的数据结构能直接被展示端的图表所识别渲染。

步骤S26:如果开启了缓存,则将结果缓存起来,在缓存起来后,在步骤S24一步就可以直接返回结果了,无须经过后面的步骤,然后将结果返回给展示端的图表。

其中,步骤S23验证请求参数的规则包括:根据接口配置加载器查询出来的请求参数列表与展示端传过来的请求参数进行验证,验证方式包括:在创建API接口时,在接口参数上配置正则表达式,在步骤S23这一步的时候会用该正则表达式进行验证,一个参数可以对应多个正则表达式进行验证,并且所有正则表达式都验证成功,该请求参数才算验证成功。

在本实施例中,如图8所示,对于接口管理功能,包括:

1、接口上线、下线功能:

管理员对该API接口进行上线或者下线操作时,会往单一接口服务器把接口保存到数据库,同时将当前单一接口服务器的接口重新注册,然后往nacos接口配置文件写入变更的接口,其他接口服务器监听到nacos上的配置文件变更后,获取到变更的接口后重新注册接口。

2、接口部署功能:

在管理员对该接口进行部署操作时,单一接口服务器对该接口进行重新注册,然后往nacos接口配置文件写入变更的接口,其他接口服务器监听到nacos上的配置文件变更后,获取到变更的接口后重新注册接口。

3、接口删除功能:

在管理员对该接口进行删除操作时,单一接口服务器对该接口取消注册,然后往nacos接口配置文件写入变更的接口,其他接口服务器监听到nacos上的配置文件变更后,获取到变更的接口后取消注册接口。

在本实施例中,数据展现层内置了数据监控大屏、数据报表工具,也可以使用第三方的如阿里的datav数据可视化等数据可视化方案。

对于数据监控大屏,如图9和图10所示,其前端区域主要分为左侧组件工具栏、中间设计区域、右侧属性面板组成,组件可以动态扩展,支持灵活定制、实时渲染、所见即所得,并可以通过数据接口进行数据打通。

对于数据报表,如图11和图12所示,其前端区域主要分为左侧excel编辑器、右侧属性配置栏组成,通过对单元格设置填充变量,填充方向,配置好数据源后,可以实现报表的实时渲染、预览、导出。并且该数据报表同时支持导入excel,或者布局模板;支持数据预览、excel数据导出、布局模板导出。

接下来,列举一设备能耗监控大屏的应用场景来说明本实施例提供的基于数据处理的展示方法可以带来的实际应用场景:

在实际应用中,企业大屏上有相应的日能耗统计图表,该大屏的实现包括:

步骤S31:通过拖拉拽可视化的方式,选取出若干个图表(折线图、柱状图等)进行监控大屏的布局设计,同时选中单个图表进行样式的调整以及在接口数据来源输入框中填入接口地址(在步骤S33完成后,把接口地址填入此处)。还可以将图表的数据连接设置为动态更新,一旦数据源发生数据及数据类型的改变、增加或减少,可及时进行灵活调整,即通过动态更新数据及数据类型,在数据大屏进行动态显示。

步骤S32:创建数据源,这一步主要为步骤S33的API接口提供数据来源。

步骤S33:创建API接口然后点击【部署】按钮,将接口发布上线,在接口管理列表页面,复制接口地址填入步骤S31的单个图表的数据来源输入框中。

步骤S34:将步骤S31这一步的数据进行保存,然后动态生成一个预览地址,将该预览地址在浏览器(如:Chrome,Firefox,IE等)地址栏中打开。

步骤S35:可根据具体的数据可视化需求,进行相应组件的操作,将需要的显示内容布置到画布区中,进行数据大屏的制作,实现了数据可视化。

可见,上述整个过程都是通过可视化界面所见所得的方式来代替人力开发,降低人力及运维成本。

另外,还可以对画布上的大屏背景进行设置,设置内容包括大屏宽度、大屏高度、大屏简介、背景颜色、背景图片、缩放设置等,可根据具体的显示需求进行相应的设置。

为了方便用户在移动端同样能够实现数据可视化,需要向客户推送移动端的可视化数据界面,因此,在展示平台中设置有移动数据报告配置模块,用于配置相关信息,需要设置的配置信息包括推送途径和推送设置,其中,推送途径设置的内容包括企业ID、应用ID、应用key,以及备注信息。

其中,推送设置包括标识设置、定义消息名称、备注信息设置、推送渠道、接收人设置,推送渠道设置为邮件方式。上面的信息配置好后,就可以通过邮件的方式发送可视化数据展示层的连接接口。

优选的,还可以将展示数据存入缓存数据库时,并同时复制缓存数据库中的其余的展示数据的最近值,并和当前时刻生成的展示数据一起保存到缓存数据库中,用于数据展示层(大屏)回放。当大屏回放时,调用展示服务,展示服务从缓存数据库中获取指定时间的大屏的全部业务类型的展示数据,并根据展示数据确定大屏的全部业务类型的展示报文,将展示报文在大屏进行展示。其中,展示报文的格式包括JSON报文格式、XML报文格式、自定义报文格式或数据表格式。

需要说明的是,本实施例是从数据生产到数据展现数字化解决方案及该解决方案的实现原理,包括但不限于前后端所使用的技术、架构、通信。

本实施例的展示平台还包括一控制台,该控制台应用在播放大屏时选择同时在控制台服务创建控制器,提供远程控制功能,然后该控制台应用通过Socket方式实时连接展示端,展示端在Redis数据库登记控制台当前的投屏情况。

与展示端处在同一网络的终端设备通过打开展示端的投屏控制页面,展示当前投屏情况,并通过Http方式经由展示端的控制器用Socket方式通知控制台进行主题切换。

由此可见,相对于现有技术,本发明通过创建基于数据处理的展示平台及方法,可以一站式解决从数据生产到数据预览、数据权限链路问题,将大屏看板、报表、数据开发全链路数字化打通,开发工程师无须再经历从需求调研、开发、联调、测试、部署、验收、上线的漫长周期,通过数字化的能力使大屏看板,报表,数据开发所见即所得,在线开发、在线验收,高性能、可扩展、支持集群动态扩容、docker部署、完全自主知识产权。因此,本发明避免繁琐的操作步骤,非专业人员可快速使用;满足用户各种个性化需求,真正实现设计与实现同步,效果与需求匹配,充分诠释大数据的利用价值。也可实现大批量数据的实时计算,从而使大屏展示具备较好的实时性,可按业务类型来刷新大屏展示。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

上述实施方式仅为本发明的优选实施方式,不能以此来限定本发明保护的范围,本领域的技术人员在本发明的基础上所做的任何非实质性的变化及替换均属于本发明所要求保护的范围。

相关技术
  • 一种基于区块链的数据处理平台及数据处理方法
  • 一种基于模拟抽油烟机清洗原理的展示道具及展示方法
  • 一种基于CNN网络的数据处理方法及一种路由器
  • 一种基于全景展示场景的数据处理方法及装置
  • 一种基于大数据的数据处理及报表展示方法
技术分类

06120116489767