37DATA

数据分析系统演变之Quick BI

前言:

数据分析指的是用适当的统计分析方法将收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。

而数据分析系统作为数据展示的载体,承担着举足轻重的作用。作为数据部的一员,我们大部分的日常工作也是围绕着数据分析系统进行的。

这里想复盘一下产品开发侧数据分析系统的历史演变过程,同时也简单介绍下QuickBI的上手教程。

  • 一、数据分析系统演变过程

    • 1、数据分析系统1.0——统计后台

    • 2、数据分析系统2.0——天机分析决策系统

    • 3、数据分析系统3.0——QuickBI

  • 二、玩转QuickBI

    • 1、BI看板搭建流程

    • 2、新建数据源

    • 3、搭建数据集

                  3.1、可视化创建法

                  3.2、SQL创建法

    • 4、数据集配置权限

    • 5、配置仪表板

    • 6、仪表板配置权限

一、数据分析系统演变过程

1、数据分析系统1.0——统计后台

2018年在数据部提出产品化的方向之前,不管是哪条业务线(37网游/37GAMES),我们的数据分析系统都是以下这种司空见惯的“橙色后台”。

Image

统计后台最明显的特点就是:固定场景+二维表格。

【固定场景】业务人员针对每个分析场景都会给开发人员提需求开发新的报表,报表3件套(筛选项、维度、统计指标)在每个报表中基本上都是固定的。例如:分地区维度是一个报表,分广告渠道维度是一个报表。

【二维表格】数据展示形式是单一的,都是以二维表格去呈现数据。

在以前,这种固定化的展示形式是能满足业务人员日常的数据分析以及数据汇报工作的。

随着我们公司游戏日渐精细化,数据分析人员对数据也有了更高的要求——更快速的体验、更准确的结果、更灵活的交互、更丰富的形式。

而统计后台受限于开发框架的落后,很难去做扩展,同时由于历史包袱很多,维护成本也越来越高。

此时我们亟需一个新的数据分析系统来承载业务精细化运营的需求,于是天机—分析决策系统应运而生。

2、数据分析系统2.0——天机分析决策系统

天机是在数据部产品化潮流下诞生的,为了满足业务人员更灵活的需求,我们从报表的交互方式入手,完成了数据指标自定义报表的开发。

不同于“橙色后台”,自定义报表可支持自选维度和统计指标,随时可生成一个新的分析场景,可满足业务人员日常70%~80%的查询分析需求,同时也解放了开发人员。

Image

为了满足业务人员更丰富的展示需求,我们在前端上也开发了很多可视化的组件,饼图、柱状图、折线图、词云等等应有尽有,方便业务人员更加直观地分析数据做出决策。

Image

Image

为了满足业务人员更快速的体验,我们不断在寻找、接入新的数据库组件,从mysql到clickhouse,再到如今的hologres,努力将我们的服务做到最佳。

Image

技术上,我们的开发模式也发生了较大的变化。不同于1.0的烟囱式开发,我们不再是一个人从头到尾对接完一个需求,前后端全包。

现在一个需求往往需要多位同事合作完成,产品对接、数据治理、数据中台、数据应用、数据前端 分而治之,各司其职。

不过这也引来的另外一个问题,就是一个需求从提出到完成,中间跨度时间会比较长。当然了,这其中的因素是比较多的,这里也不细分析原因了。

如果有一个产品能支持业务快速搭建分析场景,那是极好的,于是就有了QuickBI。

3、数据分析系统3.0——QuickBI

只要在BI上搭建好了数据集,配置好了权限,那你就可以在无开发人员的情况下,在看板中玩转各种数据图表。

Image

相较于以往的开发模式,使用QuickBI能缩短一个需求落地的时间,也能更快地试错和更新迭代。

不过,QuickBI并不能完完全全替代天机系统,因为其也有一些局限性,比方说:①BI仅能做数据展示,无法支持业务对数据进行其他操作;②一些特殊复杂的逻辑在BI上是无法实现的。

所以QuickBI和天机是相辅相成,在维护好天机的同时,我们也得学会如何更好地使用QuickBI,接下来咱们就来看看QuickBI是怎么玩转的。

二、玩转QuickBI

在具体操作之前,我想咱们有必要先了解下BI看板搭建的完整流程。

1、BI看板搭建流程

Image

在接到一个准备使用BI完成的业务需求时,如果底层数据不满足当前需求,则需要数据治理同事协助新增对应的数据,有必要时,可搭建中间表提升查询效率。

底层数据准备完毕之后,后端同事即可根据业务需求搭建数据集,并对新的数据集配置对应的权限。

最后再由产品经理或者业务同事进行BI看板搭建、权限配置并发布上线。

整个流程中,除了第2步新增数据这一环,其他环节均可实现快速变更调整,可较大提高数据分析效率。

话不多说,直接上手。

2、新建数据源

在搭建数据集之前,我们需要连接上数据库,所以需要新建一个数据源:

Image

QuickBI支持的数据库还是蛮多的,MySQL、PostgreSQL、ClickHouse、Hologres、Oracle、Hive等我们常见的数据库组件。

Image

填写好具体的数据库信息即可成功添加数据源。

Image

3、搭建数据集

接下来我们在工作台中点击【新建数据集】

Image

3.1、可视化创建法

左上角选择需要的数据源,将需要的数据表拖拽到面板上即可快速创建一个数据集

Image

拖拽之后,可以看到系统帮我们自动将该数据表的字段进行了归类,分为维度和度量(即指标)。

Image

当然了,自动归类可能会跟我们实际上的不一样,所以需要自己手动重新微调下。

可将维度转换为度量,也可将度量转换为维度。

Image

由于我们的数据集搭建完成之后,使用的人员可能是产品经理或者业务同事,一般情况下他们对数据库字段其实是不太了解的,所以需要我们针对物理字段名编辑好对外展示的名称,便于使用者理解并更好的使用。

Image

如果原始字段不能满足需求,需要我们对现有字段做一些处理时,可以选择【新建计算字段】进行字段表达式编辑。

例如可以做一些case when的操作。

Image

如果涉及到更加复杂的连表操作,可直接再拖拽一个数据表到面板上,但要求所有数据表都属于同一个数据源,也就是我们技术上所理解的,不能跨实例连表。

配置好需要关联的字段和关联关系即可。

Image

针对该数据集命名之后保存即可成功创建一个数据集。

Image

3.2、SQL创建法

对于开发人员来说,我们可能更加习惯根据需求自己码SQL。

Image

SQL书写完毕之后可试运行,如果没有报错的话可点击确认编辑。

Tips:有时我们习惯在自己的本地IDE环境中去编辑SQL,记得在编辑时在最后加上limit限制行数,避免将全量数据查出来需要等待过长时间,提高SQL测试效率。

Image

SQL编辑完成之后,同样也可在界面中进行字段的微调工作。确认没问题之后点击保存即可。

Image

4、数据集配置权限

数据集创建之后,所有拥有BI账号的人员都可查询到该数据集的所有数据,因此我们需要针对数据集配置好权限控制。

在BI中权限控制有多种方式可选,鉴于篇幅问题,这里只介绍了通过标签控制权限的方式。

首先我们在用户管理中选择标签管理,此时会展示所有的BI账号,在最后点击添加标签,根据需要配置好每个账号的标签值即可。

Image

然后我们回到数据集列表,在需要配置权限的数据集后面,选择【行级权限】配置。

Image

选择【用户标签关联授权】,再选择数据集中需要跟用户标签绑定的字段。

例如下图中选择的是数据集中的【运营部门】字段,每行数据中该字段的可能值有:星海、奥丁、诺亚。

而我们在标签中已经针对不同的账号配置了对应的运营组信息,也对应了这个账号属于 星海 or 奥丁 or 诺亚。

最终各个账号就跟行数据关联起来了,每个账号只能看到对应行的数据。

Tips:可将个别用户添加到白名单中,就不受上面的权限控制影响了,可看到全部的数据。

Image

5、配置仪表板

以上全部的环节都是为了最终配置仪表板做准备的,我们现在就可以在工作台新增仪表板了。

Image

我们以一个已搭建的仪表板举例说明下会更直观。

第一步我们先从上面的组件栏拖拉需要的【查询组件】和【可视化图表】到下面的空白面板中。

第二步我们选中空白的【可视化图表】,右边就会弹出对应的数据配置窗。

第三步在右上角的数据中我们选择需要用到的数据集(只能单选),下方就会出现该数据集的维度和度量了。

第四步我们根据这个【可视化图表】需要的维度和度量,从数据集中拖拉过来,即可实时在【可视化图表】中预览出来数据了。

第五步我们可以再微调下样式。

这样就完成了一个图表的搭建,接着就可以按照这样的步骤继续选择其他的图表,进行仪表板内容扩充。

Image

当然了,以上只是介绍了最简单的BI仪表板配置的流程,一个丰富精致的仪表板需要付出更多的时间精力去配置。

后续在实践过程中会慢慢将一些经验分享给大家,敬请关注~

6、仪表板配置权限

仪表板搭建之后,我们需要对仪表板进行协同授权。

Image

针对不同仪表板的需求,可搜索指定的用户或者用户组添加授权。

Image

关于QuickBI,37GAMES在2023年也会有更多的尝试和应用场景。作为数据出身的技术开发人员,我们同样需要持续关注和多多参与实践,努力做好数据服务~