01、什么是商业智能BI?
商业智能BI - 派可数据商业智能BI可视化分析平台
首先要了解什么是商业智能BI( Business Intelligence )?百度商业智能BI有很多很多官方的定义,各种解释,实际上从这么多年的经验出发,对商业智能BI的定义我认为不需要弄得很复杂,就三条:
第一,商业智能BI是一套完整的由数据仓库、查询报表、数据分析等组成的数据类技术解决方案。
第二,商业智能BI可以将企业不同业务系统( ERP、OA、CRM 等 )中的数据进行打通并进行有效的整合。这个打通和整合就包括了:ETL 过程、取数、业务逻辑规则像数据规则的转变、数据仓库建模等。
第三,商业智能BI最终利用合适的查询和分析工具快速准确的提供可视化分析或报表,为企业提供决策支持。
商业智能BI - 派可数据商业智能BI可视化分析平台
商业智能BI需要讲解的那么高大上吗? 不需要,其实简单就看三层:
第一层,可视化分析展现层- 即商业智能BI的需求层,代表用户的需求,用户要看什么,要分析什么就在这一层进行展现。
第二层,数据模型层- 即商业智能BI的数据仓库层,代表数据的分析模型,完成从业务计算规则向数据计算规则的转变。
第三层,数据源层- 即商业智能BI的数据层,各个业务系统底层数据库的数据通过 ETL 的方式抽取到 商业智能BI 的数据仓库中完成 ETL 过程,建模分析等等,最终支撑到前端的可视化分析展现。
02、商业智能BI在企业IT信息化中的位置
这一点是所有企业如果规划要上商业智能BI项目的时候必须弄明白的:商业智能BI在IT信息化中到底处于一个什么样的位置?弄清楚定位是信息化规划建设的重要前提。
通常情况下,我们会在规划商业智能BI项目前,把企业的IT 信息化分为两个阶段:一个是业务信息化,一个是数据信息化。这样对比讲,一般的用户更容易理解一些。
企业信息化- 派可数据商业智能BI可视化分析平台
业务信息化- 企业使用的 ERP、CRM、OA、MES、自建的业务系统等,业务系统的建设都统称为业务信息化。业务信息化的主要作用是管理企业的业务流程,标准化、线上化,以提高生产运营效率、降低企业成本、为商业智能BI的建设打下数据基础、是业务管理思路的体现,也是现代的企业管理方式。
数据信息化- 像我们经常所听到的大数据、商业智能 BI 、数据分析、数据挖掘等我们都统称为数据信息化。数据信息化可以帮助企业全面的了解企业的经营管理,从经验驱动到数据驱动,形成业务决策支撑,以提高决策的准确性,这是企业更高层次的企业管理方式。
没有业务系统的建设,就不会有数据的沉淀,就没有建设商业智能BI 的基础。同时,商业智能 BI 的建设能够反向推动业务信息化的建设。
企业信息化- 派可数据商业智能BI可视化分析平台
业务信息化的主要使用形式- 表单式的、以业务用户录入为主的、数据的增删改操作居多,是对业务过程数据、业务流程进行管理的软件系统。
数据信息化的主要使用形式- 例如商业智能BI主要是对业务结果数据进行整体分析呈现和局部洞察,旨在打通各类业务系统的数据,跨业务、跨系统整合数据。以数据查询和分析为主,通过联动、钻取、关联等图表可视化的方式来看数据指标。
03、谁是商业智能BI的主要用户?
商业智能BI - 派可数据商业智能BI可视化分析平台
业务信息化的主要使用对象- 一线业务执行层,更多是从业务视角出发,录入数据、记录流程、查看业务信息。
数据信息化的主要使用对象- 管理决策层,更多的是从管理视角通过商业智能BI可视化分析去定位问题、分析问题,最终形成业务决策。
两个细节要点:
第一,没有任何一个管理决策层、领导会没事打开财务系统看财务数据,打开OA 系统看看合同信息,高层领导不会看这些明细数据细节,也不会进到各个系统里面去看。也就是说,业务信息化不是给这一层领导来使用的。
第二,管理决策层是不是一定是指的企业最高层的领导,不见得,可以是企业各个组织层次中带有管理决策属性的人员,这些管理决策人员都可以通过商业智能BI提供决策支持。
04、数据孤岛到底说明了什么?
消灭数据孤岛为什么就一定要用商业智能BI,谁要求要消灭数据孤岛的?业务部门会觉得有数据孤岛的问题吗?我就用我的财务系统做账,数据孤岛就孤岛呗,我喜欢孤岛,我的财务数据就我们自己看,领导看,我一点都不孤岛。我就管个库存,数据孤岛就孤岛呗,我也用不着管其他的,我的报表够看就可以,孤岛跟我有什么关系?
所以,我们在讲商业智能BI,讲数据孤岛的时候不是给一线业务部门讲的,而应该是给跨业务、跨部门、跨组织的这些管理层讲的,只有从他们的视角里,这些业务系统和数据才是真正的孤岛。
商业智能BI - 派可数据商业智能BI可视化分析平台
深层次的原因是什么?深层次的原因就是:这些业务信息化系统并不是为管理层服务的,是为一线业务部门服务的。管理层不是这些业务系统的用户,他们绝对不会没事一个系统一个系统的登录进去看数据,他们没有这种使用习惯,他们更不会关注到各个业务系统的微观层面。所以,大多数情况下只有这些跨组织、跨业务的管理层才会认为有数据孤岛的存在,所以是他们要求解决数据孤岛。
由于商业智能BI是天然解决数据孤岛问题的,所以商业智能BI是为谁服务的,是为管理层服务的数据信息化系统。商业智能BI要打破数据孤岛,全面的看数据,全面的管业务,商业智能BI就是业务管理视角的自然延伸,要广度、要深度。
所以,站在不同的角度,有的人认为是有数据孤岛存在的,一定要解决。有的人是不认为有数据孤岛存在的,即使存在对他们也没有影响,所以不用解决,其根本原因是没有把握商业智能BI真正的服务对象。
通过数据孤岛,我们能够把一些问题看的更加清楚一些。
05、商业智能BI从业务系统取数据取数的方式
商业智能BI不是像业务系统与业务系统之间的接口开发取数方式,而是通过访问和连接业务系统数据源数据库的方式来进行取数的,不管是什么样类型的数据库,商业智能BI通过ETL连接方式连接数据库抽取业务系统原表数据到数据仓库中加工处理,最后支撑到前端的可视化分析报表展现。
商业智能BI可视化分析平台 - 派可数据商业智能BI可视化分析平台
之前有朋友这么提问的:数据源层是需要开发接口吗?
这是回答:
一般不需要,基本上这么提问的都是经历过软件系统的接口对接,软件系统的接口对接是因为有的业务软件是JAVA 开发的,有的是 .NET 开发的,有的是 B/S 架构,有的是 C/S 架构。软件系统之间的接口是需要开发参与的,主要是串联不同软件的业务流程,这种接口是需要动代码的。 但商业智能BI 在获取数据的接口不一样,是与业务系统软件自身无关的,是只需要访问和连接业务系统背后的数据库就可以的,直接从数据库取数,因此是不需要软件接口,或者没有软件接口访问这种概念的。
除非一种情况,这个业务系统是公有云,纯SAAS 模式,这种情况下就只能通过软件对外开放的 API 接口取数了。
某建筑行业管理驾驶舱- 派可数据商业智能BI可视化分析平台
某汽车行业售后业务分析- 派可数据商业智能BI可视化分析平台
06、数据中台、商业智能BI、大数据之间的关系应该如何理解?
大家在了解商业智能BI的时候,不可避免的会了解到大数据,数据中台等一些概念,如何正确理解他们之间的差别呢?大数据、数据中台都是商业智能BI发展到一定阶段的产物,核心都是围绕数据,数据采集、数据处理能力、算力的提升催生了大数据,数据资产和数据服务催生了数据中台,核心的数仓建模自商业智能BI 一脉相承未曾改变,最终出口还是商业智能BI 可视化,所以商业智能BI的位置处于整个信息化建设的最顶端。
07、关于商业智能 BI 认知上的几大误区
关于商业智能BI的介绍,网络上有太多的杂音,总而言之会把商业智能BI讲解的貌似很简单,感觉上买了一个工具就可以解决所有的问题,这其实是一个非常大的误区。
我这里总结了一下,大家对商业智能BI 的理解常会碰到的一些误区:
1.商业智能 BI 就是报表可视化,就是一堆可视化图表,商业智能BI 就是前端可视化。
2.商业智能BI就是一个拖拉拽的分析工具产品。
3.商业智能BI就是商业智能BI,跟数据仓库没有关系。
4.有了商业智能BI就不需要数据仓库建模,业务人员就可以自己做商业智能BI分析,就可以拖拉拽做商业智能BI分析。
5.商业智能BI 就是业务驱动的,不需要 IT 人员支撑,敏捷商业智能BI不需要 IT 介入。
6.商业智能BI直连不香吗?直接连接数据源不就可以做分析,不需要数据仓库。
首先简要纠正一下对于这些问题的理解。
1.商业智能 BI 就是报表可视化,就是一堆可视化图表,BI 就是前端可视化。
商业智能BI 是一套完整的有数据仓库、数据分析、数据报表等组成的数据技术类的解决方案,在一个 BI 项目中,20% 的时间做前端分析报表,80% 的时间都在底层数据仓库的设计、ETL 的开发、取数开发等工作。
所以可视化报表只是商业智能BI 的最终呈现,但不是商业智能BI 的全部。
2.商业智能 BI 就是一个拖拉拽的分析工具产品。
拖拉拽的可视化分析工具准确来讲只能解决商业智能BI 的一部分,即可视化分析。但其实商业智能BI 所包括的技术范围还是比较广的,涉及到从底层数据取数到前端展现分析的各个方面。以微软为例,早在 SQL Server 的时候就可以看到完整的 Integration Service( SSIS )、Reporting Service ( SSRS )、Analysis Service ( SSAS ),这三个服务加上 SQL Server 自身构成了微软的商业智能 BI 解决方案。( SQL Server 2000 的 DTS 不知道还有多少人记得 )Reporting - 可视化展现只是商业智能BI 解决方案的一部分。
SSIS 是解决什么的- ETL 工具,Extraction 抽取 - Transformation 转换 - Loading 加载,做整个 ETL 的可视化设计、包的管理、ETL 包调度管理,包含了 Package - Control Flow - Data Flow 做整个数据抽取的管理。数据仓库 DW 的分层设计,例如 ODS / Staging 层、Dimension 层、Fact 层( 从 DW 到 DM )层的逻辑表数据抽取也都是可以放到 SSIS 中完成的。
我之前就是微软商业智能BI 技术线的,早些年的时候积累过不少的商业智能BI 技术博客 - BIWORK 的技术博客
SSRS 是解决什么的- Reporting 报表展现,当初的报表展现比较薄弱。在 Windows 8 Metro UI 设计刚出来的时候,我们在 SSRS 中借鉴了 Metro UI 的样式,算是比较前卫和惊艳的了。
客观来讲,很多国内外报表工具都借鉴过SSRS 的数据集模式( 写一条 SQL 查询或者存储过程返回一个查询的结果绑定到一个数据集 Dataset 中,图表与数据集绑定,图表的字段引用自数据集 ),但这种方式也有它的限制使用场景或者使用前提,后面会陆续讲到这个问题。
SSAS 是解决什么的- 空间换时间的多维分析实现,OLAP、CUBE 立方体。例如在分析报表中多个维度 ( Dimension ) 可以和多个度量( Measure ) 组合,以时间、区域、产品三个维度和销售收入这个度量为例子,在用户打开一个报表,根据报表的字段可能组合的查询就是:
SELECT 时间,
区域,
产品,
SUM ( 销售收入 )AS 收入
FROM 事实表 JOIN 时间维度表 ON XXXXX
JOIN 区域维度表 ON XXXXX
JOIN 产品维度表 ON XXXXX
GROUP BY 时间、区域、产品
有可能是这样的一个查询
SELECT 时间,
区域,
SUM ( 销售收入 )AS 收入
FROM 事实表 JOIN 时间维度表 ON XXXXX
JOIN 区域维度表 ON XXXXX
GROUP BY 时间、区域
当底层数据表数据量过大、聚合查询和复杂,各种维度和事实度量组合的SQL 查询大量的发往数据仓库查询,这种查询效率可能会变得非常的差,因为数据查询 SQL 本身就可能需要执行很长时间,还不算返回到前端报表的中间数据传输过程、前端报表的渲染时间等等,所以通过 SSAS 实现一个 CUBE 立方体,本质就是相当于把各种维度和度量的这种聚合查询( 各种聚合函数,可以选择 ) SQL 给提前执行了,最后将各种维度和度量 SQL 查询的值提前存储起来。前端报表连接到 CUBE 中直接使用预计算好的值就可以了,而不再需要通过 SQL 到数据仓库层查询,这就是空间换时间的原理。
讲到这里说明了一个什么问题,就是一套完整的商业智能BI 实际上包括的有很多东西,有底层数据处理的 ETL 过程,也有前端可视化分析报表的。
在ETL 工具层面:微软 SSIS、Informatica、IBM DataStage、Pentaho、Kettle、DataWatch 等等。
在报表Reporting 工具层面:早期的微软 SSRS、IBM Cognos、Oracle BIEE、SAP BO 等等。
单纯的拖拉拽的BI 可视化分析工具严格来讲只能定位于个人和部门级的商业智能BI 分析工具,因为单纯的上一个商业智能BI 分析工具解决不了商业智能BI 的全部,也代替不了商业智能BI 的全部。
3.以前也总有人说商业智能BI就是业务驱动,商业智能BI就是 BI,跟数据仓库没有关系。
有了商业智能BI 就不需要数据仓库建模,业务人员就可以自己做商业智能BI 分析,就可以拖拉拽做商业智能BI 分析,,不需要 IT 人员支撑,敏捷商业智能BI 不需要 IT 介入,不需要建数据仓库,我以前有段时间也是这么认为的。但是再沉淀了一段时间,对这种方法论进行过一段时间的追踪,最后发现其实是存在很大问题的。
数据可视化大屏- 派可数据商业智能BI可视化分析平台
但凡有任何商业智能BI 的销售或者售前告诉用户,你们企业的商业智能BI 项目不需要构建数据仓库,直接通过商业智能BI 分析工具拖拉拽就可以搞定企业里面所有的分析,不需要 IT 人员支撑,业务人员完全可以自己搞定... 类似于敢这样承诺的,要么是对商业智能BI 不懂,要么就是真忽悠。
在企业级的商业智能BI 项目建设中,真正能做到完全靠业务人员简单拖拉拽一些就能随便实现数据可视化分析,至少在我个人从业的十几年工作经验中,95%以上的企业都做不到。我服务过的重点企业包括:SHP( Security Health Plan )、微软(中国)、微软(美国)、VWFC( 大众金融 )等。
VWFC 做的算是非常不错的,少有的业务人员自己动手做很多报表,线上跑了几千张报表。为什么? 因为底层数据仓库就搭建了很多年,底层数据架构相对比较规范。Business Driven 业务驱动,它的前提是什么?
1) 底层数据质量很规范,数据仓库架构很完整,不让业务人员碰底层数据,ETL、取数、指标计算等等统统都是 IT 部门来维护。
2) 业务人员通过培训要熟练掌握商业智能BI前端报表工具的使用,要很懂放出来的数据分析模型接口。
3) 业务人员要非常熟悉业务和数据。
第2)和第 3)条很多企业没有问题,第 1)条直接弄个前端商业智能BI 工具让业务人员解决,能解决掉吗? 很显然业务人员是不具备这种能力的。
这就是一到培训的时候,商业智能BI工具使用起来很简单,但是一旦到实际的企业商业智能BI 项目开发就发现寸步难行。因为培训的时候,给出的数据表都是经过选择的,永远都是质量很高的、规范的只需要简单左表连右表例如销售订单表、订单明细表,自然很容易把可视化报表给实现出来。
数据可视化- 派可数据商业智能BI可视化分析平台
但是在实际企业商业智能BI 项目分析中,分析指标的计算规则绝非简单几张表关联就可以解决的,不信的话可以挑战一下一个实际的指标计算逻辑:挑战一个 ETL 数据清洗的小案例 在数据库中就一张数据表,数据理解起来也很简单,但很多商业智能BI 开发人员做起来也需要废很大的精力,就更别谈业务人员自助商业智能BI 分析了。
讲这么多不是为了一味否定自助式商业智能BI 它的作用和能力,自助式商业智能BI 有它的使用场景,也确实帮助我们简化了很多的 BI 工作,但从专业角度出发,特别反感是部分商业智能BI 厂商以一种不负责任的方式反复向市场强化类似于这样的概念:商业智能BI 就是可视化报表、商业智能BI 不需要数据仓库建模、传统数据仓库建模很落后、商业智能BI 就是自助分析、商业智能BI 自助分析很简单、业务用户简单几天培训就可以学会并且想怎么分析就怎么分析...
从市场宣传和销售的角度来说,简化产品的复杂度和上手难度的宣传是没有问题的,有问题的是以一种错误的讲解、不专业的讲解最终误导企业接受了这些不正确的概念,并以这些不正确的概念来评估与规划商业智能BI 项目的建设,没有充分预计到商业智能BI 项目建设过程中可能会遇到的挑战与风险,最后导致项目的不成功与失败、反复建设。
我们在北京就有一个客户之前花了一百多万上了一套所谓的商业智能BI 项目,项目上线了一年左右,到最后完全推不动,失败了。后续找到派可数据,我们给他们上了派可数据商业智能BI分析平台,这个项目我们连续做了好几期,客户还写了感谢信。之前为什么推不动、项目会失败:不重视数据仓库的规划。因为他们的业务是连续的、变动的,每年的需求都是需要动态调整的,数据持续增加,分析的深度和广度都是在不断变化,没有一个好的底层数据架构来支撑,光靠SQL 取数、建数据集出报表的形式是不可能支撑一家企业未来 3-5 年甚至更长远的业务分析需求变化的。
除了这个案例之外,在我的手机上有很多之前上过商业智能BI 最终失败、没有做好,找过来聊天吐槽的记录,是真的产品不好吗?我也客观的帮助他们分析过:这些产品本身有的是Gartner 魔力现象 Leader 象限的产品,你说产品行不行? 有的产品是国内商业智能 BI 领域很多年的老品牌,你说产品行不行? 客观来讲,这些产品从我个人角度来说,这些产品其实都很优秀,产品本身是没有太大问题的。
问题在于,这么多从零到一需要上商业智能BI 的企业不知道一个商业智能BI 项目中原来还有那么多坑,很多商业智能BI 厂商会不会去把这些点给企业客户讲清楚,一个商业智能BI 项目到底怎么干、中间有什么样的风险、以后还会遇到什么样的问题、应该怎么解决这些问题、有什么样的方法论和手段... 如果只是为了卖一套商业智能BI 产品或者工具,你觉得这些商业智能BI 销售会跟客户讲这些东西吗? 不会的,至少不会讲的太深太全,因为这么一讲把商业智能BI 难度讲太复杂了,一旦没有讲好,反而降低了客户的信任。
有的时候不讲,是因为怕讲复杂了,让企业客户决策周期拉的太长了。有的时候不讲,是因为不懂。你不讲,客户不知道,客户也没有经验,后续商业智能BI项目建设就会出问题。
在一次大会上,某商业智能BI厂商一位高级售前技术专家在跟客户交流时说过的一句话:商业智能BI直连不香吗?直接连接数据源不就可以做分析,不需要数据仓库。无知者无畏,实在听不下去,就打断直接沟通了一下。通过沟通,可以判断这个所谓的技术专家基本上没有做过完整的商业智能BI 项目经验,从零到一搭建一个商业智能BI 项目的能力等于零。以这样的一种能力跟客户来引导一个商业智能BI 项目,这种商业智能BI 项目的质量能有保证吗,很难的。
这也就是我们派可数据、我个人做视频号《吕品聊数据》的原因,客观的讲讲商业智能BI、客观的讲讲数据,普及一下我们认为正确的商业智能BI 知识和概念。告诉我们广大的商业智能BI 用户,商业智能BI 到底应该怎么理解、怎么认知,商业智能BI 到底有什么样的坑需要我们的企业注意。
我们不能说我们派可数据在商业智能BI 领域讲的知识和概念就一定是放之四海而皆准的,但是我们欢迎任何商业智能BI 厂商或者任何 BI 个人爱好者就商业智能BI 的一些知识和概念来向我们挑战,来看看派可数据所普及的一些商业智能BI 知识概念到底对不对。如果普及的对,说明这些问题大家确实都碰到了,这些知识和概念对于企业而言就是难得的经验。如果普及的不对,不对又是在什么地方,指出来大家一起看看,一起探讨一下,我们还可以为企业做些什么。
08、报表工具是怎么来的?
这十几年我一直在技术领域、信息化领域、商业智能BI 行业,一直没有出这个圈。做过 JAVA ( AWT、SWING、JSP、Hibernate、Spring、ibatis )、.NET ( ASP、、C#.NET )、Object-C 、JS 等等技术开发,业务软件系统平台开发。
早期前端技术很弱,AJAX 的实现也都需要手写,要实现一个表单内数据的点击编辑和修改需要自己用 JS DOM 操作。做报表基本上就是 JSP、ASP 脚本语言在前端嵌套 HTML 做循环输出,报表样式很原生很丑陋,稍微复杂一点的表格报表样式都需要用 JS 来调整。
那个时候用过的报表像Crystal Report 水晶报表、润乾报表等等,在前端脚本语言中有标签直接可以引用,报表生成代替了大量的手写代码。早期的前后端技术是不分家的, 还稍微好一些,前端逐步有一些集成控件可以直接使用,JAVA 是真没有。上面说到的这个阶段大概在什么时候呢,前后,我觉得已经使用的很广泛了,老的 CSDN 上应该还能找到很多原始的报表标签帖子。
像老一批报表还有像金峰报表Jreport、思达报表 StyleReport 等等在国内也有一定的市场。早在 年之前,有些报表厂商的收入规模就已经突破了一个亿,说明基础报表这个市场还是非常不错的。
那个时候的报表定位是什么,就是纯粹的Report 报表,通过程序从后台数据库中查询返回的数据聚合 List 再到前端脚本页面上绑定一下就生成了各种报表,实际上就是用在各个业务软件系统之中的报表展示,还远远没有到 商业智能BI分析这个层面。
并且还有大量的软件开发厂商实际上已经具备了很强的报表能力,不过这些报表能力并没有单独拿出来作为报表产品在市面上运营而已。
逐步的,随着前端技术、前端框架的完善,从传统表格技术开始到了各类柱状图、条形图、饼状图的可视化展示,到了这个阶段,报表和商业智能BI的边界越来越模糊。为什么?商业智能BI的报表展现能力也就和传统报表效果大致相当,还没有出现那种自助分析、自助拖拉拽就可以实现快速多维分析的能力。
讲这么多主要想说的是我们所看到的很多商业智能BI项目都是拿报表思维去实现的,就是 SQL 到数据集到前端展现。而真正的商业智能BI思维应该是什么呢? 多维思维、模型思维,这一点决定了一个商业智能BI 项目的最终走向,后面会具体讲到这些点。
09、商业智能BI的本质 - 企业业务管理思维的落地
商业智能BI的本质 - 派可数据商业智能BI可视化分析平台
商业智能BI 到底是什么?技术?产品?还是其它?我们把对于 BI 的理解再提升一个层次:商业智能BI 是一家企业业务和管理思维的落地。这个怎么来理解呢?简单来说,就是在可视化报表上呈现的内容就是一家企业真正关注的内容,这里面有管理高层重点关注的企业经营性的分析指标,也有某具体部门的。
10、商业智能BI 和数据仓库 Data Warehouse 有什么区别和联系?
经常会碰到有人问商业智能BI和数据仓库有什么区别,实际上这个问题的背后能反映出来一些朋友对商业智能BI的理解还是有些不准确和偏差,这个问题实际上从概念上把BI和数据仓库人为的割裂了。这种情况其实也比较正常,因为大家对商业智能BI的第一印象就是各种炫酷的可视化图表、报表,再加上市面上有很多轻量的前端可视化商业智能BI分析工具,就造成大家对BI的认知就停留在可视化这部分了。
准确的来说,商业智能BI不仅仅包含前端可视化分析、报表展现的能力,更包含了底层数据仓库的建设过程。Gartner 在上世纪九十年代就已经提到了商业智能 Business Intelligence,它更多的认为:BI是一种数据类的技术解决方案,将许多来自不同企业业务系统的数据提取有分析价值的数据进行清洗、转换和加载,就是抽取Extraction、转换 Transformation、加载Loading 的ETL过程,最终合并到一个数据仓库中,按照一定的建模方式例如Inmon 的3NF 建模、Kimball 的维度建模或者两者都有的混合式架构模型,最终在这个基础上再利用合适的分析展现工具来形成各种可视化的分析报表为企业的管理决策层提供数据决策支撑。
所以,可以从这里能够看到数据仓库Data Warehouse 的位置是介于可视化报表和底层业务系统数据源之间的这一层,在整个商业智能BI项目解决方案中起到的是一个承上启下的作用。如果把商业智能BI比作是一个人的话,上半身特别是脸这个部分就是颜值,下半身脚踏实地吸取大地的精华,中间这部分的腰腹核心、核心力量就是数据仓库。
篮球之神乔丹不光光有颜值,滞空能力是顶尖的存在,才会在上篮的时候有各种让人惊叹的动作,能够支撑这些动作其实靠的是什么?就是乔丹的腰腹核心力量。
所以,商业智能BI在前端可视化分析层面要玩出各类精彩的动作,没有数据仓库这个核心力量的支撑是很难做到的。
那大家也会问到,市面上不是有很多直接链接数据源就可以拖拉拽分析的商业智能BI工具产品吗,不也一样可以做商业智能BI分析报表吗?这种独立的、单独的面向前端的商业智能BI分析工具,他们更多的定位是部门级和个人级的商业智能BI 分析工具,对于深层次的需要复杂数据处理、集成、建模等很多场景是无法解决的。最好的方式就是底层构建一套完整的数据仓库,把很多分析模型标准化,再利用这些前端商业智能BI分析工具结合起来,这样才能真正的把前端商业智能BI分析能力给释放出来。
很多企业认为只要买一个前端商业智能BI分析工具就可以解决企业级的商业智能BI所有问题,这个看法实际上也不可行的。可能在最开始分析场景相对简单,对接数据的复杂度不是很高的情况下这类商业智能BI分析工具没有问题。但是在企业的商业智能BI项目建设有一个特点,是一个螺旋式上升的建设过程。因为对接的业务系统可能会越来越多,分析的深度和广度会越来越多,数据的复杂度也会越来越有挑战性,这个时候没有一个很好的数据仓库架构支撑,光靠前端BI分析工具基本上是无法搞定的。
就像去中药店抓药一样,之所以抓药很快,是因为在抓药前,别人已经把各种原生的中药材(原始数据源的数据)分门别类清理干净放好了,这样想怎么搭配药材(维度指标组合的可视化)就很快了。
这样的企业在国内有很多,也是因为对商业智能BI理解的深度不够导致了在商业智能BI项目建设上一些方向性的错误,最后导致商业智能BI项目很难继续推进。
所以在企业中,我们需要明确我们的商业智能BI建设是面向企业级的还是个人和部门的分析工作。如果是个人数据分析师,使用这类前端商业智能BI分析工具就足够了。如果是需要构建一个企业级的商业智能BI项目,就不能只关注前端可视化分析能力这个层面,更应该关注到底层数据架构的构建,也就是数据仓库这个层面。
11、数据仓库的建模方法论 Kimball vs Inmon 以及混合架构
数据仓库建模时商业智能BI项目建设中的重中之重,Inmon 的三范式 3NF 建模和 Kimball 的维度建模都是商业智能BI 数据仓库建模的方法论,这两种商业智能BI建模的方式有什么区别和联系。
12、实际开展一个BI 项目的时候对于需求的落地的方法论
商业智能BI是一个完全需求驱动的,既然是需求就需要做访谈和调研。
13、什么样的企业应该要上商业智能 BI 了?
什么样的企业适合上商业智能BI?看业务基础信息化程度和日常业务管理的细致程度和颗粒度。业务基础信息化程度就是企业自身的IT业务系统基础建设,没有业务系统的支撑,做商业智能BI就缺乏数据基础;第二就是业务管理的颗粒度,企业自身业务管理程度是不是比较细致了,急需通过商业智能BI来提升业务管理、决策支撑的效率。
14、如何高效的给高层领导做 BI 数据分析汇报总结
做完商业智能BI项目,还要考虑最终如何跟老板汇报的问题,掌握商业智能BI数据分析思维框架和汇报的五个重点:用户业务层次与范围、工作成果、计划执行复盘、问题反馈、展望规划与愿景。
15、商业智能BI与企业经营管理的结合度
商业智能BI分析跟企业的经营管理分析高度结合,ROE 高的企业有可能是利润高像茅台、珠宝行业,有可能是周转快比如像零售行业,也有可能是融资能力比较强会利用杠杆,从ROE 归因分析看行业特点。
16、商业智能BI项目行业和业务知识的积累
做商业智能BI还必须熟悉行业和业务知识,不结合行业业务知识,商业智能BI的项目是很难落地的。
17、关于商业智能 BI 实时性处理的话题
商业智能BI 对数据的处理存在一定的滞后性,通常采用T+1模式,主要原因是ETL数据处理过程是需要有大量的时间损耗,通常是采用空间换时间的方式。
将以前按照商业智能BI 数据仓库分层的ETL调度设计成可按单独指标并自动寻找依赖的调度就大大的增加了对个别指标调度和准实时处理的灵活性。
离线数据与实时处理针对的业务场景不同,背后的技术方式实现不同,资源投入也不同,了解它们之间的定位差异有助于选择合适的方案以最小的资源投入达到企业既定完成商业智能BI 项目建设目标。