一种数据分析实时可视化方法和系统与流程

文档序号:17790480发布日期:2019-05-31 20:07阅读:1129来源:国知局
一种数据分析实时可视化方法和系统与流程

本发明属于信息处理技术领域,具体涉及一种对数据分析过程进行实时可视化的方法和系统。



背景技术:

数据可视化是利用计算机图形学和图像处理等技术,将数据用可视化图表进行展示,并通过图表与用户进行交互,实现数据分析处理的技术,其主要目的是利用图表直观易懂的特性,将关系复杂,难以看懂的数据有侧重点地展示出来,从而对数据进行更深入的观察和分析。

目前实现数据可视化的方法一般是使用数据库存储数据,后台进行查询和数据组装,最后网页前端通过可视化插件生成图表,报表等完成展示,无法直观查看数据每一步处理的中间结果和整体流程细节。

目前常见的数据可视化大多停留在对已有数据的固定方式展现,比如打开网页,直接看到一个饼图,展示各省人口占全国人口比例,或者折线图展示一段时间气温变化情况。此展现往往存在以下问题:(1)当数据展现需求方式发生变化时,比如由折线图改为柱状图,需要修改代码实现图表展现方式或所用数据的变化,此修改在已经部署使用的系统上很难实现,或者实现成本较高;(2)当数据结构发生变化时,如数据库金额字段原本是整数int,为了精确改成使用小数double,旧的展现代码无法兼容,需要重新从代码层面修改展示;(3)用户只能看到最终的可视化结果,无法了解原始数据的处理流程,并定义需要查看的数据可视化。因此,固定的、非实时展现方式具有很大的局限性,发生变动时需要付出高的维护成本。



技术实现要素:

发明目的:针对现有技术中存在的问题,本发明提供了一种数据分析实时可视化的方法,该方法可以对数据分析过程中的中间结果和最终结果进行实时的可视化呈现。

技术方案:本发明一方面公开了一种数据分析实时可视化方法,包括如下步骤:

将数据分析过程分解为待分析数据和操作命令;待分析数据作为起始节点、操作命令和执行结果作为中间节点,构建数据分析模型;将所述数据分析模型显示在画布上;

当要显示某一执行结果时,获取数据分析模型中从起始节点出发到达该执行结果对应的中间节点的路径;依次执行所述路径上所有操作命令,得到要显示的执行结果;将该执行结果以可视化图显示在画布上。

另一方面,本发明公开了一种数据分析实时可视化系统,包括数据分析模型建立模块、路径建立模块、命令执行模块和显示模块;

所述数据分析模型建立模块将数据分析过程分解为待分析数据和操作命令;待分析数据作为起始节点、操作命令和执行结果作为中间节点,构建数据分析模型;所述路径建立模块获取数据分析模型中从起始节点出发到达目标中间节点的路径;所述命令执行模块依次执行路径建立模块获取的路径上所有操作命令,得到要显示的执行结果;所述显示模块用于以可视化图的方式在画布上显示数据分析模型和执行结果。

有益效果:与现有技术相比,本发明公开的数据分析实时可视化方法和系统具有以下优点:1、通过构建数据分析模型对数据分析的整个过程进行直观的可视化呈现,便于用户修改、编辑数据分析过程;2、数据分析过程中的各中间结果可以进行实时可视化呈现。

附图说明

图1是本发明公开的数据分析实时可视化方法的流程图;

图2是实施例1中建立的数据分析模型结构示意图;

图3是本发明公开的数据分析实时可视化系统的组成框图;

图4是实施例2中建立的数据分析模型结构示意图;

图5是实施例3公开的数据分析实时可视化系统的组成框图。

具体实施方式

下面结合附图和具体实施方式,进一步阐明本发明。

实施例1:

如图1所示,为本发明公开的数据分析实时可视化方法的流程图。本实施例以对某市的常住人口登记信息进行分析为例,来说明本发明公开的数据分析实时可视化方法和系统。在ip为ip_str的服务器上mysql数据库中表名为base_info,edu_info的2张表中分别记录了某市的常住人口登记信息和学历信息,现在需要用这两张表作为数据来源,统计年龄在20-50岁常住人口的学历信息,并将统计结果用饼图展示。

首先需要导入数据源,根据ip选择要连接的数据库,测试连接,连接所属用户,如果信息正确,就能取到所有有权限的数据表;选择表base_info和edu_info。本实施例中,将待处理数据导入底层hive表中存储,即将表base_info和edu_info中的数据导入hive表。下面是分析及可视化步骤:

步骤1、将数据分析过程分解为待分析数据和操作命令;待分析数据作为起始节点、操作命令和执行结果作为中间节点,构建数据分析模型;将所述数据分析模型显示在画布上;

本实施例中,待分析数据为表base_info和edu_info中的数据,操作命令包括:查找年龄20-50岁的常住人口、统计查找出的人口的学历信息。由此,建立如图2所示的链表式数据分析模型,图中op节点表示操作命令节点,rst节点表示操作命令执行后得到的执行结果节点。模型的起始节点为表base_info和edu_info中的数据,第一个操作命令节点op_1为查找年龄20-50岁的常住人口,其执行结果rst_1为查找的本市所有年龄在20-50岁的常住人口;第二个操作节点op_2为统计rst_1中的人口的学历信息,其执行结果为rst_2;终止节点为最终结果,即对rst_2中的数据生成饼图。通过编辑各操作命令节点对应的命令,设置各节点的连接顺序,得到数据分析模型,并将建立的模型显示在画布上。本实施例中,各节点的连接顺序通过本节点的前置节点来表现,起始节点没有前置节点。

hive提供的查询工具是基于mapreduce的,其查询速度较慢。为了提高查询速度,本实施例采用基于内存的presto来完成查询。

步骤2、当要显示某一执行结果时,获取数据分析模型中从起始节点出发到达该执行结果对应的中间节点的路径;依次执行所述路径上所有操作命令,得到要显示的执行结果;将该执行结果以可视化图显示在画布上。

如要查看rst_2中的数据,获取的路径为从起始节点经过op_1、rst_1、op_2,依次执行路径上的op_1和op_2对应的sql语句,得到执行结果rst_2,对rst_2生成可视化图显示在画布上。本实施例中要求对统计结果用饼图展示,所以根据rst_2生成饼图,即得到最终结果。类似地,查看rst_1的数据只要执行op_1即可。这样,用户可以查看数据分析过程的中间结果,了解分析处理流程。显示数据的可视化图采用可编辑的方式,根据不同的数据选择不同的可视化方式,如曲线、饼图、柱状图、网络结构图等方式。

实施例2:

如图3为本实施例中提供的实现数据分析实时可视化的系统组成框图,包括数据分析模型建立模块、路径建立模块、命令执行模块和显示模块。

数据分析模型建立模块将数据分析过程分解为待分析数据和操作命令;待分析数据作为起始节点、操作命令和执行结果作为中间节点,构建数据分析模型;路径建立模块获取数据分析模型中从起始节点出发到达目标中间节点的路径;命令执行模块依次执行路径建立模块获取的路径上所有操作命令,得到要显示的执行结果;显示模块用于以可视化图的方式在画布上显示数据分析模型和执行结果。各模块可以部署在同一台计算机上;也可以将显示模块部署在前端服务器,其余各模块部署在后台服务器上。

实施例1中建立的链表式数据分析模型无法满足复杂的数据分析,对此本实施例建立的数据分析模型中操作命令节点可能有多个前置节点,即该操作命令是对多个数据进行的;一个执行结果也可能有多个操作命令对其进行不同的处理,即多个操作命令节点的前置节点相同,如图4所示。最终得到多个结果,对整个数据分析进行各种角度的可视化展示。

数据分析模型建立模块通过添加、编辑节点,设置操作命令节点的操作命令、执行结果节点的可视化方式、各中间节点的前置节点,来创建数据分析模型,并通过显示模块以可视化图的形式显示。待分析数据可以从数据库中获取,也可以通过读取文件来获取。在显示某一执行结果时,路径建立模块获取数据分析模型中从起始节点出发到达目标中间节点的路径;命令执行模块依次执行路径建立模块获取的路径上所有操作命令,得到要显示的执行结果;显示模块获取要显示的执行结果,将其以可视化图的形式显示在画布上。

实施例3:

如图5为本实施例提供的实现数据分析实时可视化的系统组成框图,包括了实施例2提供的系统中各组成模块外还包括数据分析模型保存模块和数据分析模型恢复模块。数据分析模型保存模块用于保存模型各节点连接顺序、数据节点中的待分析数据、操作命令节点对应的操作命令。数据分析模型恢复模块根据模型各节点连接顺序恢复数据分析模型的结构,并将待分析数据与操作命令与各节点对应。在对数据分析执行模块进行恢复后,通过导入数据节点中的待分析数据,可以重新执行数据分析,并对各执行结果进行实时可视化呈现。

数据分析模型保存模块还可以保存各执行结果节点对应的执行结果数据和可视化图;对保存的数据分析模型进行恢复还包括将各执行结果节点的数据和可视化图与执行结果节点对应。这样在不具备数据分析的终端上也可以以可视化的方式回看数据分析模型和各执行结果。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1