Microsoft . 技术之路...

—— 专注于微软技术, 分享是快乐的源泉......
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

BI技术与实践

Posted on 2007-05-07 14:22  赣江源  阅读(311)  评论(0编辑  收藏  举报

商业智能的技术与实践早在20世纪90年代末,商业智能(Business Intelligence)技术就被一家计算机权威杂志评选为未来几年最具影响力的IT技术之一。虽然近几年整个IT界不景气,但与商业智能相关的产品研发及应用却方兴未艾,且数以百计的IT企业不断涌进这一新兴领域,BI应用甚至成为了IT界又一全新“亮点”。究竟什么是商业智能技术?又有哪些技术支撑着如此具有前景的商业智能应用?答案就在—
  商业智能技术并不是基础技术或者产品技术,它是数据仓库、联机分析处理OLAP(Online Analytical Processing)和数据挖掘等相关技术走向商业应用后形成的一种应用技术。
  商业智能系统主要实现将原始业务数据转换为企业决策信息的过程。与一般的信息系统不同,它在处理海量数据、数据分析和信息展现等多个方面都具有突出性能。

  商业智能系统架构图
  商业智能系统主要包括数据预处理、建立数据仓库、数据分析及数据展现四个主要阶段。数据预处理是整合企业原始数据的第一步,它包括数据的抽取、转换和装载三个过程。建立数据仓库则是处理海量数据的基础。数据分析是体现系统智能的关键,一般采用联机分析处理和数据挖掘两大技术。联机分析处理不仅进行数据汇总/聚集,同时还提供切片、切块、下钻、上卷和旋转等数据分析功能,用户可以方便地对海量数据进行多维分析。数据挖掘的目标则是挖掘数据背后隐藏的知识,通过关联分析、聚类和分类等方法建立分析模型,预测企业未来发展趋势和将要面临的问题。在海量数据和分析手段增多的情况下,数据展现则主要保障系统分析结果的可视化。一般认为数据仓库、OLAP和数据挖掘技术是商业智能的三大组成部分。
  数据仓库:商业智能的基础
  对于一个企业来说,最关键也最为重要的是,如何以一种有效的方式逐步整理各个业务处理系统中积累下来的历史数据,并通过灵活有效的方式为各级业务人员提供统一的信息视图,从而在整个企业内实现真正的信息共享。数据仓库技术正好满足了这一需求。数据仓库是商业智能系统的基础,如果没有数据仓库,没有企业数据的融合,数据分析就成为了无源之水。
  数据仓库主要有四个重要特征:
  1、数据仓库是面向主题的。传统的操作型系统是围绕公司的应用进行组织。如对一个电信公司来说,应用问题可能是营业受理、专业计费和客户服务等,而主题范围可能是客户、套餐、缴费和欠费等。
  2、数据仓库是集成的。数据仓库实现数据由面向应用的操作型环境向面向分析的数据仓库的集成。由于各个应用系统在编码、命名习惯、实际属性、属性度量等方面不一致,当数据进入数据仓库时,要采用某种方法来消除这些不一致性。
  3、数据仓库是非易失的。数据仓库的数据通常是一起载入与访问的,在数据仓库环境中并不进行一般意义上的数据更新。
  4、数据仓库随时间的变化性。数据仓库中的数据随时间变化的特性表现在三个方面:
  1)数据仓库中的数据时间期限要远远长于操作型系统中的数据时间期限。操作型系统的时间期限一般是6 0~9 0天,而数据仓库中数据的时间期限通常是5~1 0年。
  2)操作型数据库含有“当前值”的数据,这些数据的准确性在访问时是有效的,同样当前值的数据能被更新;而数据仓库中的数据仅仅是一系列某一时刻生成的复杂的快照。
  3)操作型数据的键码结构可能包含也可能不包含时间元素,如年、月、日等;而数据仓库的键码结构总是包含时间元素。
  OLAP:海量数据分析利器
  对于TB级的海量数据,联机分析处理OLAP无疑是一种有力的数据分析工具。它可以让管理者灵活地对海量数据进行浏览分析。利用多维的概念,OLAP提供了切片、切块、下钻、上卷和旋转等多维度分析与跨维度分析功能。相对于普通的静态报表,OLAP更能满足决策者和分析人员对数据仓库数据的分析。
  区别于传统的联机事务处理 (OLTP)系统,OLAP有12条准则:
  1、 OLAP模型必须提供多维概念视图
  2、 透明性准则
  3、 存取能力推测
  4、 稳定的报表能力
  5、 客户/服务器体系结构
  6、 维的等同性准则
  7、 动态的稀疏矩阵处理准则
  8、 多用户支持能力准则
  9、 非受限的跨维操作
  10、直观的数据操纵
  11、灵活的报表生成
  12、不受限的维与聚集层次
  虽然随着技术的发展,部分准则有所突破,但这些准则仍然是OLAP技术的基础。
  OLAP系统架构主要分为基于关系数据库的ROLAP(Relational OLAP)、基于多维数据库的MOLAP(Multidimensional OLAP)、基于混合数据组织的HOLAP(Hybrid OLAP)三种。前两种方式比较常见。ROLAP表示基于关系数据库的OLAP实现。它以关系数据库为核心,以关系型结构进行多维数据的表示和存储。ROLAP将多维数据库的多维结构划分为两类表:一类是事实表,用来存储数据和维关键字;另一类是维表,即对每个维至少使用一个表来存放维的层次、成员类别等维的描述信息。MOLAP表示基于多维数据组织的OLAP实现。它以多维数据组织方式为核心,使用多维数组存储数据。MOLAP查询方式采用索引搜索与直接寻址相结合的方式,比ROLAP的表索引搜索和表连接方式速度要快得多。
  数据挖掘:洞察力之源
  与展示企业历史和现有信息的静态、动态报表及查询等分析方法不同,数据挖掘是从数据库中智能地寻找模型,从海量数据中归纳出有用信息。可以说通过商业智能系统,企业获得洞察力的主要手段就是数据挖掘。
  数据挖掘(Data Mining)是从大量的、不完全的、有噪声的、模糊的、随机的数据中,提取隐含在其中的、人们事先不知道的、但又是潜在有用的信息和知识的过程。
  数据挖掘技术可分为描述型数据挖掘和预测型数据挖掘两种。描述型数据挖掘包括数据总结、聚类及关联分析等。预测型数据挖掘包括分类、回归及时间序列分析等。
  1、数据总结:继承于数据分析中的统计分析。数据总结目的是对数据进行浓缩,给出它的紧凑描述。传统统计方法如求和值、平均值、方差值等都是有效方法。另外还可以用直方图、饼状图等图形方式表示这些值。广义上讲,多维分析也可以归入这一类。
  2、聚类:是把整个数据库分成不同的群组。它的目的是使群与群之间差别很明显,而同一个群之间的数据尽量相似。这种方法通常用于客户细分。在开始细分之前不知道要把用户分成几类,因此通过聚类分析可以找出客户特性相似的群体,如客户消费特性相似或年龄特性相似等。在此基础上可以制定一些针对不同客户群体的营销方案。
  3、关联分析:是寻找数据库中值的相关性。两种常用的技术是关联规则和序列模式。关联规则是寻找在同一个事件中出现的不同项的相关性;序列模式与此类似,寻找的是事件之间时间上的相关性,如对股票涨跌的分析等。
  4、分类:目的是构造一个分类函数或分类模型(也常常称作分类器),该模型能把数据库中的数据项映射到给定类别中的某一个。要构造分类器,需要有一个训练样本数据集作为输入。训练集由一组数据库记录或元组构成,每个元组是一个由有关字段(又称属性或特征)值组成的特征向量,此外,训练样本还有一个类别标记。一个具体样本的形式可表示为:( v1, v2, ...,vn;c ),其中vi表示字段值,c表示类别。
  5、回归:是通过具有已知值的变量来预测其它变量的值。一般情况下,回归采用的是线性回归、非线性回归这样的标准统计技术。一般同一个模型既可用于回归也可用于分类。常见的算法有逻辑回归、决策树、神经网络等。
  6、时间序列:时间序列是用变量过去的值来预测未来的值。
  数据挖掘另一个重要方面是与之相关的方法论。一般的事务处理系统甚至一些只提供报表分析功能的简单商业智能系统,建成以后只需要少量的工程维护工作,而采用数据挖掘技术的商业智能系统往往有很大不同。因为数据挖掘是一个商业理解、数据理解、建模、评估等一系列多次反复、多次调整的过程,并且模型的应用也不是一成不变的,在适当的时候需要更新和重建。所以一般的商业智能项目并不追求一次性工程建设,更倡导的是一种与企业业务紧密联系能够提升企业竞争力的咨询服务,而且熟悉业务和分析方法的分析人员在商业智能系统的应用中起着至关重要的作用。从这一点也能看出为什么说BI是企业MIS之后更高层次、更具战略意义的应用。
  诚然,对于数据挖掘或者商业智能也应有一个客观的认识。从广义上,数据挖掘是在传统数据分析方法基础上,融合了数据库、人工智能等多方面技术形成的知识发现技术。它对企业的信息分析必然产生积极的效果,对企业经营决策的辅助作用也是显而易见。但是数据挖掘只是一些技术和方法,并非万能,而商业智能系统更多的是为企业提供一个经营分析的环境和一些分析工具。如何切合企业经营实际,从海量的经营数据中挖掘出有助于企业市场竞争的知识,商业智能系统本身体现并不多。因此,企业洞察力的真正来源是商业智能系统以及数据挖掘技术的成功应用和实践。