zoukankan      html  css  js  c++  java
  • 大话商业智能

    摘要:

    商业智能,英文名字叫Business Intelligence,英文简称BI。
    BI这词看上去很神秘,给人很高科技的感觉,但真正了解的人不多,又加上某些厂商乱用BI来胡弄人,将好好的BI搞得不成人样。本文将会为大家分享我的粗浅理解,当然如果你是老鸟,请无视此文!
     
     
     
     
    什么是BI?
     
    BI是一个意义很广的词,没有标准的定义,简单说说我的理解:BI是一个对大量数据进行处理、分析、挖掘的框架,其目的就是希望得到有用的决策依据。
    下图大致展示了这样的一个框架:
    商业智能
     
     
    该图由左到右依次划分为ETL集成数据、数据仓库建模、建立Cube(数据立方体)、数据呈现四部分。
     
     
    ETL集成数据
    ETL三个字母是Extract(数据抽取)、 Transform(转换)、 Loading(装载)三个单词的首字母。我们暂时不必去深究这三个词的意思,简单地说就是我们分析数据之前,需要将各处的数据汇总到一个地方,这个过程需要对原来的数据进行处理。
     
     
    数据仓库建模
    在这部分我们见到数据仓库(Dataware,简称DW)、数据集市这些概念,很多书将这两个概念说得很玄乎,实际上数据仓库、数据集市只是两个概念而已,在物理上往往就是一两个数据库甚至是数据表而已。数据仓库,你可以认为就是原数据经过ETL后集中存储的地方,数据仓库的存储结构需要精心设计。而数据集市只是将ETL后的数据分类存放而已,数据集市同样也需要精心设计存储结构。
     
     
    建立Cube
    我们先温习一下数据库存储的特点,一般来说数据库设计要尽量避免数据冗余,这样可提高数据库执行的效率也避免了数据不一致的问题。数据库上有大量的增加、删除、查找、修改等操作,要求快和具备实时性,数据库就是针对这些特点来设计的。数据库的CRUD操作(Create,Read,Update,Delete),被称为联机事务处理OLTP(on-line transaction processing)。
    Cube是数据立方体,这是一种特殊的数据存储结构,它设计主要目的是方便读取,而不是方便写入。Cube中存在大量的冗余数据,以便可以快速地从不同角度、粒度来获取数据。这种面向数据分析的数据库操作,被称为联机分析处理OLAP(On-Line Analytical Processing)。
    Cube是在数据仓库、数据集市的基础上建立的,建立Cube时需要指定维度、粒度等内容,设置是雪花型、星型等,这些内容比较复杂,不太熟悉的朋友先暂且了解到有这些名词就OK了,稍后再详细介绍。
     
     
    数据呈现
    建立数据仓库、数据集市、Cube,其目的有两:
    1.为查询做好准备。
    2.就是为数据挖掘做好准备。
    市面上有很多做报表的工具,功能看上去很强大,能做柱状图、饼图等等,并且还戴上BI的帽子。其实这些工具并不是完整的BI工具,它们只做到数据展示这层而已。数据仓库、数据集市建好后,可用普通的SQL语句进行查询,而对于Cube,可用Cube专用的查询语句进行查询。
    数据挖掘英文叫Data mining,那什么是数据挖掘呢?有很多说法,说说我的理解:是指用某些方法和工具,对数据进行分析,发现隐藏规律的一种方法。
    数据挖掘有很多方法,如关联、聚类、分类、回归、序列分析、偏差分析等,这些内容都比较深奥。关于数据挖掘的详细内容,稍后我会再分享一篇文章。这里只需要知道,数据挖掘比一般的SQL查询不知道要强大多少倍,能得到超乎你想像的结果。
     
     
     
    BI工具
     
    BI工具我了解的不多,SQL Server 和 Oracle 两大数据库工具能完整地支持上述的BI框架,而大量充斥的BI小工具主要针对ETL和报表这两个层次的。如果大家遇到有人用BI的招牌来兜售软件,大家应该能识别出该软件的含金量。BI的核心技术在于数据存储、数据发掘,这两者都是高科技的玩意,我好像还没有见到这方面的国产优秀软件。
     
     
     
    BI的应用
     
    BI在国内的应用很多是门面工程,无论是去胡弄人的人还是被胡弄的人,其实都不知道什么是BI,一旦套上商业智能、决策分析这样的帽子,所有人都变成穿上“皇帝新衣”的人了。
    要真正理解BI,关键一层是理解数据挖掘,熟悉各种数据挖掘算法的原理、特点和用途,运用这些知识来思考如何挖掘现存的数据。
    举几个例子:
    例1:据说若干年前麦当劳是没有套餐的,后来麦当劳对产品的销售数据进行分析,发现购买了汉堡包和薯条的客户,有70%以上的几率会购买可乐,所以麦当劳就将这三样东西捆绑来套餐来卖,结果销量大增。
    例2:我经常在当当网购书,该网站很会推销,我看某本书时,它还会列出我可能感兴趣的书,很多时候我又忍不住去点了那些书看看,结果到了那本书的介绍页面,它又列出我其它可能感兴趣的书。这个“推荐”算法还是有一定技术含量的,这功能背后很可能应用了数据挖掘技术。
    BI是很高技术含量的活,要在各行各业中应用,需要我们切实掌握BI的知识特别是数据挖掘的知识,为客户提供优秀的解决方案。
     
     
     
     
     
     
     
     

    作者:张传波

    创新工场创业课堂讲师

    软件研发管理资深顾问

    《火球——UML大战需求分析》作者

    www.umlonline.org 创始人

  • 相关阅读:
    关于jabber协议
    xmpp相关链接,
    Implementation of the Server Dialback method as defined by the RFC3920
    好吧,隐藏的文件,
    Vue之methods watch和compute的区别和联系
    面向过程编程&面向对象编程
    JS高阶---线程与事件机制(小结)
    Vuex简介
    Vuex操作步骤
    vue单页面应用刷新网页后vuex的state数据丢失的解决方案
  • 原文地址:https://www.cnblogs.com/james1207/p/3358215.html
Copyright © 2011-2022 走看看