
1.3 BI的功能与技术
从1.1节中的定义可知,BI并不是指某一种技术,而是一组技术及应用。本节介绍BI涵盖的技术及其功能。
1.3.1 BI的功能架构
按照从数据到知识的处理过程,BI的功能架构如图1-6所示,分为数据底层、数据分析和数据展示三个层级。其中数据底层负责管理数据,包括数据采集、数据ETL(Extract-Transform-Load)、数据仓库构建等环节,为前端报表查询和决策分析提供数据基础;数据分析主要是利用查询、OLAP分析、数据挖掘及可视化分析等方法抽取数据仓库中的数据并分析,形成结论,将数据转化为信息和知识;最终通过数据展示层呈现报表和可视化图表等数据见解,辅助用户决策。

图1-6 BI的功能架构
具体到企业的决策与经营环节,BI的运作流程如图1-7所示。首先从来自ERP(Enterprise Resource Planning,企业资源计划)、OA(Office Automation,办公自动化)、财务等不同业务系统以及外部的数据中提取出有价值的部分。接着,对数据进行处理与存储,经过ETL、数据清洗等过程后,合并到企业级数据仓库,得到企业数据的全局视图。最后,在此基础上利用合适的查询和分析工具、OLAP工具等对数据进行分析和处理,将数据信息转变为管理驾驶舱、中国式复杂报表、自助分析、多维数据处理等应用,从而为企业管理者和运营人员的决策过程提供支持。

图1-7 BI支持企业决策与经营的过程
1.3.2 BI的主要功能
企业决策是一个判断怎么做的过程,BI要辅助管理者做决策,就必须提供相关的参考信息,即是什么和为什么。因此,按照对数据分析由浅到深的顺序,BI的功能可以分为报告、交互分析、实时数据与预警、数据挖掘和自助分析等4个层次,如图1-8所示。层次越高,BI的智能程度也越高。

图1-8 BI功能金字塔
1.报告功能
第一层,BI需要告诉企业过去发生了什么,即要有一定的报告能力。BI能提供事先定制好的报告、企业平衡记分卡或综合管理“仪表盘”,集中管理关键绩效指标(KPI),帮助企业了解运营情况,用简单的方式展示复杂报告,监控企业的运行。
2.交互分析功能
仅仅将数据呈现出来还不够,还要“揭示(这样的情况)为何发生”,这就需要BI具备良好的交互分析功能,例如数据钻取、联动分析等。钻取是改变数据维度的层次,变换数据分析的粒度,包括向上钻取(Roll up)和向下钻取(Drill down)。向上钻取是在某一维度上将低层次的细节数据概括到高层次的汇总数据,或者减少维数,是自动生成汇总行的分析方法。向下钻取则相反,它通过从汇总数据深入到细节数据进行观察或增加新的维度。例如用户在分析“各地区、城市的销售情况”时,可以将某一个城市的销售额细分为各个年度的销售额,对某一年度的销售额,可以继续细分为各个季度的销售额。而联动分析本质上则是统一视图下的“钻取”,在用户体验上会优于数据钻取。
3.实时数据和预警功能
第三个层次需要揭示现在发生了什么,对BI来说,就是提供实时的数据,并且在一定规则下能发送预警通知。常见的通知方式有颜色标识预警、邮件信息推送、短信提醒等定时调度功能,目的是当企业的生产经营发生异常情况时能够及时采取干预措施。例如,根据BI系统中的数据,发现最近客户因某种原因对服务或者产品不满,投诉较多,有可能会取消订单时,及时发送预警通知客户经理马上和客户联系,争取挽留客户,而不是等到客户流失之后才采取行动。
4.数据挖掘和自助分析功能
对企业来说,仅仅了解现在的状况还远远不够,还需要推断未来会发生什么。未雨绸缪能够帮助企业预估风险等级,科学地调配资源。借助BI的数据挖掘功能,我们可以分析客户的类别、预测客户行为、预测业务趋势、辨认欺诈行为等。而自助分析功能则为业务人员提供了更灵活的分析能力,仅用简单的鼠标拖曳操作,就能选择自己需要分析的字段,几秒内就可以看到想要的数据,大大缩短了数据分析报告的制作周期,让数据分析过程不中断,让灵感快速得到验证。
1.3.3 BI的主要技术
BI涉及的主要技术可以分为展示类、分析类和支撑类三个层级,如图1-9所示。

图1-9 BI涉及的主要技术
1.展示类技术
最核心的BI技术是展示类的数据可视化技术。抛开企业数据量级区别和深度分析的需求不谈,数据可视化技术能够满足最基本的BI目标,即将数据转化为信息并辅助决策。数据可视化的具体形式又分为报表和可视化图表两大类,其中报表是我国大多数企业目前采用的主要数据展示形式。
数据可视化旨在借助图形化手段,清晰、有效地传达与沟通信息。其基本思想是将数据库中的每一个数据项作为单个图元素表示,大量的数据集构成数据图像,同时将数据各属性的值以多维数据的形式表示,可以从不同的维度观察数据,从而对数据进行更深入的观察和分析。例如,柱形图、折线图和饼图等一些基础的图表就可以直观地展示数据。当数据较为复杂时,可以通过复杂图表搭配多样的交互效果来将数据可视化。
2.分析类技术
OLAP、数据挖掘等分析类技术,能够基于现有数据提供更深入的见解。数据挖掘技术需要一定数据量做支撑,而企业不是一定要等到数据量足够大时才能应用BI,因此结合我国企业的信息化现状,数据挖掘目前并不是BI系统的关键技术需求。
OLAP主要关注多维数据库和多维分析,它的目的是让分析人员能够迅速、一致、交互地从各个方面观察信息,深入理解数据。OLAP的基本多维分析操作有钻取、切片和切块、旋转等。钻取在前面有所提及,例如从省份钻取到城市、从集团钻取到子公司等;切片和切块就是舍弃一些观察角度,在更少的维度上集中观察数据,例如企业想了解某一产品对整体利润的贡献,就可以通过切片的方式将该产品的利润数据从所有产品数据中抽离出来。旋转操作可以得到不同视角的数据,例如常见的行列交换等。
3.支撑类技术
支撑类技术包括数据仓库、ETL、大数据技术和元数据管理等,用于管理繁杂的、不断增长的企业数据,为整个BI系统提供持续、强有力、稳定的支撑。
数据仓库(Data Warehouse)是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策。数据仓库的出现并不是要取代数据库,大部分数据仓库还是用关系数据库管理系统来管理的,数据库与数据仓库相辅相成,各有千秋。
ETL是Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(Extract)、交互转换(Transform)、加载(Load)至目的端的过程,它是构建数据仓库的关键环节。数据仓库主要为决策分析提供数据,所涉及的操作主要是数据的查询,所以ETL过程在很大程度上受企业对源数据的理解程度的影响,也就是说,从业务的角度看,数据集成非常重要。
大数据技术即收集、存储、处理、分析大数据的相关技术,例如用于文件存储的HDFS(Hadoop分布式文件系统)、Tachyon,用于数据离线计算的MapReduce、Spark,用于数据查询的Hive、Impala、Pig等。当前大部分企业的数据都符合大数据的5V特征,即Volume(大量)、Velocity(高速)、Variety(多样)、Value(低价值密度)、Veracity(真实性),而BI作为将数据加工成知识的有效方式,自然需要具备更多的大数据能力,以适应企业数据不断激增的现状和趋势。BI中的大数据技术主要用于支撑企业大数据量的计算,例如BI结合MPP(Massively Parallel Processor,大规模并行处理)架构的高效分布式计算模式,能够通过列存储、粗粒度索引等多项大数据处理技术提高海量数据的存储和计算效率。此外,BI也可以架设在大数据应用层,利用ETL操作后或者从Hive过来的数据做通用类的业务分析。这样的组合结构既能满足企业对海量实时数据的分析需求,又能满足决策型的业务分析需求。
元数据(Metadata)又称中介数据、中继数据,用于描述数据属性的信息,是描述数据的数据。其使用价值主要在于识别资源、评价资源、追踪资源在使用过程中的变化,简单高效地管理大量网络化数据,实现信息资源的有效发现、查找和一体化组织,有效管理所使用的资源。由于元数据也是数据,因此可以用类似对待数据的方法在数据库中存储和获取。