一、BI工具在企业的大数据体系中的位置
首先在我们规划产品之前我们应该知道整个大数据产品体系中BI产品处于的是哪一个层面,这样才可以对产品功能模块有个比较清晰的界定,避免一些重复造轮子、功能冗余的情况。
我把大数据产品体系可以分为4个层面
- 数据源(行为数据、日志数据、业务数据)
- 数据采集(数据中台)
- 数据加工(机器学习训练平台、用户画像构建系统、数据中台)
- 数据应用(push、BI、AI、人脸识别)
而BI工具是处于数据应用层面的产品,数据应用层面的产品是用户感知数据产品和体验数据带来的价值最直接的途径。由此可以得出BI工具重要性,可能用户对于产品的体验直接会影响用户对于企业数据部门主观的评价。
二、角色和场景
在做了一些用户的调查分析工作之后我们得出使用BI工具的用户的角色和场景:
- 查看看板的用户:主要是管理者、运营、产品、财务、人事需要用数据进行决策,对于数据库操作较为困难,有直观展示数据诉求的用户
- 制作看板的用户:数据分析师、开发工程师等具备数据开发技能,提供数据支持的用户
- 制作并查看的用户:这类用户一般拥有有权
限的数据源并具备相关技能需要用系统达成某类指标,这里泛指每个有数据看板诉求的用户
三、设计的五大要素
1. 数据源
第一个要素数据源。企业中的BI工具可能承接上游数据中台或者其他产品输出的结果,作为输入的数据源,每个业务方用的数据库都可能是不一样的,所以可接入数据源的种类决定的一个BI工具的可用性,这里接入的数据源不仅支持传统的数据库mysql,sql server等,还要支持非关系型的数据库,如mongoDB,hive,kylin,sprakSQL等。
上面所举例的都是实时的数据库,在一些比较特殊的场景,如hr考勤数据是以execl形式输出的,这个时候就要提供离线的数据源接入方式,也可以说是外部导入的形式。
. 数据模型
第二个要素构建数据模型,数据模型是用户在指定完数据源之后,需要对表进行组合,构建出表与表之间的关系。在这一个过程当中需要主要两个问题
- 构建方式:为了简化用户的操作流程降低用户的使用门槛,表与表之间构建的交互方式采用可视化的拖拉拽交互方式,通过可视化的方式组合表,改变表之间的连接关系。当然也需要提供自定义sql的构建方式满足专业程度较高对于模型自定义程度较高的用户。
维度指标设置:在构建模型的阶段并不是所有的字段都用户自助分析构建报表,在构建模型的阶段需要指定好维度和设定好指标的计算方式。
3. Dashboard构建
Dashboard构建是BI工具的一个核心操作流程,报表的分析编辑构建都在这个模块中完成。
OLAP分析:多维分析,拖拽交互,数据联动,钻取,二次计算
- 样式设定:图表的样式类型(柱状、折线、地图、饼状、散点等)每个不同的图表类型都对应不同的样式设定,包括一些值的映射关系都属于样式设定的范畴当中。
- 预警设计:指标预警可以将超过阈值的数据通过邮件或者通信工具的方式及时告知用户数据异常,让用户可以在第一时间发现问题并处理问题。
4. 看板展示
看板展示及交互:看板在发布到公告区域之后,用户可以对看板进行简单的交互,如:筛选项控制、报表高度宽度的调整、报表间数据联动设置、报表的隐藏、报表位置的调整。
移动端展示:移动端的展示其实也算是看板展示的一种表现形式,目前市面上也有解决方案,小程序或者是原生的app,这里推荐原生app个人认为原生app性能比较好而且交互能做得比较多。
看板分享:在正式发布到公共看板之前,举一个场景,分析人员可能需要部门各个人员之间或者分析人员与业务方之间需要核对以下报表是否满足发布的要求,会进行一些报表分享的动作,将报表分享给其他用户核实后再挂载到公共的看板中。
5. 权限设计
信息安全是每个企业的重中之重,权限的设计在企业的任何一个系统都是非常重要的,每个公司的业务流程和组织架构都不一样,需要根据不同的业务流程和组织架构进行规划设计,排除组织架构和业务的权限划分之外,我整理了BI工具中不同粒度的权限控制,这里我从系统的角度自上而下的介绍:
- 数据源权限:数据库权限控制、数据库中表的权限控制、表中列的值的权限控制
- 模型权限:维度权限控制、指标权限控制、基础属性配置权限控制、CRUD操作权限控制
- 目录权限:CRUD操作权限控制
- 看板权限:CRUD操作权限控制(包含样式修改权限)、分享收藏权限控制、下载权限控制
其实会发现我一直没有提性能的问题,其实bi工具没有抢做数据中台的事(数据收集、etl处理、分析计算、数据样本训练)一来性能的问题完全就依靠中台数仓的计算能力,二来也方便产品后期的拓展