什么是BI(转)

  • 产品与服务 - 商务智能
  •      商业智能是什么? 简而言之,它是能够帮助用户对自身业务经营做出正确明智决定的工具。一般现代化的业务操作,通常都会产生大量的数据,如订单、库存、交易帐目、通话记录、及客户资料等。如何利用这些数据增进。

         对业务情况的了解,帮助我们在业务管理及发展上作出及时、正确的判断,也就是说,怎样从业务数据中提取有用的信息,然后根据这些信息来采用明智的行动--这就是商业智能的课题。

     

    目前,商业智能产品及解决方案大致可分为数据仓库产品、数据抽取产品、OLAP产品、展示产品、和集成以上几种产品的针对某个应用的整体解决方案等。

    商业智能领域的技术应用:
         商业智能的技术体系主要有数据仓库(DW)、在线分析处理(OLAP)以及数据挖掘(DM)三部分组成。

         数 据仓库是商业智能的基础,许多基本报表可以由此生成,但它更大的用处是作为进一步分析的数据源。所谓数据仓库(DW)就是面向主题的、集成的、稳定的、不 同时间的数据集合,用以支持经营管理中的决策制定过程。多维分析和数据挖掘是最常听到的例子,数据仓库能供给它们所需要的、整齐一致的数据。

         在线分析处理(OLAP)技术则帮助分析人员、管理人员从多种角度把从原始数据中转化出来、能够真正为用户所理解的、并真实反映数据维特性的信息,进行快速、一致、交互地访问,从而获得对数据的更深入了解的一类软件技术。

         数据挖掘(DM)是一种决策支持过程,它主要基于AI、机器学习、统计学等技术,高度自动化地分析企业原有的数据,做出归纳性的推理,从中挖掘出潜在的模式,预测客户的行为,帮助企业的决策者调整市场策略,减少风险,做出正确的决策。
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客
    (1) 老板,你要这么多数据做什么?

    假如你是一个商品零售公司的老板。
        你的公司很先进,已经实现了业务信息化,每一笔销售单据都保存在数据库中,日积月累,已经保存了十余年的销售数据,上亿条销售记录。
         这时如果我问你:“反正三年前的数据留着也白白占地方,耗费存储成本,索性把它们全删掉吧,这样不用买硬盘就能容纳新数据,如何?”
         你会从容的接受我这个建议吗?
        
         那么老板,你要这么多数据做什么?
         是的,和我一样,你也已经隐约认识到数据的价值,这就是我们割舍不下历史数据的原因,就像任何一个现代化企业,甚至就像任何一个传统的票号,如百年老店般虔诚地保存着古老的数据,因为我们有直觉,我们的直觉告诉我们:这些数据有用!
         但这仅仅是一种直觉,到底该怎样把这些占据大量存储空间的数据的价值挖掘出来,让这些数据从成本的消耗者变成利润的促进者?
    这中间似乎缺少了某些环节。

    (2) Business Intelligence - 连接数据与决策者

    BI(Business Intelligence) 是一种运用了数据仓库、在线分析和数据挖掘等技术来处理和分析数据的崭新技术,目的是为企业决策者提供决策支持。
    让我们振臂高呼三遍:决策支持,决策支持,决策支持!
    BI 是一个工厂:
    >> BI 的原材料是海量的数据;
    >> BI 的产品是由数据加工而来的信息和知识;
    >> BI 将这些产品推送给企业决策者;
    >> 企业决策者利用 BI 工厂的产品做出正确的决策,促进企业的发展;
    这就是 Business Intelligence,即商业智能——连接数据与决策者,变数据为价值。
    BI 应用的两大类别是 信息类应用 知识类应用其特征如下表所示:
    信息类 BI 应用 知识类 BI 应用
    指由原始数据加工而来的数据查询、报表图表、多维分析、数据可视化等应用,这些应用的共同特点是:将数据转换为决策者可接受的信息,展现给决策者。
    例如将银行交易数据加工为银行财务报表。

    仅负责提供信息,而不会主动去分析数据。
    例如,银行财务报表工具没有深入分析客户流失和银行利率之间关系的能力,而只能靠决策者结合信息,通过人的思考,得出知识。
    指通过数据挖掘技术和工具,将数据中隐含的关系发掘出来,利用计算机直接将数据加工为知识,展现给决策者。

    会主动去数据中探查数据关联关系,发掘那些决策者人脑无法迅速发掘的隐含知识,并将其以可理解的形式呈现在决策者面前。
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客

    (3)BI 初级应用模式概览——数据查询(Querying)
         数据查询是最简单的 BI 应用,属于 MIS 系统遗产,虽然出身比较老土,但是目前仍然是决策者获取信息的最直接的方法。
         如今,数据查询界面已经彻底摆脱了传统 SQL 命令行,大量的下拉菜单、输入框、列表框等元素甚至是鼠标拖拽界面将后台干苦力的 SQL 语句包装成一个妖艳无比的数据获取系统,而本质仍然没有离开数据查询的几大要素:
        >> 查什么
        >> 从哪儿查
        >> 过滤条件
        >> 展示方法
         目前国外比较流行的数据查询应用已经完全释放了数据查询的灵活性,如右图所示的是 Cognos ReportNet 的数据查询界面 Query Studio,允许用户通过纯浏览器界面,以鼠标拖拽操作定义数据查询要素,并以报表和图表等多种方式展现数据。

    什么是BI(商务智能) - hljwxdn - hljwxdn的博客
    (4)BI 初级应用模式概览——报表(Reporting)
    报表是国内最热衷的 BI 应用之一,这与报表在我国企事业单位中的历史地位是分不开的。我国的报表以其格式诡异、数据集中、规则古怪等特征著称于世,曾经让无数国外报表工具和 BI 工具捶胸顿足。

    报表的两大要素是数据格式, 如果没有格式,则报表应用几乎等同于数据查询应用。可以说,报表就是将查询出来的数据按照指定的格式展现。

    报表应用包含了报表展现和报表制作两大模块。报表展现就是让决策者看到报表,并允许决策者通过条件定义来选择报表数据,例如选择报表年度、部门、机构等 等;报表制作面向报表的开发人员,其格式定义灵活性、数据映射灵活性、计算方法的丰富程度等均影响了 BI 报表应用的质量。

    需要澄清一下的是,Microsoft Excel 不算是一个 BI 报表工具,因为 Excel 没有连接数据源的能力,充其量是一个 Spread Sheet。但是 Excel 强大的格式功能让报表制作人员竟折腰,乃至到后来,几乎所有 BI 厂商都提供了面向 Microsoft Excel 的插件,通过插件,Excel 可以连接到 BI 的数据源上,摇身一变为 BI 报表工具,丑小鸭变天鹅。
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客

    上图是典型的中国特色的报表,注意其横向表头,各列嵌套层数不一样,行话叫“不均衡报表”。这些报表单元格中的数据是从不同的数据库表的不同的字段中经过 不同的计算方法得到的。这种报表当年秒杀了第一批抢滩中国的 BI 软件,乃至后来衍生出诸多售前对策,如用位图画表头然后用数据库存储过程计算表瓤、程序调用 Excel COM 嵌套拼接等等各类江湖招数。

    (5)BI 高级应用模式概览——在线分析(OnLine Analytical Processing,OLAP)
    OLAP ,即联机分析处理,是 BI 带来的一种全新的数据观察方式,是 BI 的核心技术之一。
    我们知道,数据在数据库中是以数据表来存储的,比如某商店的销售数据存储在如下所示的一张数据表中:
    销售时间 销售地点 产品 销售数量 销售金额
    2004-11-1 北京 肥皂 10 342.00
    2004-11-6 广州 桔子 30 123.00
    2004-12-3 北京 香蕉 20 12.00
    2004-12-13 上海 桔子 50 189.00
    2005-1-8 北京 肥皂 10 342.00
    2005-1-23 上海 牙刷 30 150.00
    2005-2-4 广州 牙刷 20 100.00
    决策者希望知道的往往是分布、占比、趋势之类的宏观信息,比如下列问题:
    >> 北京地区的销售数量虽时间的变化趋势?
    >> 哪种产品在 2005 年销售比 2004 年销售增幅最大?
    >> 2004 年各产品销售额的比例分布? ……

    面对这种需求,必须用 SQL 语句进行大量的 SUM 操作,每得出一个问题的结果,就需要 SQL SUM。面对上面的 7 条记录,我们可以很容易的得出结果,但是当我们面对百万级甚至亿级的记录条数时,例如移动公司通话数据,每次 SQL SUM 都需要消耗大量的时间来计算,决策者经常是在第一天提出分析需求,等到第二天才能拿到计算结果,这种分析方式是“脱机分析”,效率很低。
    为了提高数据分析效率,OLAP 技术彻底打破以记录为单位的数据浏览方式,而将数据分离为“维度(Dimension)”和“度量(Measure)”:
    >> 维度是观察数据的角度,例如上面示例中的“销售时间”、“销售地点”、“产品”;
    >> 度量是具体考察的数量值,例如上例中的“销售数量”和“销售金额”;
    这样一来,我们就可以将上面这张平版的数据列表转换为一个拥有三个维度的数据立方体( Cube ):
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客
    而探查数据的过程,就是在这个立方体中确定一个点,然后观察这个点的度量值:

    什么是BI(商务智能) - hljwxdn - hljwxdn的博客

    什么是BI(商务智能) - hljwxdn - hljwxdn的博客

    当然,数据立方体并不局限于三个维度,这里采用三个维度来说明问题,只是因为通过图形可以表现出来的极限就是三个维度。
    维度可以划分层次,例如时间上可以从日向上汇总为月和年,产品可以向上汇总为食品和日用品,地点可以向上汇总为华北和华南,用户可以沿着维度的层次任意向下钻取(Drill Down)和向上汇总(Roll Up):

    什么是BI(商务智能) - hljwxdn - hljwxdn的博客

    什么是BI(商务智能) - hljwxdn - hljwxdn的博客

    通过这种方式,我们就可以摆脱 SQL SUM 对速度的制约,快速定位符合不同条件的细节数据,更可以迅速得到某一层次的汇总数据。OLAP 技术为决策者提供了多角度、多层次、高效率的数据探查方式,决策者的思维不再被固定的下拉菜单、查询条件所束缚,而是由决策者的思维带领数据的获取,任意 组合分析角度和分析目标,这种打破传统的互动性分析和高效率使 OLAP 成为 BI 系统的核心应用。
    (6) BI 应用模式概览——数据挖掘(Data Mining)
    数据挖掘是最高级的 BI 应用,因为它能代替部分人脑功能。
    数据挖掘隶属于知识发现(Knowledge Discovery)在结构化数据中的特例。
    数据挖掘的目的是通过计算机对大量数据进行分析,找出数据之间潜藏的规律和知识,并以可理解的方式展现给用户。
    数据挖掘的三大要素是:
    >> 技术和算法:目前常用的数据挖掘技术包括——
    自动类别侦测(Auto Cluster Detection)
    决策树(Decision Trees)
    神经网络(Neural Networks)

    >> 数据:由于数据挖掘是一个在已知中挖掘未知的过程,
       因此需要大量数据的积累作为数据源,数据积累
       量越大,数据挖掘工具就会有更多的参考点。

    >>预测模型:也就是将需要进行数据挖掘的业务逻辑由
    计算机模拟出来,这也是数据挖掘的主要任务。

    上述功能如果单靠信息类 BI 应用来实现,则需要决策者根据经验进行大量的 OLAP 分析、数据查询工作,而且还不一定能发现数据中隐藏的规律。例如上述客户分类,对于一个拥有 400 万用户的银行来说,如果没有数据挖掘工具,会把人活活累死的。
    (7) BI 底座——数据仓库技术(Data Warehouse)
    数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策。以上是数据仓库的官方定义。

    “操作型数据库”如银行里记账系统数据库,每一次业务操作(比如你存了5元钱),都会立刻记录到这个数据库中,长此以往,满肚子积累的都是零碎的数据,这种干脏活累活还不得闲的数据库就叫“操作型数据库”,面向的是业务操作。

    “数据仓库”用于决策支持,面向分析型数据处理,不同于操作型数据库;另外,数据仓库是对多个异构的数据源有效集成,集成后按照主题进行了重组,并包含历史数据,而且存放在数据仓库中的数据一般不再修改。

    操作型数据库 、数据仓库与数据库之间的关系,就像 C:、D: 与硬盘之间的关系一样,数据库是硬盘,操作型数据库是 C:,数据仓库是 D:,操作型数据库与数据仓库都存储在数据库里,只不过表结构的设计模式和用途不同。
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客
    那么为什么要在操作型数据库和 BI 之间加这么一层“数据仓库”呢?

    一是因为操作型数据库日夜奔忙,以快速响应业务为主要目标,根本没精力伺候 BI 这边的数据需求,而且 BI 这边的数据需求通常是汇总型的,一个 select sum(xx) group by xx 就能让操作型数据库耗费大量资源,业务处理跟不上趟,麻烦就大了,比如你存了 5000 元钱,发现十分钟后钱还没到账,作何感想?一定是该银行的领导在看饼图?
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客
    二是因为企业中一般存在有多个应用,对应着多个操作型数据库,比如人力资源库、财务库、销售单据库、库存货品库等等,BI 为了提供全景的数据视图,就必须将这些分散的数据综合起来,例如为了实现一个融合销售和库存信息的 OLAP 分析,BI 工具必须能够高效的取得两个数据库中的数据,这时最高效的方法就是将数据先整合到数据仓库中,而 BI 应用统一从数据仓库里取数。
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客
    将分散的操作型数据库中的数据整合到数据仓库中是一门大学问,催生了数据整合软件的市场。这种整合并不是简单的将表叠加在一起,而是必须提取出每个操作型 数据库的维度,将共同的维度设定为共用维度,然后将包含具体度量值的数据库表按照主题统一成若干张大表(术语“事实表”,Fact Tables),按照维度-度量模型建立数据仓库表结构,然后进行数据抽取转换。后续的抽取一般是在操作性数据库负载比较小的时候(如凌晨),对新数据进 行增量抽取,这样数据仓库中的数据就会形成积累。
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客

    BI产品:我们的BI产品有 POWEROLAP, PROCUBE等

     

    什么是BI(商务智能) - hljwxdn - hljwxdn的博客 什么是BI(商务智能) - hljwxdn - hljwxdn的博客
    什么是BI(商务智能) - hljwxdn - hljwxdn的博客
    posted @ 2009-06-05 12:09 松风 阅读(...) 评论(...) 编辑 收藏