最近正好在搞一个BI项目,研究了不少这方面的知识。所以今天来给大家普及一下BI和数据仓库的关系。
先分别说说两者的概念:
BI又叫商业智能,简单点说就是从本质上改变企业做决策拍脑袋的情况。BI的定义分为广义和狭义两种。
广义上的BI可以定义为一个系统方案,包含了从数据仓库,到ETL(数据清洗),OLAP分析,以及深度的数据挖掘,前端报表展现。在具体企业数据分析项目中,会将它们中的若干个结合起来,实现一个完整的企业数据分析技术方案。

数据仓库定义,官方解释是一个面向主题的、集成的、相对稳定的、反映历史变化的数据集合,用于支持管理决策和信息的全局共享。
面向主题指的是,数据仓库中的数据都是按照主题进行组织的,比如:收入、客户、销售渠道等等。而不是不是像业务支撑系统那样是按照业务功能进行组织的。
集成指的是据仓库中的信息不是从各个业务系统中简单抽取出来的,而是经过一系列加工、整理和汇总的过程,因此数据仓库中的信息是关于整个企业的一致的全局信息。
相对稳定指的是数据仓库中保存的数据是一系列历史快照,不允许被修改。用户只能通过分析工具进行查询和分析。
反应历史变化是指数据仓库内的信息并不只是反映企业当前的状态,而是记录了从过去某一时点到当前各个阶段的信息。通过这些信息,可以对企业的发展历程和未来趋势做出定量分析和预测。

数据仓库的逻辑架构
数据仓库的输入方是各种各样的数据源,最终的输出用于企业的数据分析、数据挖掘、数据报表等方向,支撑企业决策
所以从广义BI上来理解,数据仓库是BI的基石,数据仓库为BI系统提供良好的数据基础,为分析决策提供数据支持,也就是地基和房子之间的关系。
接下来再说说狭义BI和数据仓库的关系
传统的BI方案的数据仓库、ETL、OLAP分析、数据挖掘,前端报表展现的各个环节都是不同的产品,不同的专人负责。假设一个分析报告要改动,涉及到数据层。则要IT部门去改进数据层和业务层,需要耗费很长时间去梳理模型。
于是,随着技术发展,市场上出现了敏捷型的BI产品,也就是狭义上的BI, 把数据建模和和OLAP分析都集成到应用里了, 不用事先建模,在做报表,拖拽数据字段的时候,就能随机看到分析结果,做到即时分析,且在分析过程中灵活调整分析维度和报表展现,需求变更可以在一天之内响应。
在利用BI工具构建BI系统的时候并不一定需要数据仓库,在数据库的基础上搭建也行。
但是对于中大型企业,考虑到日常事务多,数据量大,数据库往往要做更多的写优化,在这样的背景下通过构建数据仓库,将数据通过ETL过程抽取到数据仓库,在此基础上利用BI工具做数据分析与前段展现会更加高效。
所以在很多BI项目中,BI工具承担的主要还是前段分析、展示的作用,也就是上面架构图中最右边的部分。




