以阿里QuickBI为例,如何将数据加工成可视化看板?
“ BI系统,本质是对数据进行一系列的流转与加工,最终生成符合预期的数据展现形态的系统。 ”
之前聊过《BI分析系统概述》,今天和大家一起聊聊在常规的BI分析系统中,数据是如何从底层,一步步流转到顶层,最终生成可视化看板的。
一、流程概述
BI分析系统其实是一个操作链路比较长的系统,因此也导致了数据在BI系统中的流转过程,也比较长。理解了数据在BI系统中是如何流转的,也就基本理解了BI系统的整体设计。
作者把从数据接入BI系统,到最终的可视化看板呈现,分为了三个主要的步骤:
数据导入之前的步骤主要是数据的生产过程,不在BI系统的数据流转讨论范围内。
这里以阿里的Quick BI为例,看一下他们的核心流程,如下图:
这里给出的流程和我列举的三步流程,从本质上没太多区别:
- 获取数据 :就是从外部数据源导入到BI系统的过程
- 创建数据集 :对应了数据处理过程。基于导入的外部数据源,进行数据表的加工,生成可以做报告的数据集
- 仪表板/电子表格 :就是基于创建好的数据集,进行数据分析、数据呈现的过程
关于具体每个步骤的内容,下面进行详细阐述。
二、数据的导入
数据的导入,是BI分析系统中数据的起点。通常的数据形态,均需支持连接到BI分析系统。
总体上讲,主要包括三大类数据源的导入:本地数据库数据源、文件数据源、特殊数据源。
(1)本地数据库
例如以下的数据库类型,Quick BI都是支持进行数据的导入(根据BI系统的产品成熟阶段来,可先支持常见的):
MySQL、SQL Server、PostgreSQL、Oracle、Hive、Vertica、IBM DB2 LUW、SAP IQ(Sybase IQ)、SAP HANA、Presto、Gbase
这里以MySQL数据库类型为例,看一下本地数据源的导入过程:
- 选择数据源类型:数据库类型
- 进行数据源的配置:对数据库地址、用户等进行配置
- 数据源连接测试:即验证数据源是否完成连通。
连通性验证成功后,也即完成了数据库的连接。
(2)文件数据源
文件数据源,基本上主要就是CSV文件及Excel文件。
通常需要系统化的看板,是不太会用文件数据源的,毕竟这种本地文件比较麻烦,更新也不如数据库方便。但有时作为探索性分析的场景,也是有需求的。
这里简单截图如下:
(3)特殊数据源
这里的特殊数据源,主要是基于不同BI系统的情况,有些个性化的数据源。例如Quick BI主要是阿里系,因此支持阿里云相关的数据源。这里不详细展开了。
总之,不同类别的数据源,导入的方式不尽相同。
三、数据的处理
数据的处理环节,对数据的整体流转起到了承前启后的作用。
通过数据的处理,将原始接入的各类型的数据,整合成统一的数据集。这个过程也是数据建模的过程。主要的流程如下:
(1)多个数据表的关联
通常情况下,接入的数据源是偏业务层的表,没有进行太多的加工。如果接入的是数仓的表,则不太需要进行这一步操作。
如果对于SQL比较了解,这一步应该也很容易理解。就是将多张表关连成一张表的过程,包括左关联、内关联、全关联等。这里不赘述了。
(2)二次数据处理
二次数据的处理,主要是在关联表的基础上,确定指标和维度的过程。
因此,确定好表中哪些字段是维度,哪些字段是指标,或者基于部分字段计算新的指标,都是可以的。
一个清晰的指标和维度梳理,将给数据的可视化过程带来有利的影响,便于可视化看板的配置过程。
(3)数据权限控制
最后一步,就是对数据权限进行控制。配置哪些用户可以看哪些数据范围。
通常权限的控制,是基于维度层面,确定该用户或者该群组能看哪些维度下的哪些属性值。
四、数据的呈现
数据的呈现环节,是整个流转环节的最后一步,也是最关键的一步。前面做了大量的数据接入、数据处理加工的工作,如果看板没做好,价值基本就发挥不出来了。
而对于BI分析系统的使用者来讲,看板的配置过程,也是最主要的使用过程。
这里主要分享一下看板配置的过程,至于其他的细节,后续慢慢进行分享。
下图是Quick BI的看板配置页面,目前主流的BI分析系统的看板配置,基本也都大同小异。
(1)数据集选择
可以在数据集选择区内切换已有的数据集。数据集中字段按照系统的预设分别展示在维度和度量列表中。根据数据图表的构成要素,在列表中选择维度和度量字段。
(2)仪表板配置
可以在仪表板配置区选择需要制作的图表数据,并根据展示需要,编辑图表的显示标题、布局和显示图例等。通过高级功能,也可以关联多张图表,多视角展示数据分析结果。
用户还可以设置过滤数据内容,也可以插入一个查询控件,查询图表中的关键数据。
(3)仪表板展示
可以在仪表板展示区,通过拖拽的方式调整图表的位置。还可以随意切换图表的样式。例如,切换柱图为气泡地图,系统会根据不同图表的构成要素,提示缺失或错误的要素信息。
关于BI分析系统的基本数据流转过程,就先分享到这里。关于BI系统的具体细节,后面慢慢展开分享,欢迎继续关注~