关注于商业智能,报表工具,ETL及相关应用软件和技术的博客

2008年05月的文章

开源BI系统的简述

        本文介绍了ETL工具、报表工具、OLAP工具的各项开源资源情况,有一定的普及和参考价值。

  这些众多的BI项目从规模和对BI系统支撑的完善程度上来说,大体可以分为Framework、Stand-alone Tools和BI Suit三种类型。

  Framework

  开源框架,这是在商业BI系统中所没有的。我们可以使用它们来构建自己的BI工具,或者增强和扩展我们的BI解决方案。

  Stand-alone Tools

  独立的BI工具,这是开源项目中数量最多的一类。很多工具只侧重BI系统中的某个环节和方面,如ETL、Report、OLAP和Database等等。

  BI Suit

  在统一的架构下提供了多种BI系统的特性的工具集合。就目前的情况看,不管是商业软件还是开源软件,还没有任何一个套件提供了完整的端到端的BI解决方案。这些开源的BI Suit是通过连接多个其他的组件和工具的方式形成套件的,由于BI系统涉及到的工具是非常多的,所以整合一套完整的BI解决方案是很困难的。

  BI解决方案中的工具

  一个完整的BI解决方案中有多种工具来完成BI系统中各个阶段的工作。

  ETL工具

  数据抽取、转换和加载工具。优秀的ETL工具应该具有以下特性:

  1、 Workflow Management, Job Execution and Scheduling Manager。能方便地定义流程并自动化执行ETL任务。

  2、 Centralized Metadata Repository and Management。集中存储和管理符合业界标准的元数据。

  3、 Data Profile and Validation。可以检验数据的质量。

  4、 High Performance。在大负荷的任务执行中仍然有良好的性能。

  5、 Scalable, Platform Independent。具有良好的弹性,支持多种操作系统和数据库系统,能操作多种异构的数据源。

  6、 Open Architecture and API。具有开放的架构和易于使用的二次开发接口。

  目前较为知名的开源ETL工具有:

  1、 KETL,由具有IBM和KPMG背景的Kinetic Networks公司开发,现在已经有三年多的产品应用历史,成功应用于一些产品中,在点击流(ClickStream)分析应用中表现出色。KETL采用Plug-in的架构,使用Java开发。

  2、 KETTLE,为一个元数据驱动的ETL工具。已经加入Pentaho。

  3、 Clover ETL,为一个基于Java的ETL Framework,可以用来开发自己的ETL应用。

  4、 Enhydra Octopus,为一个基于Java的ETL工具,使用JDBC来连接各种数据源,易于使用和部署。曾有人应用于电信网络资源分析系统中。

  报表工具

  优秀的报表工具通常具有以下特性:

  1、 支持多种数据源。

  2、 直观的可视化设计器,简单易用的报表定制功能。

  3、 方便的数据访问和格式化,丰富的数据呈现方式。

  4、 符合数据呈现的通用标准,能和应用程序很好地进行结合。

  5、 易于扩展和部署。

  目前较为知名的开源报表工具有:

  1、 JasperReports,一个优秀的Java报表工具,始于2001,现在JasperSoft公司持续开发和支持该工具。该工具类似于商业软件Crystal Report,支持PDF、HTML、XLS、CSV和XML文件输出格式,现在是Java开发者最常用的报表工具。

  2、 OpenReports,提供基于web的灵活报表解决方案,通过浏览器自动生成动态PDF,XLS,HTMLCSV 和Chart报表,它是用Java开发的,使用JasperReports 作为报表引擎,利用到的开源技术有Hibernate,Veloctiy,Webwork。

  3、 JFreeReport,现在是Pentaho的一部分,它是一个优秀的用来生成报表的Java类库。它为Java应用程序提供一个灵活的打印 功能并支持输出到打印机和PDF, Excel, HTML和XHTML, PlainText, XML和CSV文件中。

  4、 Eclipse BIRT,是Eclipse下面的一个企业智能和报表 工具,能为J2EE的WEB应用程序创建漂亮醒目的PDF或者HTML格式的报表,它提供了核心的报表功能。
OLAP工具

  联机分析处理工具。目前开源的OLAP工具也分为MOLAP、ROLAP和HOLAP,优秀的OLAP工具通常有以下特性:

  1、 良好的执行性能,能快速地进行分析处理工作。

  2、 良好的适用性和可伸缩性。

  3、 开放式接口和丰富的API。

  目前较为知名的开源OLAP工具有:

  1、 Mondrian,是Pentaho的一部分,为一个用Java开发的OLAP服务器,实现了MDX语言、XML解析和JOLAP规范,可以不写SQL就能分析存储于SQL 数据库的庞大数据集,可以封装JDBC数据源并把数据以多维的方式展现出来。

  2、 JPivot,是一个JSP 自定制的标签库,可以绘制一个OLAP表格和图表。用户可以执行 典型的OLAP导航,如下钻,切片和方块。它使用Mondrian 作为其OLAP服务器。它使用WCF (Web Component Framework) ,基于XML/XSLT来渲染Web UI组件。JPivot在元数据缓存方面的过于简化的整体性初始化装载的做法将限制它只能处理很小的立方体(Cube)。

  数据库

  开源的数据库也有很多,大多数为关系型数据库,少数为应用于数据仓库环境做了专门的优化工作。Bizgres以PostgreSQL为基础进行了数据仓库环境下的优化,提高了分析查询性能。

  开源BI套件

  下面列出相对成熟和完整,并且有借鉴意义的开源BI套件。

  Bizgres

  为GreenPlum公司主导的开源项目,和Sun公司达成合作关系。Bizgres为BI应用而对PostgreSQL做了优化,提高了大负荷的并行计算能力,在BI环境中,相对于普通的关系型数据库具有卓越的数据处理性能。Bizgres的数据库平台可以和KETL和JasperReports进行整合,从而形成一个BI套件:

  1、 数据库:BI专业数据库Bizgres,或者大型应用中的高性能服务器Bizgres MPP,能比普通关系数据库快20倍

  2、 ETL工具:KETL

  3、 报表工具:JasperReports

  Openi

  是一个Java开发的Web应用,能对OLAP服务器、关系数据库和数据挖掘服务器进行分析和报表展示,非常易于使用和部署,界面美观友好,后续还将支持数据挖掘和ETL等。Openi主要包括:

  1、 OLAP展示:JPivot

  2、 报表工具:JFreeChart

  3、 分析数据源连接器

  Pentaho

  是一个以工作流为核心的、强调面向解决方案而非工具组件的BI套件,整合了多个开源项目,目标是和商业BI相抗衡。它包括:

  1、 工作流引擎:Shark and JaWE

  2、 数据库:Firebird RDBMS

  3、 集成管理和开发环境:Eclipse

  4、 报表工具:Eclipse BIRT

  5、 ETL工具:Enhydra/Kettle

  6、 OLAP Server:Mondrian

  7、 OLAP展示:JPivot

  8、 数据挖掘组件:Weka

  9、 应用服务器和Portal服务器:JBoss

  10、 单点登陆服务及LDap认证:JOSSO

  11、 自定义脚本支持:Mozilla Rhino Javascript脚本处理器

  由上可见Pentaho是一个很完善的BI解决方案。Pentaho偏向于与业务流程相结合的BI解决方案,侧重于大中型企业应用。

  SpagoBI

  SpagoBI 集成了Mondrain和JProvit,能够通过OpenLaszlo产生实时报表。SpagoBI使用java开发,不依赖于具体的操作系统,有很强的扩展能力。它主要包括:

  1、 报表工具:JasperReports /Eclipse BIRT/ iReport

  2、 OLAP Server:Mondrian

  3、 OLAP展示:JPivot

  4、 数据挖掘组件:Weka

  5、 Map引擎:Geo

  6、 ETL:BIE

  7、 搜索引擎:Lucene

  8、 Dashboard:OpenLaszlo

  9、 Portal Server:JBoss/ Tomcat/ JOnAS

  根据其Roadmap可以看出,SpagoBI将融入更多的BI功能,甚至BI之外的功能.

PS:本人摘自中国商业智能网

影响数据仓库成功的十个关键因素

1. build the data warehouse iteratively, not in a “big bang” approach

    迭代构建数据仓库,而不是采用“大棒”方法

    数据仓库实施过程中最简单最重要的方法就是迭代构建一个数据仓库。而不是采用“大棒”方法构建数据仓库。快速创建数据仓库的一个迭代,然后不断调整,并快速进入下一个迭代,以此类推。不要一下子收集所有需求,也不要采用瀑布开发生命周期的方式开发数据仓库。

    2. be prepared for massive volumes of data

    做好大数据量的准备

    开始启动数据仓库项目时,一定要清醒地认识到你正在处理你以前从未看到过的大量数据。数据仓库以TB甚至PB来度量数据量。而旧有的业务系统则以MB或者GB来度量。数据量的增加将代表很多含义——比如采用什么样的硬件,性能如何,多少用户数,查询规模等等。不要想当然的认为之前的设计和管理技术经验也能适用于数据仓库环境。

    3. make sure the end user is involved up front

    确保终端用户的介入

    要确保终端用户在数据仓库初期的设计和开发阶段就介入进来。如果你不能够保证终端用户的介入,这将会导致一场灾难——很可能数据仓库从技术上是成功的,但是却是组织上的梦魇,因为没有人会使用这个数据仓库。

    4. be alert to the fact that the data warehouse is built under a very non classical development approach

    需要提防的事实:数据仓库是基于非传统的开发方式的

    一个建议是:数据仓库开发环境与早期的开发环境是非常不同的。数据仓库的开发是基于螺旋形的开发方法理论。螺旋形开发理论也可以成为启发式的迭代的开发方法学,即首先从一个很小的部分开始开发,然后逐渐开发其它部分等等。

    螺旋式开发方法论的反面这是瀑布式方法论。瀑布方法论源自于结构化的分析和设计,需要在下一步动作开始前,必须完成之前所有的设计工作。瀑布方法论对于开发业务系统而言确实是很好的方法。

    5.  the role of metadata is very important

    元数据的角色非常重要。

    元数据是数据仓库环境中的一个非常重要的组成部分。元数据能够告诉用户数据源自哪里存放在哪里。元数据在数据仓库环境中扮演着一个卡片目录或者路标的角色。

    6. the transformation process will consume huge amounts of resources

    转换处理会消耗大量资源

    在数据仓库开发处理过程中,集成和转换消耗了60%到80%的开发资源。实际上最初大多数设计人员和开发人员并未意识到所需要的巨大资源。

    资源所需的原因在于大量数据需要被集成。集成行为是非常复杂的。典型的集成活动例如转换、重新格式化、重构、再计算、定义缺省值、排序、改变DBMS环境、变更操作系统等等是必须的。

    7. data marts are built with the data warehouse as the sole source

    从数据仓库中建设数据集市作为一个单独的数据源。

    一个重要的架构考虑是从数据仓库中构建数据集市。直接从业务系统中建设一个数据集市确实是一种诱惑,但是设计者必须自觉抵制这种诱惑。

    Building data marts directly from operational applications is a very short sighted approach.

    直接从业务系统中构建数据集市是一种非常短视的方法。我们建议把从数据仓库中构建数据集市作为一种长期的方法。

    8.  dormant data will creep into your warehouse and must be managed

    静态数据的蔓延和管理。

    在某种程度上终端用户必须清醒地意识到构建数据仓库的成本是必须考虑的,在数据仓库建设早期,费用问题不是很大的问题。但是随着数据仓库的增长和用户数的增长,成本的增加要求我们必须采取不同的行动。

    9.  the costs of warehousing must be post allocated back to the actual user

    数据仓库的成本要及时反馈给实际客户。

    10. while a data model is essential to the warehouse development, the creation of the model had better not hamstring the development process

    构建一个数据模型对数据仓库来说是必须的,但是决不要破坏数据仓库开发的进度。

    一方面数据模型对于数据仓库的开发来说是绝对必要的,另一方面为了构建一个数据模型而停止整个数据仓库开发绝非好主意。

    一个开发数据模型的可行方法是:

    -从类似的非竞争业务中获取一个数据模型

    -注意相关行业联系

    -寻找一个通用行业模型等等

  从商业智能解决方案的角度看,前端展现工具是不可缺少的重要组成部分,而从商业智能所面对的市场需求来看,前端展现工具可以说占据了大部分的市场份额。在中国市场上,大部分用户所需要的商业智能,其实实质上主要是集中在前端展现上,或者说得更直接些,就是报表工具上面。

  那么,商业智能的前端展现工具从技术角度是什么状况、又将如何发展呢?

  概括起来,可以这样说,前端工具的技术发展正处在三大变革之中。这三大变革,对应了前端展现工具的三个重要的方面:展现方式;部署方式;设计方式。

 

展现方式

  展现方式,就是指将报表与数据等等以何种方式让用户来看。

  在这个领域,核心的变革,就是由客户机/服务器方式,向Internet计算和纯粹的浏览器方式的转变。

  应该说,由C/SB/S方式的转变是大势所趋,许多应用系统都处在这一个变革的过程之中。这种转变并不是说所有的应用全都变成只能使用B/S的方式,但是确实在我们当前这样的时代,Internet计算代表了应用系统发展的主流,很难想像不能很好地支持与适应这种模式的技术还能具有竞争力。

  对于前端展现工具而言,在几年前可以说主要都是采用客户端软件来实现的,但是,随着整个应用体系的发展,越来越多的前端工具都转向了支持B/S方式,甚至由于技术障碍或历史包袱转不过来的一些产品也都采取了ActiveX控件之类的伪B/S方式,以便给用户一个交代。在两三年以前,纯HTML方式的前端展现工具还很少见,但现在,HTML报表已经成为了行业标准,主流产品都已经完成这一变革,可以说,展现方式向B/S方式的变革在前端报表工具领域中已经基本实现。

部署方式

  部署方式,是指前端展现工具的体系结构、如何在服务器上部署、对环境的要求、与其他应用系统的关系、开发调用方法等一系列的问题。

  在这个领域,核心的变革,就是由专有系统向开放系统的发展。

传统的BI前端工具,基本上都是封闭的系统,采用专门的报表服务器。这种系统往往只能在一种平台上运行,而在面对更多的平台的要求时,则推出一个又一个专门的版本。这种方式就如同早期的C在不同平台上编译,早已经是落后于时代的方式。同时,独立的报表服务器,往往成为性能上的瓶颈,更无法有机地与用户的应用系统在数据访问、负载均衡、用户管理等诸多方面相融合。

而开放系统,则具有若干先天的优点,比如易于跨平台部署,可以紧密地与应用系统集成,充分利用应用平台的数据库连接池、负载均衡集群等等,正因为此,所以开放的系统,即纯粹基于JAVA的前端工具受到了软件开发人员的普遍欢迎。

但是,在部署方式方面,专有系统与开放系统的斗争则要激烈得多。毕竟,专有系统来自于一些大牌厂商,他们有着较强的市场能力和很大的客户基础。但是,相信就如同应用软件的其他领域一样,专有系统必将一步步让位于开放系统。当用户用JAVA实现一个应用系统时,他很难理解为什么就偏偏这个工具不能用我的连接池,为什么不能在我的集群上部署,为什么不能给我足够的CLASS来用,为什么还要搞一套独立的用户与权限… …。所以,虽然斗争在继续,但必然的方向一定是开放系统战胜专有系统,或者说专有系统向开放系统靠拢。

设计方式

  设计方式,就是指对数据的具体展现格式与内容如报表、图表等如何进行设计与定制。可以说,这是前端展现工具最核心的环节,是决定了前端展现工具好不好用、能不能很好地解决用户的问题的关键所在。

在这个领域,核心的变革,就是由传统的视图、条带、分组为核心的传统报表模型向以多源分片、不规则分组、动态格间计算、行列对称为核心的新一代报表模型转变的发展。

现有大多数的前端工具所采用的设计模型都是一样的,概括起来就是:数据不管来自于多少个表,都要先弄成一个视图;在设计过程中把不同的字段和其他报表元素放到不同的条带(BAND)上;通过根据一些字段进行分组、合计来处理一些相对复杂的报表。

这种传统模型应该说是来自于最常见的一些简单的报表,但在实际中面对很多复杂的报表设计的要求,就出现了很多“补”的方法。时间越来越长,“补”的方法就越来越多,一些产品的功能也就越来越强。

但是,这并不是根本解决前端工具设计问题的方法,由于模型的局限,不论怎么补,增加多少辅助的功能,都还是会有更多的报表很难依靠前端工具本身来实现,而需要大量的前期数据准备、复杂的SQL,甚至编写程序来实现。另一方面,补的结果,使得一个工具从使用与学习方面都越来越不方便。一个最典型的例子就是交叉表。正是因为最初的条带、分组模型难以很好地处理数据横向展开的问题,因此许多工具里面都带着一个交叉表,但交叉表与纵向表往往是两个不太相关的东西,从而在一起结合使用很别扭,许多表拿这个方法那边不行了,拿那个方法这边又不行了。

实际上,传统工具的报表模型,诞生于十几年前,并不是针对复杂的报表需求而设计的。在那个时代,解决复杂报表的办法就是编程序,而且编程序在当时相对而言也不是一个低效率的方法。报表工具只是为了解决一些简单、标准形式的报表的快速设计与输出,或者说,主要是作为BI的前端工具来用的。但面对着大量的直接的报表应用需求,面对着其他技术的突破式的发展,这种传统的模型就表现得落后于时代了。对于市场而言,需求的迫切与技术的局限就意味着机会,就意味着创新与发展的动力。正是传统模型的局限与困难,推动了新一代报表模型的出现。

新一代报表模型的核心特征表现为多源分片、不规则分组、动态格间计算、行列对称。

多源分片,就是在一个报表中可以独立地使用多个不同的数据视图,供报表的不同“片”使用,各自进行不同方式的数据展开与使用,各片之间还可建立各种联系。这样就避免了复杂的SQL、预先计算和很多在传统模型中需要编程解决的问题。

不规则分组,就是在传统标准的GROUP分组方式之外,可以支持灵活的各种分组方式,比如不完全分组、集合分组、重复分组等,以适应各种复杂的统计需要。

动态格间计算则跨越了传统的横向字段间计算和纵向求和计算,可以灵活地、跳跃地处理各种方式的格间计算关系。

行列对称通过类似于EXCEL式的设计方式,可以将行、列同等处置,解决了传统模型中水平方向不能进行展开、无法支持复杂的横向表的困难。

可以说,这些新的模型、新的特征都来源于传统模型经常遇到而又很难解决的问题。通过构架完整的新型模型,使得报表的设计效率有了大幅度的提高,有人将其比喻成由火车到飞机的革命。

在报表设计的领域,由传统模型到新一代模型的变革还刚刚开始,但是,更合理、更高效、更强有力的新一代模型有着强大得多的生命力,因此这一变革必将成为前端工具技术发展中的新的高潮。

数据仓库常见名词浅释

Data Warehouse
本世纪80年代中期,”数据仓库之父”William H.Inmon先生在其《建立数据仓库》一书中定义了数据仓库的概念,随后又给出了更为精确的定义:数据仓库是在企业管理和决策中面向主题的、集成的、与时间相关的、不可修改的数据集合。与其他数据库应用不同的是,数据仓库更像一种过程,对分布在企业内部各处的业务数据的整合、加工和分析的过程。而不是一种可以购买的产品。

Data mart
数据集市,或者叫做”小数据仓库”。如果说数据仓库是建立在企业级的数据模型之上的话。那么数据集市就是企业级数据仓库的一个子集,他主要面向部门级业务,并且只是面向某个特定的主题。数据集市可以在一定程度上缓解访问数据仓库的瓶颈。

OLAP
联机分析处理(OLAP)的概念最早是由关系数据库之父E.F.Codd于1993年提出的。当时,Codd认为联机事务处理(OLTP)已不能满足终端用户对数据库查询分析的需要,SQL对大数据库进行的简单查询也不能满足用户分析的需求。用户的决策分析需要对关系数据库进行大量计算才能得到结果,而查询的结果并不能满足决策者提出的需求。因此Codd提出了多维数据库和多维分析的概念,即OLAP。Codd提出OLAP的12条准则来描述OLAP系统:
准则1 OLAP模型必须提供多维概念视图
准则2 透明性准则
准则3 存取能力推测
准则4 稳定的报表能力
准则5 客户/服务器体系结构
准则6 维的等同性准则
准则7 动态的稀疏矩阵处理准则
准则8 多用户支持能力准则
准则9 非受限的跨维操作
准则10 直观的数据操纵
准则11 灵活的报表生成
准则12 不受限的维与聚集层次

ROLAP
基于Codd的12条准则,各个软件开发厂家见仁见智,其中一个流派,认为可以沿用关系型数据库来存储多维数据,于是,基于稀疏矩阵表示方法的星型结构(star schema)就出现了。后来又演化出雪花结构。为了与多维数据库相区别,则把基于关系型数据库的OLAP称为Relational OLAP,简称ROLAP。代表产品有Informix Metacube、Microsoft SQL Server OLAP Services。

MOLAP
Arbor Software严格遵照Codd的定义,自行建立了多维数据库,来存放联机分析系统数据,开创了多维数据存储的先河,后来的很多家公司纷纷采用多维数据存储。被人们称为Muiltdimension OLAP,简称MOLAP,代表产品有Hyperion(原Arbor Software) Essbase、Showcase Strategy等。

Client OLAP
相对于Server OLAP而言。部分分析工具厂家建议把部分数据下载到本地,为用户提供本地的多维分析。代表产品有Brio Designer,Business Object。

DSS
决策支持系统(Decision Support System),相当于基于数据仓库的应用。决策支持就是在收集所有有关数据和信息,经过加工整理,来为企业决策管理层提供信息,为决策者的决策提供依据。

ETL
数据抽取(Extract)、转换(Transform)、清洗(Cleansing)、装载(Load)的过程。构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。

Ad hoc query
即席查询,数据库应用最普遍的一种查询,利用数据仓库技术,可以让用户随时可以面对数据库,获取所希望的数据。

EIS
领导信息系统(Executive Information System),指为了满足无法专注于计算机技术的领导人员的信息查询需求,而特意制定的以简单的图形界面访问数据仓库的一种应用。

BPR
业务流程重整(Business Process Reengineering),指利用数据仓库技术,发现并纠正企业业务流程中的弊端的一项工作,数据仓库的重要作用之一。

BI
商业智能(Business Intelligence),指数据仓库相关技术与应用的通称。指利用各种智能技术,来提升企业的商业竞争力。

Data Mining
数据挖掘,Data Mining是一种决策支持过程,它主要基于AI、机器学习、统计学等技术,高度自动化地分析企业原有的数据,做出归纳性的推理,从中挖掘出潜在的模式,预测客户的行为,帮助企业的决策者调整市场策略,减少风险,做出正确的决策

CRM
客户关系管理(Customer Relationship Management),数据仓库是以数据库技术为基础但又与传统的数据库应用有着本质区别的新技术,CRM就是基于数据仓库技术的一种新应用。但是,从商业运作的角度来讲,CRM其实应该算是一个古老的”应用”了。比如,酒店对客人信息的管理,如果某个客人是某酒店的老主顾,那么该酒店很自然地会知道这位客人的某些习惯和喜好,如是否喜欢靠路边,是否吸烟,是否喜欢大床,喜欢什么样的早餐,等等。当客人再次光临时,不用客人自己提出来,酒店就会提供客人所喜欢的房间和服务。这就是一种CRM。

Meta Data
元数据,关于数据仓库的数据,指在数据仓库建设过程中所产生的有关数据源定义,目标定义,转换规则等相关的关键数据。同时元数据还包含关于数据含义的商业信息,所有这些信息都应当妥善保存,并很好地管理。为数据仓库的发展和使用提供方便。
 

什么是数据仓库

我们都知道,利用多种不同的企业数据库提取数据进行业务决策是一件复杂的工作。而数据仓库的主要优点就是可以将这些不同的数据整合在一个中央存储环境中,并提供给用户必须的OLAP(Online Analytical Processing,联机分析处理)工具来检索与业务有关的数据。

当你听到”数据仓库(data warehousing)”这个词的时候会想到什么呢?也许是一个满是货架的房间,而货架上按一定次序放满了各种信息等待用户提取。

如果你是这么想的,那么恭喜你已经向数据仓库迈进了一步。在传统的仓库中,货物通过一定的规则来摆放,以便于管理者快速检索和确认货品种类,并最终以最快速度提交给提货人员。而数据仓库的模式与之类似。

现在,你也许又会问:”那到底数据仓库和传统仓库相比有什么不同呢?”答案是它们非常类似,但在定义上有所不同。在一个典型的企业中,由于部门的分别,不同的数据总是存储在不同的数据库中。比如市场部、销售部、财务部或者是技术部,每个部门都有自己单独的一套数据库,他们之间在物理上是完全分离的,可是在逻辑上也许有着这样那样的关联。

如果有一个业务问题需要利用其中多个数据库中的数据才能作出结论,那么这个工作就变得很麻烦了。它需要有人熟悉每个部门的数据库结构,并在数据库管理员的协助下进行相关数据的采集和分析。一般来说,公司的普通员工是无法完成这个工作的。

定义
数据仓库可以将上面所提的各种数据整合在一个中央存储库中,为了便于分析,它还会重新整理和排列数据,这意味着新的数据库比传统的分散应用数据库更复杂。一般来说,控制程序会在非忙碌时间将数据批量转换到中央存储库,不过这个工作也可以实时进行。

当数据被导入数据仓库后,借助一些数据库连接和操作工具,比如联机分析处理(OLAP)工具,管理者或者其他用户就可以轻松的操作数据库并得到所需的商务数据。

让我们再想象一下,在传统的仓库中,铲车在货架间穿梭,不断的将一箱箱货物放到相应的货架上。在这个过程中,铲车驾驶员清楚的知道货品该放在什么地方,并且可以选择最快的途径将铲车驶到相应位置。而在数据仓库中,OLAP工具扮演的就是铲车和驾驶员的双重角色,它可以让用户通过简单的操作在数据库中对所需数据进行快速检索。

在OLAP服务器中,数据被重新整理以适应商务报表和分析请求的格式,包括:

异常报告(Exception reporting)
随即分析(Ad-hoc analysis)
资金使用与预算报告(Actual vs. budget reporting)
数据挖掘(Data mining,在数据中寻找趋势或者反常)
为了快速的处理商务查询,有的OLAP服务器会对查询结果进行预处理,而一个异常查询的预处理结果也许比整个数据仓库的体积还要大好几倍。

OLAP 的分类
OLAP主要分为两大类:使用多维数据库的MOLAPS和使用关系数据库的ROLAPS。MOLAP是一种两层的客户服务器架构,OLAP数据库既服务于数据库层,也服务于应用逻辑层。因此应用逻辑和数据库访问都位于同一系统中。

ROLAP通常使用三层架构,其数据库层和应用逻辑层是分离的,并且其数据存储在关系型数据库中,而不像MOLAP那样将数据存储在多维数据库中。

至于何种架构更适合你,则要根据需要而定了。MOLAPS和ROLAPS相比,具有更短的处理时间,更快的响应速度,并且对于用户需求更为灵活。而ROLAPS在处理的数据总量和支持的客户数方面强于MOLAPS。

此外,还有一种OLAP也越来越流行,这就是hybrid online analytical processing (混合联机分析处理,HOLAP)。从字面上我们可以大致看出,HOLAP是上面两种分类的融合,它同时利用了多维数据库和关系数据库。HOLAP的优势在于它可以在性能需求和存储量需求间找到一个平衡点,从而充分利用系统潜能。

数据挖掘
一旦确定了数据仓库,并选择了适当的工具对数据进行检索和操作,我们就可以通过特定的方法对数据进行询问。这个方法就是数据挖掘(data mining)。正如我们在前面提到的,查找数据趋势、模式以及数据间的关系都属于数据挖掘。数据挖掘技术包括:

联合:查找连接事件的模式
分组:查找新的模式
合并:发现和分组以前未出现过的情况
预测:发现数据中的模式并据此预测未来的数据
很明显,和在传统数据库中进行数据查询相比,使用数据挖掘深入分析数据仓库并找出有用信息并不简单。另外,数据挖掘技术还被用于遗传学研究。

另一种对数据进行分析的方法是使用决策支持系统。决策支持系统一般来说是通过专家系统或者人工智能来对数据进行分析,之后将结果汇总成便于用户阅读理解的格式(如线图、报表、表格等形式),以此帮助管理者做出商务决策。

实现
目前有数百家厂商都在销售数据仓库、OLAP、数据挖掘以及决策支持系统软件,其中主要厂商有IBM、Oracle、COGNOS和Microsoft等。另外,互联网上关于数据仓库及其相关工具的介绍也多如牛毛,你可以搜索”OLAP”或”数据仓库”来得到很多有用的知识。

数据仓库是一个复合项目,要想实现它需要专业知识。如果在设计和实施数据仓库项目时没有得到专门的技术支持,就会造成巨大的资源浪费。本文的目的只是为读者扩大知识面,以便读者在今后阅读更专业的数据仓库文章时可以较好的理解其内容。

PS:摘自“开发者在线 Builder.com.cn ”

从数据到决策

    商业智能的应用让数据的价值得以充分体现,今天的数据已经变成了现代企业业务的血液。很多组织采用了平衡计分卡或者企业驾驶舱作为业绩评估的主要工具,无论哪种,这些组织一定都会投入很多时间和资源来保证数据的质量和数据的可用性。但相对而言,组织在帮助经理们提高对数据的分析能力,以做出更科学的决策上却所做不多,而这正是业绩评估(performance measurement)的主要目标。幸好,经过分解为一组比较容易执行的步骤,从正确的数据形成正确的决策的这种能力是可以提高的。这里介绍四个步骤,可以帮助管理人员做出正确的决策。

    第一步: 了解情况。业绩考评的第一步是把数据转化为信息,这可以通过回答“What”来实现,包括发生了什么、在哪里发生、什么时候发生、是好还是坏、到什么程度等。

    了解情况最好的办法是用图表来表示数据。不过,画图和表这个办法很可能需要预先做些规划。通常,我们可以把当前的数据和最近一段时间的数据放到一张图表上进行比较,这样可以发现一些趋势。有时,还要把计划值与实际值画到同一张图表上,这样更能说明问题。

    除了画图表外,分析者还可以加上注释,几个字或者一句话可以帮助看图表的人理解。通过这种方式,图表的作者可以更清楚地表达自己的意思,不至引起误解。

    第二步: 分析。这一步是把信息转化为知识。通过回答“为什么”这个问题来实现: 包括为什么会这样?根本原因到底是什么?到什么程度仍然可控等等。这是四个步骤中最困难的一步,但这一步让我们可以更深层次地对绩效进行了解。通常,这一步需要参考其他一些数据和资料,来帮助我们找出问题之所在。

    第三步:细化问题。这是从知识转变为决策的过程,通常要涉及多人,他们要回答“怎么办”,也就是“通过前面的分析,我们已经了解组织目前绩效水平,但是,我们应该怎么提高绩效水平呢,具体来说,要采取哪些措施?”

    实际上,这一步可以细分为找出具体问题、提出可能的解决办法以及做出最后的决定。比如对一个从事电子商务的网站,可能的绩效改进措施有: 提高网站的导航能力,方便网民查找商品,不仅要吸引自己的顾客还要吸引那些在竞争对手的网站上购物的顾客,进而要找出本企业网站的不足进行改进。

    第四步: 沟通。沟通的目的在于准备将决策转化为行动,这也是四步中最重要的一步。一旦组织形成了决议,必须与所有参与执行和可能会影响最后效果的方方面面进行沟通。否则,前面三步就会落空。这里有一些带有指导性的问题: 哪些人需要知道这个决策,什么时候他们要知道这个决策,谁来和他们进行沟通和交流?这一步的主要作用在于明确行动者的具体责任。

    上述四步对于需要每个月或者每个季度要收集数据、准备进行业绩分析或者制订长期的经营战略的管理者非常有效。如果组织的管理者能做到这些,说明这个组织是一个能学习的组织,将来一定会更快更好地做出各种决策,而这种灵活性无疑将成为企业巨大的竞争优势。

商业智能是一种解决方案

商务智能是20世纪90年代末首先在国外企业界出现的一个术语,其代表为提高企业运营性能而采用的一系列方法、技术和软件。它把先进的信息技术应用到整个企业,不仅为企业提供信息获取能力,而且通过对信息的开发,将其转变为企业的竞争优势,也有人称之为混沌世界中的智能。因此,越来越多的企业提出他们对BI的需求,把BI作为一种帮助企业达到经营目标的一种有效手段。

什么是商业智能
商业智能定义为一类由数据仓库(或数据集市)、查询报表、数据分析、数据挖掘、数据备份和恢复等部分组成的、以帮助企业决策为目的技术及其应用。当时,Gartner Group猜测说:到2000年,信息民主(注:指组织内信息共享的无差别性)将在具有前瞻性思维的企业中浮现。借助商业智能,员工、咨询员、客户、供给商以及公众能够有效地运用信息。其实,商业智能所涉及的技术与应用,在Gartner Group命名之前就有,起初被称为经理信息系统(EIS),在羽化成商业智能之前叫决策支持系统(DSS)。

目前,商业智能通常被理解为将企业中现有的数据转化为知识,帮助企业做出明智的业务经营决策的工具。这里所谈的数据包括来自企业业务系统的订单、库存、交易账目、客户和供给商资料来自企业所处行业和竞争对手的数据以及来自企业所处的其他外部环境中的各种数据。而商业智能能够辅助的业务经营决策,既可以是操作层的,也可以是战术层和战略层的决策。为了将数据转化为知识,需要利用数据仓库、联机分析处理(OLAP)工具和数据挖掘等技术。因此,从技术层面上讲,商业智能不是什么新技术,它只是数据仓库、OLAP和数据挖掘等技术的综合运用。

为此,把商业智能看成是一种解决方案应该比较恰当。BI的要害是从许多来自不同的企业运作系统的数据中,提取出有用的数据,进行清理以保证数据的正确性,然后经过抽取(Extraction)、转换(Transformation)和装载(Load),即ETL过程,合并到一个企业级的数据仓库里,从而得到企业数据的一个全局视图,在此基础上利用合适的查询和分析工具、数据挖掘工具、OLAP工具等对其进行分析和处理(这时信息变为辅助决策的知识),最后将知识呈现给治理者,为治理者的决策过程提供支持。商业智能的这个基本过程如图所示。
bi-process

因此,BI是涉及一个很宽领域的,集收集、合并、分析和提供信息存取功能为一身的解决方案,包括ETL软件、数据仓库、数据集市、数据查询和报告、多维/联机数据分析、数据挖掘和可视化工具。

商业智能的典型应用

经营分析

经营分析包括经营指标分析、经营业绩分析和财务分析三部分。

经营指标分析是指对企业不同的业务流程和业务环节的指标,如:利润率、应收率、销售率、库存量、单品销售情况及所占营业比例、风险采购和库存评价指标等进行搜集和分析。但这些指标只能反映局部的经营状况。为了解企业的整体经营状况,还需对这些指标进行科学的组织和分析,利用智能治理技术,形成一个能反映企业整体情况的数学模型。这样通过观察总指标并设置告警,才能获得整个企业的经营状况。

经营业绩分析是指对各部门的营业额、销售量等进行统计,在此基础上,进行同期比较分析、应收分析、盈亏分析、各种商品的风险度分析等等。经营业绩分析有利于企业实时把握自身的发展和经营情况,有利于企业及时调整经营业务、化解经营风险。

财务分析是指对企业财务数据中的利润、费用支出、资金占用及其他具体经济指标进行有效分析。通过财务分析,可以及时把握企业在资金使用方面的实际情况,为及时调整和降低企业成本提供数据依据。

战略决策支持

在经营分析的基础上,将各类数据、信息进行高度的概括和总结,然后形成供高级决策者进行战略决策时参考的企业经营状况分析报告,是商业智能的优势所在。

商业智能对战略决策的支持,分别表现在对公司战略、业务战略和职能战略的支持上。在公司战略决策支持层面上,可以根据公司各战略业务单元的经营业绩和经营定位,选择一种合理的投资组合战略;在业务战略决策支持层面上,由于商业智能系统中集成了更多的外部数据,如外部环境和行业信息,各战略业务单元可据此分别制定自身的竞争战略;在职能战略决策支持层面上,由于来自于企业内部的各种信息,源源不断地输入进来,相应地可以提供营销、生产、财务、人力资源等决策支持。

绩效治理

商业智能技术能够从企业各种应用系统中提取出各种基础绩效指标与要害绩效指标(KPI, Key Performance Indicator)。为了考核员工的绩效,企业可以先将希望员工要做的工作进行量化,然后借助商业智能工具,治理人员可以追踪、衡量和评价员工的工作绩效,引导员工的思想方向和行动与企业的整体目标保持一致。

与各种企业信息化系统的关系

商业智能作为一种企业信息集成解决方案,为企业不同的应用系统,如企业资源规划(ERP)、客户关系治理(CRM)、供给链治理(SCM)、办公自动化(OA)、电子商务(E-Commerce)以及外部环境扫描(Environmental Scanning)等系统之间架起了互通的桥梁。同时,这些信息化系统也为商业智能提供了数据源,离开了它们,商业智能就会成为无源之水,无本之木。但商业智能的价值又在这些系统之上,因为它可以发现数据背后隐藏的商机或威胁,获得洞察力,了解企业和市场的现状,把握趋势,识别异常情况,理解企业业务的推动力量,认清正在对企业的业务产生影响的行为及影响程度如何等。

商业智能的应用实施

企业在实施商业智能技术时,有两种方法可供选择。一种较稳妥的方法是从企业中某一个局部的商业需求开始,尝试着进行商业智能的实施。这种方法轻易实现,回报快,三年ROI(投资回报率)较高。另一种方法则是在企业所有领域全面实施商业智能,以支持企业的所有业务过程,满足跨企业的决策支持。这种方法较前一种方法更具挑战性,三年ROI较低,收回投资的平均年限也较长。

无论采用哪一种方法,企业要建立自己的商业智能系统,都需要经历商业智能系统分析、系统设计和系统维护与治理三个阶段。

商业智能系统分析

商业智能系统分析,又可分为企业需求分析、信息来源分析、逻辑信息模型设计、商业智能系统结构设计等步骤。

企业需求分析可包含CRM分析、经营分析、产品组合分析、产品促销推广分析、财务风险分析与电子商务分析等等。

信息来源分析要对可能的信息来源进行调查,包括从顾客服务、商品销售、存货采购、会计财务、人力资源、推广促销、市场调查与电子商务等相关系统中考察可以收集的信息源。

逻辑信息模型设计主要的工作是从已经联机的信息系统中,找寻可用于信息分析的相关资料档案,并且与企业各项业务分析中的系统需求功能相比照,设计与汇集可符合企业需要的逻辑信息模型。

商业智能系统结构设计包括确定硬件与软件组成,设计信息从来源系统到商业智能系统数据库的处理流程。通常采用OLAP与数据挖掘工具进行分析猜测,使终端用户存取数据更有效率。

商业智能系统设计

商业智能系统设计,包括实体数据模型设计、ETL(抽取、转换和装载)设计、数据挖掘方法设计、终端程序设计(OLAP或EIS)等步骤。

实体数据模型设计就是数据抽取 (Extraction)、转换(Transformation)与装载(Loading)的功能设计。商业智能系统必须具备抽取各种类型信息的能力,并且依照资料的特性与决策者的需求,能够自动、定时地到来源数据库中抽取信息。数据转换则是将不一致的数据,根据规则转换为具有一致性的数据。装载则在商业智能的转换程序服务器上自动进行。装载程序需要考虑自上一次资料抽取之后,来源数据库内发生改变的项目,并对装载时产生的错误进行处理。数据挖掘方法设计即根据系统数据的特点,选择适用的挖掘算法,如可采用货篮分析、时间序列分析、聚类分析、决策树方法、遗传算法等。终端用户应用系统设计用于确定以何种形式将联机分析处理、数据挖掘分析的结果呈现给用户。

商业智能系统维护与治理

商业智能系统维护与治理,包括商业智能整合性系统建立、数据库治理、安全治理与效率治理等步骤。这里涉及两个层面,第一是维持与治理商业智能系统与其支持结构(数据库治理、安全治理、效能治理)所需的基本功能。第二是从技术及商业的角度来探讨商业智能系统配置是否达到最佳。从技术的角度而言,包括检查逻辑与实体数据库设计,以及所需工作效率调整是否合适。从商业的角度而言,包括数据库稽核,亦即访问商业使用者,以考察他们的需求是否获得满足,以及获得的投资报酬。

为了使商业智能系统获得成功,组建数据库治理小组是要害。数据库治理小组要负责建立实体数据模型、数据存储的DBMS以及备份与恢复程序,还要负责安全治理和效率治理。

北京燕莎望京购物中心商业智能的应用

零售企业的信息系统天天会产生大量的数据。假如采用商业智能系统对这些数据进行分析,不仅可以获得商品的关联关系,还可以获得有关商品结构、销售状况、库存状况、供给商和顾客等决策支持所需的珍贵信息。1999年11月,燕莎望京购物中心对原计算机系统进行了改造升级,开始实施商业智能。新系统重新整合和规范了北京燕莎望京购物中心的原有业务流程,使得在治理上更加规范和通畅。2001年,燕莎望京购物中心在原基础业务治理系统基础上导入了商业智能系统。该系统基于IBM公司的DB2数据库,并采用了一系列新的开发思想。

燕莎望京实施的BI运用了数据仓库、在线分析和数据挖掘技术来处理和分析数据,进行数据抽取、清洗、聚类、挖掘、猜测等处理,针对不同的”维”进行上下钻取、左右拖动及纵横旋转,通过连续的立体动态表来产生可透析的各种展示数据,直观地显示分析者所要探询的某种经营属性或市场规律。

该BI系统分为商业计划、商品配置、采购技术、销售技术 、库存技术、资金分析 、顾客分析 、人员绩效八大模块,采用三维(时间维、经营活动维、指标维)模型进行全方位的分析,从而得出科学准确的结论。具体来说,对于时间维,可以选择从一年到一天甚至可以精确到某一小时,几乎可以对任意时段的同比和环比指标进行分析比较;对于经营活动维,既可以按照商品的类别如品牌、产地、新商品、淘汰品、促销品、账期品、组包品、多包装品摆放位置、柜组、楼面、占用面积和体积、价格带、毛利带等划分,又可以按照角色如买手、供给商、CEO、部门经理、营业员、收银员、一般消费者、贵宾客户进行划分;对于经营指标维,则可以从进货、销售、调配、库存(毛利、毛利率、动销率、周转率、交叉比率)、资金占用比、库存数量、金额、客人数、客单价等多个角度进行具体的统计与分析。

燕莎望京启用商业智能分析系统之后,有效地解决了原来存在于企业中的内外部矛盾。通过对供给商在特定时间段内的各项指标,包括订货量、订货额、进货量、进货额、到货时间、库存量、库存额、退换量、退换额、销售量、销售额、所供商品毛利率、周转率、交叉比率等进行的分析,为供给商的引进、储备、淘汰(或淘汰其部分品种)及供给商库存商品的处理提供了可靠的分析依据。比如,在分析的过程中,可能会发现某些供给商所提供的商品销售一直不错,某个时间段里的结款也非常稳定,而这个供给商的结算方式是代销。分析显示出,既然这个供给商所供商品销售风险较小,在资金不紧张的情况下,为什么不考虑将他们改为购销来降低经营成本呢?

通过采用商业智能分析系统,燕莎望京确定了以分析结构为主线的分析思路,进而指导了购物中心商品结构的调整,增强了所营商品的竞争能力,商品配置也更加趋于合理,并为及时调整商品的品类和价格定位、调整和监控供给商的经营行为、及时订货补货等提供了科学的依据。通过顾客分析,可以了解到燕莎望京的商圈里消费者的居住区域、文化层次、年龄段、平均月收入等,为燕莎望京总体的定位提供强有力的说服性数据。
作者:李艳
出处:www.chinabi.net

抗灾救灾,众“支”成城

爱心大地震

    2008年对要大步发展的中国而言的确是多灾多难的一年,股票下跌、手足口病、藏独等事件已经让08年变得不大稳定了,突如其来的汶川大地震又一下夺取了一万四千多条的性命,而且这个数字还在不断上升,关于地震的情况,各媒体也是24小时滚动不断的播出,向关注汶川大地震的人们传达最新消息。

    我听过这么一个故事,一位母亲的孩子在四川工作,地震后的两三天时间里她打电话一直打不通,当偶尔有一次突然接通了孩子的电话,听到了她孩子的声音,她什么也说不出了,竟大哭起来。

    汶川大地震牵动的不止只是灾区亲人的心,更是牵动了整个中华民族的心,这些日子社会各界也纷纷献出爱心,体育娱乐明星都做了一些不错的带头作用,但这应该是整个社会的责任,如果一人捐一元钱整个华人就能捐13亿,让我们齐心协力共度难关。天无情,人有情,让我们各自尽自己的一份力,并调动身边人的热情,为自己的同胞们做出自己的贡献吧!

联机分析处理OLAP

      当今的数据处理大致可以分成两大类:联机事务处理OLTP(on-line transaction processing)、联机分析处理OLAP(On-Line Analytical Processing)。OLTP是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。OLAP是数据仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。下表列出了OLTP与OLAP之间的比较。

OLTP

OLAP

用户

操作人员,低层管理人员

决策人员,高级管理人员

功能

日常操作处理

分析决策

DB 设计

面向应用

面向主题

数据

当前的, 最新的细节的, 二维的分立的

历史的, 聚集的, 多维的集成的, 统一的

存取

读/写数十条记录

读上百万条记录

工作单位

简单的事务

复杂的查询

用户数

上千个

上百个

DB 大小

100MB-GB

100GB-TB

      OLAP是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。OLAP的目标是满足决策支持或者满足在多维环境下特定的查询和报表需求,它的技术核心是”维”这个概念。

      “维”是人们观察客观世界的角度,是一种高层次的类型划分。“维”一般包含着层次关系,这种层次关系有时会相当复杂。通过把一个实体的多项重要的属性定义为多个维(dimension),使用户能对不同维上的数据进行比较。因此OLAP也可以说是多维数据分析工具的集合。

       OLAP的基本多维分析操作有钻取(roll up和drill down)、切片(slice)和切块(dice)、以及旋转(pivot)、drill across、drill through等。

       ·钻取是改变维的层次,变换分析的粒度。它包括向上钻取(roll up)和向下钻取(drill down)。roll up是在某一维上将低层次的细节数据概括到高层次的汇总数据,或者减少维数;而drill down则相反,它从汇总数据深入到细节数据进行观察或增加新维。 
      ·切片和切块是在一部分维上选定值后,关心度量数据在剩余维上的分布。如果剩余的维只有两个,则是切片;如果有三个,则是切块。 
      ·旋转是变换维的方向,即在表格中重新安排维的放置(例如行列互换)。

      OLAP有多种实现方法,根据存储数据的方式不同可以分为ROLAP、MOLAP、HOLAP。

      ROLAP表示基于关系数据库的OLAP实现(Relational OLAP)。以关系数据库为核心,以关系型结构进行多维数据的表示和存储。ROLAP将多维数据库的多维结构划分为两类表:一类是事实表,用来存储数据和维关键字;另一类是维表,即对每个维至少使用一个表来存放维的层次、成员类别等维的描述信息。维表和事实表通过主关键字和外关键字联系在一起,形成了”星型模式”。对于层次复杂的维,为避免冗余数据占用过大的存储空间,可以使用多个表来描述,这种星型模式的扩展称为”雪花模式”。

      MOLAP表示基于多维数据组织的OLAP实现(Multidimensional OLAP)。以多维数据组织方式为核心,也就是说,MOLAP使用多维数组存储数据。多维数据在存储中将形成”立方块(Cube)”的结构,在MOLAP中对”立方块”的”旋转”、”切块”、”切片”是产生多维数据报表的主要技术。

      HOLAP表示基于混合数据组织的OLAP实现(Hybrid OLAP)。如低层是关系型的,高层是多维矩阵型的。这种方式具有更好的灵活性。

      还有其他的一些实现OLAP的方法,如提供一个专用的SQL Server,对某些存储模式(如星型、雪片型)提供对SQL查询的特殊支持。

      OLAP工具是针对特定问题的联机数据访问与分析。它通过多维的方式对数据进行分析、查询和报表。维是人们观察数据的特定角度。例如,一个企业在考虑产品的销售情况时,通常从时间、地区和产品的不同角度来深入观察产品的销售情况。这里的时间、地区和产品就是维。而这些维的不同组合和所考察的度量指标构成的多维数组则是OLAP分析的基础,可形式化表示为(维1,维2,……,维n,度量指标),如(地区、时间、产品、销售额)。多维分析是指对以多维形式组织起来的数据采取切片(Slice)、切块(Dice)、钻取(Drill-down和Roll-up)、旋转(Pivot)等各种分析动作,以求剖析数据,使用户能从多个角度、多侧面地观察数据库中的数据,从而深入理解包含在数据中的信息。        根据综合性数据的组织方式的不同,目前常见的OLAP主要有基于多维数据库的MOLAP及基于关系数据库的ROLAP两种。MOLAP是以多维的方式组织和存储数据,ROLAP则利用现有的关系数据库技术来模拟多维数据。在数据仓库应用中,OLAP应用一般是数据仓库应用的前端工具,同时OLAP工具还可以同数据挖掘工具、统计分析工具配合使用,增强决策分析功能。

      目前主要OLAP厂商有:Hyperion、Oracle、Cognos、MicroStrategy、Microsoft、BusinessObjects、IBM、Brio等。

关于ETL

      ETLExtract-Transform-Load的缩写,即数据抽取(Extract)、转换(Transform)、装载(Load)的过程。ETL作为BI/DW(Business Intelligence)的核心和灵魂,能够按照统一的规则集成并提高数据的价值,是负责完成数据从数据源向目标数据仓库转化的过程,是实施数据仓库的重要步骤。如果说数据仓库的模型设计是一座大厦的设计蓝图,数据是砖瓦的话,那么ETL就是建设大厦的过程。在整个项目中最难部分是用户需求分析和模型设计,而ETL规则设计和实施则是工作量最大的,约占整个项目的60%~80%,这是国内外从众多实践中得到的普遍共识。

  信息是现代企业的重要资源,是企业运用科学管理、决策分析的基础。目前,大多数企业花费大量的资金和时间来构建联机事务处理OLTP的业务系统和办公自动化系统,用来记录事务处理的各种相关数据。据统计,数据量每2~3年时间就会成倍增长,这些数据蕴含着巨大的商业价值,而企业所关注的通常只占在总数据量的2%~4%左右。因此,企业仍然没有最大化地利用已存在的数据资源,以致于浪费了更多的时间和资金,也失去制定关键商业决策的最佳契机。于是,企业如何通过各种技术手段,并把数据转换为信息、知识,已经成了提高其核心竞争力的主要瓶颈。而ETL则是主要的一个技术手段。

  目前,ETL工具的典型代表有:Informatica、Datastage、OWB、微软DTS……