本地搜

如何实现大数据可视化系统

2020年08月24日 13:54 发布人: zcmf 1308

  大数据,指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。


  为什么会产生大数据?为什么要使用大数据呢?在这里给大家再通俗的解释一下:


  起初,数据量很少的时代,通过表格工具、mysql等关系型数据库(二维表数据库,数据逐行插入)就能够解决数据存储的问题。


  但是,随着互联网的飞速发展,产品以及用户的激增,产生了海量的数据。考虑到长足发展,公司会对产品、用户相关的原生数据、埋点数据等进行分析,传统的关系型数据库就无法满足需要,只能通过行式、分布式等数据库来存储这些数据(HBASE、hive等,能够实现集群化,及分配到多台主机上同时计算)。


  认识数据可视化


  有了数据之后,对数据分析就是成了最关键的环节,海量的数据让用户通过逐条查看是不可行的,图像化才是有效的解决途径。少量的数据可以通过表格工具生成图表、tou视表的方式进行分析,但是大数据的分析就需要借助专门的可视化工具了,常见的可视化工具包括:Tableau、BDP、Davinci、Quick BI、有数等。


  大部分商用数据可视化工具的计算、图表展示虽然比较强大,但是却无法做到实时数据快速生成,数据也多为push(固定的范围)的方式,有时候数据还需要二次加工满足可视化产品的规则(商用产品多考虑通用性,无法适用于所有企业的数据规范)。


  除此之外,现在很多图表插件的开源化(如:Echart、GoogleChart),以及行业内对数据安全性等的考虑,越来越多的公司也开始进行数据可视化的私有化部署。


  数据可视化的实现


  数据可视化产品(系统)的结构框架主要分为三层:数据存储层、数据计算层、数据展示层。


  1.数据存储层


  数据存储层在开头已经和大家说过了,在数据可视化产品(系统)中,既支持常规数据(MySQL、CSV等)可视化,也支持大数据(hive、HBASE等)的可视化,满足日常分析人员定性、定量的分析。


  在考虑到数据安全的因素,数据存储还会与权限管理相结合,实现不同角色的人员只能访问指定的数据(未来有机会再分享)。


  2.数据计算层


  这里的计算不是平时所说的聚合、排序、分组等计算,解释之前我们先了解一下数据分析的工作流程吧:


  产品/运营人员提出数据需求,如“APP一周留存”;


  分析师确认需求后需要明确本次分析需要的字段及分析方式;


  数仓人员提供整理后的表格(数据模型,多张表join后合成的中间表);


  分析师基于数据模型进行可视化分析。


  数仓提供的数据模型主要分为增量、全量数据,不能直接对某个较长范围的数据进行分析,举个例子1月1日、1月2日两天都产生了数据,增量、全量的数据存储方式效果如下:


  以上述举例的“APP一周留存”,就需要每天计算一下隔日留存,才能够基于每天的隔日留存计算出一周的留存。分析师每天会有很多任务,大量的基础计算(如每天的隔日留存)就可让电脑自动完成,这里就需要依赖调度功能(你可以理解成一个自动运行公式的工具)。


  通过以上内容,我们可以得到多表关联、定时计算就是计算层的主要功能。


  3.数据展示层


  数据展示层分为两部分:


  一部分是对看图人的可视化,看图人包括:产品、运营、高层主管等。根据需求方的要求,将数据用适合的图表呈现,比如,趋势相关用折线图、数据明细用表格、留存用漏斗图……


  另一部分是对作图人的可视化,作图人主要是分析师。让分析师用可视化的操作,来代替尽可能多的SQL语句输入。常见的可视化工具中,可以快捷得将数据模型中的字段拖拽到维度/度量(可理解为X、Y轴)中。


  通过可视化产品(系统)结构学习,我们不难看出,实现数据可视化的操作过程包括:数据连接(存储)、制作数据模型(计算)、制作图表(展示)。


  如何实现大数据可视化系统.中琛魔方大数据分析平台(www.zcmorefun.com)表示正确适当的可视化使得讲故事变得很简单。它也从复杂、枯燥的数据集连接了语言、文化间的代沟。所以不要仅仅是展示数据,而是要用数据讲故事。