• 什么是BI(Business Intelligence)


    一、BI的定义

    BI是Business Intelligence的英文缩写,中文解释为商务智能,用来帮助企业更好地利用数据提高决策质量的技术集合,是从大量的数据中钻取信息与知识的过程。简单讲就是业务、数据、数据价值应用的过程。用图解的方式可以理解为下图:

    图(1)

    这样不难看出,传统的交易系统完成的是Business到Data的过程,而BI要做的事情是在Data的基础上,让Data产生价值,这个产生价值的过程就是Business Intelligence analyse的过程。
    如何实现Business Intelligence analyse的过程,从技术角度来说,是一个复杂的技术集合,它包含ETL、DW、OLAP、DM等多环节,基本过程可用下图描述。

    图(2)

    上图流程,简单的说就是把交易系统已经发生过的数据,通过ETL工具抽取到主题明确的数据仓库中,OLAP后生成Cube或报表,透过Portal展现给用户,用户利用这些经过分类(Classification)、聚集(Clustering)、描述和可视化(Description andVisualization)的数据,支持业务决策。

    说明:
    BI不能产生决策,而是利用BI过程处理后的数据来支持决策。哪么BI所谓的智能到底是什么呢?(理清这个概念,有助于对BI的应用。)BI最终展现给用户的信息就是报表或图视,但它不同于传统的静态报表或图视,它颠覆了传统报表或图视的提供与阅读的方式,产生的数据集合就象玩具“魔方”一样,可以任意快速的旋转组合报表或图视,有力的保障了用户分析数据时操作的简单性、报表或图视直观性及思维的连惯性。

    我想这是大家热衷于BI的根本原因。

    二、BI的诞生

    随着IT技术的进步,传统的业务交易系统有了长足的发展,已经实现了业务信息化,每一笔业务数据都记录在数据库中,星转斗移,累积了以TB为计量单位的业务数据记录。也许你会问:这么多数据,占用了很多存储设备,耗费存储成本,却又不经常访问,留着它有什么用处?可以给你肯定的回答,留着这些历史数据意义巨大,挖掘业务的规律、支持决策。

    典型的案例有“尿片和啤酒”的故事,尿片和啤酒本来是两样不相干的东西,可是,有人就发现,星期五在超市里购物的,购买尿片的年轻父亲中有30%~40%的人同时购买啤酒。原来,星期五年轻的父亲购买尿片时,还会为自己捎带买啤酒,因为,星期五是各家电视台转播橄榄球赛的时间,于是,超市老板们就把尿片和啤酒捆绑销售获得了巨大成功。
    这个故事成了一个利用数据挖掘商业价值最大化的神话。 由此看来,非常不关联的两样东西,通过海量的信息数据处理,可以挖掘出它们之间潜在的关联,将这种关联商业化,就会得到意想不到的新业务或新的商业模式。
    到底该怎样把这些占据大量存储空间的数据的价值挖掘出来,让这些数据从成本的消耗者变成利润的促进者呢?新的数据分析技术由此诞生了,完成了“数据”到“数据价值”转换的环节,同时给这项技术起了一个响亮而又神密的名字“BI”(Business Intelligence)

    三、基本技术
    BI(Business Intelligence)是一种运用了数据仓库、在线分析和数据挖掘等技术来处理和分析数据的崭新技术,目的是为企业决策者提供决策支持。这似乎是BI的官方定义,也是广大BI玩家一成不变的宗旨,哪么BI技术涉及了哪些方面呢?从图(2)中,我们不难看出其核心技术中ETL、DW及OLAP。或者说是“数据处理技术”与“数据展现技术”更加容易理解。

    为什么要在操作型数据库和 OLAP 之间加一层“数据仓库”呢?
    说一千道一万都计算机资源与效能惹的祸,操作型数据库以快速响应业务为主要目标,而OLAP的时候要占用大量的硬件资源,在OLAP的时候,业务操作很难快速响应,无法保证业务的顺利进行,从业务、数据、数据的价值的逻辑来看,没有业务就谈不上OLAP;零星分散的数据一般存在有多个应用,对应多个业务操作型数据库,访问效能极其低下。综合上述资源与效能的问题,最高效的方法就是将数据先整合到数据仓库中,而 由OLAP应用统一从数据仓库里取数,以解决快速响应业务与OLAP的矛盾。
    但是,多了这么一层,不管ROLAP还是MOLAP都无法查看实时数据,这并不影响BI的应用,90%的BI应用都不要求实时性,允许数据有滞后,这是决策支持系统的应用特点,这个滞后区间就是数据抽取工具工作及OLAP的时间。

    四、数据处理

    (1)ODS,(Operational Data Store)是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特征,它是“面向主题的、集成的、当前或接近当前的、不断变化的”数据。

    一般在带有ODS的系统体系结构中,ODS都设计都有如下特点:
    1) 在业务系统和数据仓库之间的数据过渡离层。
    如果业务数据来源比较复杂,一般采用构造ODS的方法来实现收集当前需要处理的数据。如下述数据来源:
    a、业务数据库种类繁多。业务交易系统使用了不同种的数据库,如DB2、Informix、Oracle、SQL server、文本等。
    b、不同的应用系统、不同的地理位置。
    c、订阅数据源。
    d、批量还原非传统数据库数据。
    ... ...等等。用于存放从业务系统直接抽取出来的数据,这些数据从数据结构、数据之间的逻辑关系上都与业务系统基本保持一致。
    2) 保存当前或接近当前的细节数据,以供查询或ETL检错使用。
    3) 数据存储周期性。ODS中存储的数据都是临时的,每次ETL之前都要清空ODS中存储的数据。

    (2)ETL,(Extract Transform Load)操作型业务数据库(DB)到数据仓库(DW)的过程称之为ETL,它实现数据的抽取,转换及装载工作。

    抽取:将数据从各种原始的业务系统中读取出来。
    转换:按照预先设计好的规则将抽取得数据进行转换、清洗,以及处理一些冗余、歧义的数据,使本来异构的数据格式能统一起来。
    装载:将转换完的数据按计划增量或全部的导入到数据仓库中。
    在技术上主要涉及增量、转换、调度和监控等几个方面的处理。

    现在列举一个简单的实例,用来说明ETL。
    如下表所示,是来自于四个地区的Item销售记录。四个地区依次是


    图(3)

    不管使用什么方法或工具,使上述四表的数据结构变成下表所描述的结构,并填充数据,这个过程就是一个ETL的过程。

     

    图(4)

    (3)DW, (Data Warehouse) 数据仓库的官方定义是一个面向主题的(SubjectOriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(TimeVariant)的数据集合,用于支持管理决策。

    数据仓库的特点:
    1)、面向主题。
    2)、集成。
    3)、非易失。
    4)、时间轴。

    数据库与数据仓库的区别如下所述:

     

    图(5)

    (4)OLAP,(On-Line Analytical Processing)即联机分析处理,是BI的一种全新的数据封装方式,直接产物是报表或Cube,是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。

    说到OLAP,不由的想起OLTP(联机事务处理系统),现在来比较一下OLTP与OLAP的区别,如下所述:

     

    图(6)


    太理论化的东西还是少说,来看看数据表中数据是如何在立方体中表示的。
    单独察看一个Location的销售数据,使用惯用的2-D平面数据表,完全可以满足所有的需求,如下图所示:

    图(7)

    但,要是想从更多的Location的角度去分析数据,可以在2-D的平面数据的基础上增加一个维,来表示Location的变化,如下图所示:

    图(8)

    概念上讲,也可以以3-D的数据立方体的形式表示这些数据,如下图所示:

     

    图(9)

    假定再增加一个维,用来表示制造商的变化,哪应该如何表示数据了呢?我们按照上面的思路,可以表示成如下图所示的数据结构,并称之为4-D立方体。

    图(10)

    以此类推,可以把N-D数据立方体表示为(N-1)-D数据立方体的序列。这是OLAP的基本原理,至于其中使用了何种具体的算法,来计算与管理每个“子方体”的,内容太多,不能再这里啰嗦了...
    说明:
    数据立方本是对多维数据存储的一种比喻,这种数据的实际物理存储不同于它的逻辑表示。它不限于3-D,而是N维的。

    五、数据展现

    数据查询是最简单的 BI 应用,输出报表是BI最直接的产物,根据数据连接,加工过程及用途,应用模式大致可以分为四种:格式报表;在线分析;数据可视化;数据挖掘。

    1、格式报表:带格式的数据集合,如:交叉表等。

    2、在线分析:多维数据集合,如:Cube等。

    3、数据可视化:信息以尽可能多的形式展现出来,目的是使决策者通过图形这种直观的表现方式迅速获得信息中蕴藏的知识,如柱图,仪表盘等。

    4、数据挖掘:从大量的数据中,抽取出潜在的、有价值的知识(模型或规则)的过程。分析方法:

    · 分类 (Classification)

    · 估值(Estimation)

    · 预言(Prediction)

    · 相关性分组或关联规则(Affinity grouping or association rules)

    · 聚集(Clustering)

    · 描述和可视化(Description and Visualization)

    数据挖掘号称能通过历史数据的分析,预测客户的行为,而事实上,客户自己可能都不明确自己下一步要作什么。所以,数据挖掘的结果,没有人们想象中神秘,它不可能是完全正确的。客户的行为是与社会环境相关连的,所以数据挖掘本身也受社会背景的影响。

    六、常用的BI 厂商和产品

    ETL:Informatica, SQL Server Analysis Server

    DW:IBM DB2,Oracle,Sybase IQ,NCR Teradata 等等;

    OLAP: Cognos,Business Objects,MicroStrategy,Hyperion,IBM

    Data Mining:IBM,SAS,SPSS

    现在很多的数据库提供商都开始绑定BI的开发组件到自己的数据库产品中,他们都瞄准了这其中的肥肉,磨拳檫掌,各论长短。

    七、BI在中国

    中国拥有5000年的文化史,灿烂的文件让日常报表也非常具有凝聚力,交错纵横,里外相嵌,格式诡异、规则古怪、数据集中而文名于世,让无数报表工具折腰。BI概念是从欧美引进的,现有的工具也多是欧美国家提供,中国是世界上报表最复杂的国家,报表设计风格与这些国家有明显的差别,BI工具制作的报表倾向于仅用一张报表说明一个问题,而中国的报表倾向于将尽可能多的问题集中在一张报表中,这种思路直接导致了BI工具应用难度的提升。

  • 相关阅读:
    [转] 常用的sql server规范
    <深入理解JavaScript>学习笔记(2)_揭秘命名函数表达式
    SQL Server 字段类型 decimal(18,6)小数点前是几位?记一次数据库SP的BUG处理
    <深入理解JavaScript>学习笔记(1)_编写高质量JavaScript代码的基本要点
    [转] SQL函数说明大全
    jquery 获取 tagName(JQuery如何得到tagName?)
    [转] .NET出现频率非常高的笔试题
    [转] SQL Server游标的使用
    jquery datatables 学习笔记
    [转] 如何让代码可测试化(C#)
  • 原文地址:https://www.cnblogs.com/chenjianhong/p/4144486.html
Copyright © 2020-2023  润新知