天天看点

BI商业智能1 BI2 数据仓库3 联机分析处理(OLAP)4 数据挖掘工具

BI商业智能

1 BI

商业智能也称作BI,是英文单词BusinessIntelligence的缩写。商业智能的概念最早在1996年提出。当时将商业智能定义为一类由数据仓库(或数据集市)、查询报表、数据分析、数据挖掘、数据备份和恢复等部分组成的、以帮助企业决策为目的技术及其应用。目前,商业智能通常被理解为将企业中现有的数据转化为知识,帮助企业做出明智的业务经营决策的工具。这里所谈的数据包括来自企业业务系统的订单、库存、交易账目、客户和供应商等来自企业所处行业和竞争对手的数据以及来自企业所处的其他外部环境中的各种数据。而商业智能能够辅助的业务经营决策既可以是操作层的,也可以是战术层和战略层的决策。为了将数据转化为知识,需要利用数据仓库、联机分析处理(OLAP)工具和数据挖掘等技术。因此,从技术层面上讲,商业智能不是什么新技术,它只是数据仓库、OLAP和数据挖掘等技术的综合运用。

BI商业智能1 BI2 数据仓库3 联机分析处理(OLAP)4 数据挖掘工具

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

BI商业智能1 BI2 数据仓库3 联机分析处理(OLAP)4 数据挖掘工具

一个BI系统为了满足企业管理者的要求,从浩如烟海的资料中找出其关心的数据,必须要做到以下几步:

1)为了整合各种格式的数据,清除原有数据中的错误记录——数据预处理的要求。

2)对预处理过数据,应该统一集中起来——元数据(Meta Data)、数据仓库(Data Warehouse)的要求;

3)最后,对于集中起来的庞大的数据集,还应进行相应的专业统计,从中发掘出对企业决策有价值的新的机会——OLAP(联机事务分析)和数据挖掘(Data Mining)的要求。

所以,一个典型的BI体系架构应该包含这3步所涉及的相关要求。

BI商业智能1 BI2 数据仓库3 联机分析处理(OLAP)4 数据挖掘工具

图 3 BI的体系架构

整个体系架构中包括:终端用户查询和报告工具、OLAP工具、数据挖掘(Data Mining)软件、数据仓库(Data Warehouse)和数据集市(Data Mart)产品、联机分析处理 (OLAP) 等工具。

1)、终端用户查询和报告工具。

专门用来支持初级用户的原始数据访问,不包括适应于专业人士的成品报告生成工具。

2)、数据预处理(STL-数据抽取、转换、装载)

从许多来自不同的企业运作系统的数据中提取出有用的数据并进行清理,以保证数据的正确性,然后经过抽取(Extraction)、转换(Transformation)和装载(Load),即ETL过程,合并到一个企业级的数据仓库里,从而得到企业数据的一个全局视图。

3)、OLAP工具。

提供多维数据管理环境,其典型的应用是对商业问题的建模与商业数据分析。OLAP也被称为多维分析。

4)、数据挖掘(Data Mining)软件。

使用诸如神经网络、规则归纳等技术,用来发现数据之间的关系,做出基于数据的推断。

5)、数据仓库(Data Warehouse)和数据集市(Data Mart)产品。

包括数据转换、管理和存取等方面的预配置软件,通常还包括一些业务模型,如财务分析模型。

6)、联机分析处理 (OLAP) 。

OLAP是使分析人员、管理人员或执行人员能够从多角度对信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。

其中核心技术在于数据预处理、数据仓库的建立(DW)、数据挖掘(DM)和联机分析处理(OLAP)三个部分。

2 数据仓库

         随着C/S技术的成熟和并行数据库的发展,信息处理技术的发展趋势是从大量的事务型数据库中抽取数据,并将其清理、转换为新的存储格式,即为决策目标把数据聚合在一种特殊的格式中。随着此过程的发展和完善,这种支持决策的、特殊的数据存储即被称为数据仓库(Data Warehouse, DW)。 W.H.nmon对数据仓库的定义为数据仓库是支持管理决策过程的、面向主题的、集成的、稳定的、不同时间的数据集合。

主题是数据归类的标准,每个主题对应一个客观分析领域,如客户、商店等,它可为辅助决策集成多个部门不同系统的大量数据。数据仓库包含了大量的历史数据,经集成后进入数据仓库的数据是极少更新的。数据仓库内的数据时限为5年至10年,主要用于进行时间趋势分析。数据仓库的数据量很大,一般为10GB左右。它是一般数据库(100MB)数据量的100倍,大型数据仓库达到TB级。

数据仓库主要应用在两个方面:使用浏览分析工具在DW中寻找有用的信息。数据仓库系统支持在DW上的应用,形成决策支持系统(DSS)。

面向主题是数据仓库第一个显著特点,就是指在数据仓库中,数据按照不同的主题进行组织,每一个主题中的数据都是从各操作数据库中抽取出来汇集而成,这些与该主题相关的所有历史数据就形成了相应的主题域。

数据仓库的第二个显著特点是集成。数据来源于不同的数据源,通过相应的规则进行一致性转换,最终集成为一体。

数据仓库的第三个特点是非易失性。一旦数据被加载到数据仓库中,数据的值不会再发生变化,尽管运行系统中对数据进行增、删、改等操作,但对这些数据的操作将会作为新的快照记录到数据仓库中,从而不会影响到已经进入到数据仓库的数据。

数据仓库最后一个特点是它随时间变化。数据仓库中每一个数据都是在特定时间的记录,每个记录都有着相应的时间戳。

BI商业智能1 BI2 数据仓库3 联机分析处理(OLAP)4 数据挖掘工具

数据仓库对外部数据源和操作型数据源的元数据,按照数据仓库模式设计要求进行归类,并建成元数据库,相对应的数据经过ETL后加载到数据仓库中;当信息客户需要查询数据时先通过信息展现系统了解元数据或者直接浏览元数据库,再发起数据查询请求得到所需数据。

一个典型的企业数据仓库系统,通常包含数据源、数据存储与管理、数据的访问三个部分。

BI商业智能1 BI2 数据仓库3 联机分析处理(OLAP)4 数据挖掘工具

数据源:是指企业操作型数据库中的各种生产运营数据、办公管理数据等内部数据和一些调查数据、市场信息等来自外环境的数据总称。这些数据是构建数据仓库系统的基础是整个系统的数据源泉。

数据的存储与管理:数据仓库的存储主要由元数据的存储及数据的存储两部分组成。元数据是关于数据的数据,其内容主要包括数据仓库的数据字典、数据的定义、数据的抽取规则、数据的转换规则、数据加载频率等信息。各操作数据库中的数据按照元数据库中定义的规则,经过抽取、清理、转换、集成,按照主题重新组织,依照相应的存储结构进行存储。也可以面向应用建立一些数据集市,数据集市可以看作是数据仓库的一个子集,它含有较少的主题域且历史时间更短数据量更少,一般只能为某个局部范围内的管理人员服务,因此也称之为部门级数据仓库。

数据的访问:由OLAP(联机分析处理)、数据挖掘、统计报表、即席查询等几部分组成。例如OLAP:针对特定的分析主题,设计多种可能的观察形式,设计相应的分析主题结构(即进行事实表和维表的设计),使管理决策人员在多维数据模型的基础上进行快速、稳定和交互性的访问,并进行各种复杂的分析和预测工作。按照存储方式来分,OLAP可以分成MOLAP以及ROLAP等方式,MOLAP (Multi-Dimension OLAP)将OLAP分析所需的数据存放在多维数据库中。分析主题的数据可以形成一个或多个多维立方体。ROLAP (Relational OLAP)将OLAP分析所需的数据存放在关系型数据库中。分析主题的数据以“事实表-维表”的星型模式组织。

3 联机分析处理(OLAP)

联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的,他同时提出了关于OLAP的12条准则。OLAP的提出引起了很大的反响,OLAP作为一类产品同联机事务处理 (OLTP) 明显区分开来。

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

4 数据挖掘工具

数据仓库体系结构中存在三个关键问题,即数据仓库的目标数据库选择、数据抽取和转换工具及前端数据访问和分析工具。

4.1 数据仓库的组成部分

数据仓库技术从本质上讲,是一种信息集成技术,它从多个信息源中获取原始数据,经过加工处理后,存储在数据仓库的内部数据库中。通过向它提供访问工具,为数据仓库的用户提供统一、协调和集成的信息环境,支持企业全局的决策过程和对企业经营管理的深入综合分析。为了达到这样的目标,一个数据仓库一般来说包含以下7个主要组成部分:

1)数据源:为数据仓库提供源数据,如各种生产系统数据库、OLTP系统的操作性数据,外部数据源等都可以作为数据仓库的数据源。

2)数据抽取、转换和装载工具:主要功能是从数据源中抽取数据后检验和整理数据,并根据数据仓库的设计要求重新组织和加工数据,装载到数据仓库的目标数据库中。

3)数据建模工具:用于为数据仓库的原数据库和目标数据库建立信息模型。

4)核心仓储:用于存储数据模型和原数据,其中元数据描述数据仓库中元数据和目标数据本身的信息,定义从原数据到目标数据的转换过程。

5)数据仓库的目标数据库:存储经检验、整理、加工和重新组织后的数据。

6)前端数据访问和分析工具:供业务人员分析和决策人员访问目标数据库中的数据,并进一步深入分析使用。

7)数据仓库管理工具:为数据仓库的运行提供管理手段,包括安全管理和存储管理等

BI商业智能1 BI2 数据仓库3 联机分析处理(OLAP)4 数据挖掘工具

图1数据仓库体系结构

可以看到,在一个数据仓库中,源数据来源与已有的生产系统,是操作型数据。提供源数据的数据源可以是各种数据库管理系统,或各种格式的数据文件或外部数据源。由于数据仓库是一种信息集成手段,因此在实际工程中,面对的数据源可能千差万别。只要能够为数据仓库所支持的决策和分析过程提供所需的信息,就可能成为数据仓库的数据源。因此,数据仓库需要有相应的工具从数据源中抽取数据。

数据进入数据仓库之前必须经过检验,以排除数据中可能隐藏的错误。为了满足决策支持和深入分析的需要,数据要经过特别整理、加工和重新组织,然后装载到一个或多个数据仓库的数据库中。所有这些工作都是数据抽取和转换工具完成的,数据仓库中装载数据的数据库即为数据仓库中的目标数据库。为了描述数据检验、整理和加工的需求与相应过程及步骤,必须有数据建模工具(Modeling Tools)。

随着企业业务的发展,数据仓库管理人员可以通过使用数据建模工具,根据企业决策和综合分析的需要,对数据的检验、整理、加工和重新组织的过程进行调整和优化,而有关描述则以数据模型和元数据的形式存放在核心仓储中。在数据仓库的日常运行过程中,需要不断监控数据仓库的状态,包括系统资源的使用情况、用户操作的合法性和数据的安全性等多个方面。为此,在数据仓库系统中专门有数据仓库管理工具负责向数据仓库管理员提供有关的管理功能。为了使数据仓库用户能有效的使用数据仓库中的信息,以实现深层次的综合分析和决策。数据仓库系统要为用户提供一整套数据访问和分析工具,这些工具不但要提供一般的数据访问功能,如查询、汇总和统计等,还要提供对数据的深入分析功能,如数据的比较、趋势分析和模式识别等。而数据仓库的数据访问和分析要在一定程度上面向企业的业务需求,所提供的数据是在业务上有意义的信息,而不只是通用的数据查询和操作功能

4.2 数据仓库体系结构中的关键问题

数据仓库系统中有3个关键环节,即源数据的抽取和转换、在目标数据库中存储转换后的数据和为用户提供对目标数据库的透明访问。与此相对应,在数据仓库的设计过程中必须注意3个关键的问题,即选择数据仓库的目标数据库、数据抽取和转换工具及前端数据访问和分析工具。

4.2.1 数据仓库的目标数据库 

作为数据仓库的目标数据库,既可以选用传统的关系型数据库管理系统,也可以选用专用的多维数据库管理系统。对于许多企业来说,并不要求一定选用专用多维OLAP数据库,以支持数据仓库的功能。在许多情况下,可以使用传统的关系型数据库管理系统和企业熟悉的通用数据访问工具来建立数据仓库的目标数据库。目前在市场上可以获得的各个主要的关系数据库管理系统都提供单向的数据复制功能,并能迅速响应大量用户的联机并发查询访问。它们通过使用标准的SQL接口,与标准的数据库查询工具和客户机/服务器工具实现透明的接口,而且多家主要厂商的关系型数据库管理系统的最新产品还能提供复杂查询和分析功能,能作为兼顾操作型数据处理环境和数据仓库应用的数据库引擎。

在某些规模非常大的决策支持应用场合下,专用的多维数据库具有一定的优势。例如,如果要分析一个大型的多维数据库,以发现市场营销的趋势。在这样应用环境下,专用多维数据库由于对多维OLAP的特殊支持,以及在数据库内部紧密集成了如数据复制等支持数据仓库的特殊功能,因而具有一定的优势。一般认为,传统的关系型数据库管理系统在设计时优化的重点是考虑为OLTP应用提供高性能的支持,因而在决策支持应用环境中往往差强人意,而在专用的多维数据库管理系统中,往往针对为联机查询提供快速响应的需求,特别设计了跨平台的查询引擎,采用入数据分片、存储过程、对循环查询的支持和针对高性能数据仓库操作扩展SQL等技术,因此能在决策支持环境下获得较高的性能。现在,市场上已经出现了支持多维体系结构的OLAP专用数据仓库工具。

选择数据仓库的目标数据库是数据仓库工程的关键决策之一,它将影响数据仓库体系结构的诸多方面,因此,需要认真慎重考虑。传统的关系型数据库管理系统和专用的多维数据库管理系统各有利弊。美国著名的数据仓库工程专家Pieter R. Mimno先生认为,除非业务环境的确要求采用专用的数据库才能解决业务需求,或者需要采用专用的数据库管理系统才能达到业务所需要的性能指标,否则,从节省成本和降低复杂性的角度出发,一般情况下,应优先考虑采用传统的关系型数据库管理系统,这个中肯的意见值得我们在选择数据仓库的数据库时认真考虑。

4.2.2 数据抽取和转换工具

选定数据仓库的数据库后,如何选用合适的数据抽取和转换工具从数据源中抽取所需要的数据,根据业务需求,对数据进行转换,包括检验、整理、加工和重新组织的功能步骤后,存放到目标数据库中,是数据仓库体系结构设计时要考虑的又一个关键问题。

传统的关系型数据库管理系统支持多种数据复制模型,可以提供整个企业范围内复杂的数据库复制功能,从而满足正常情况下数据仓库对数据抽取功能的要求。这种系统支持一般的数据抽取、数据复制和一定程度上的数据重新组织、聚簇和汇总,但是如果数据源之间的数据存在逻辑上的不一致,需要额外的重新组织和转换加工,那么其功能显得不足。举例而言,传统的关系型数据库管理系统不能自动完成从主机的OLTP系统中抽取源数据,解决数据间的不一致造成的冲突,对数据进行重新组织后转换到目标数据库中的全部过程。因此,只有当源数据完全正确可靠、组织合理且没有任何不一致时,才能直接采用传统的关系型数据库管理系统中的数据复制功能完成数据抽取工作。然而在工程实践中,源数据组织不合理,包含冗余数据,数据在逻辑上冲突和数据定义冲突等问题十分常见,因此,有必要考虑采用特别的数据抽取和转换工具。

专门的数据抽取转换工具提供收集、转换和修订操作型数据的功能,并自动把转换后的数据装载到数据仓库指定的数据库中。目前,市场上已经有一些这样的工具。多个主要的传统关系型数据库管理系统厂商已经开发了其数据库产品与专门的数据抽取和转换工具之间的集成接口,以扩展其数据库产品的功能。因此,采用专用的数据抽取和转换工具十分方便。

一般说来,数据抽取和转换工具主要提供两个方面的功能。首先,这些工具都提供流行的基于视窗的图形用户接口,使得用户(数据仓库管理员)能方便的描述数据抽取和转换的需求。数据转换包括对数据进行匹配、归并、排序、创建新的数据域、选择数据子集、聚簇数据、转换操作型数据、在一个或多个数据库之间解决数据的语法、定义或格式的冲突等操作,其次,这些工具能自动创建运行在数据源所在平台上的程序,自动至此那个数据抽取、检验和重新组织等功能。用户可以为抽取程序加上转换逻辑。这些工具根据用户的输入建立有关元数据,其中描述了源数据和目标数据的格式,以及如何把源数据转换成目标数据。

综上所述,传统的关系型数据库管理系统也许不能全面满足对数据抽取和转换的功能需要,数据仓库体系结构设计人员可以根据具体的需要选择合适的数据抽取和转换工具,与数据库管理系统相结合,全面实施数据抽取和转换。

4.2.3 前端数据访问和分析工具

从数据源中抽取出相应的数据,经过检验、整理、加工和重新组织后存放到数据仓库的数据库中,下一步就是要考虑如何使用户(业务决策人员、各级管理人员和业务分析人员)能够方便灵活的使用数据仓库中存储的数据,达到数据仓库工程的预定目标。在数据仓库中,这是通过为用户提供一套前端数据访问和分析工具来实现的。目前市场上能获得的数据访问和分析工具种类繁多,主要有关系型查询工具、关系型数据的多维视图工具、DSS/EIS软件包和客户机/服务器工具等4大类。

    1)关系型查询工具

    通用的关系型查询工具提供高度友好的用户接口,可以访问关系型数据。借助这样的工具,一般用户无需技术人员的协助,即可表述查询要求。查询结果能根据用户的需要,形成报表和示意图,这样的工具都支持标准的用户接口,并同时访问多个数据库服务器和数据库管理系统。

2)关系型数据的多维视图工具 

   这类工具是为采用传统的关系型数据库管理系统作为数据仓库目标数据库的用户而设计的。通过使用这样的工具,虽然数据仓库的数据库是关系型的,但用户可以以多维的方式分析关系型数据。其最大的优点是不必采用专用的多维目标数据库管理系统即可达到多维分析的目的。这类工具具有多种具体的实现手段,一些工具并不在客户机一端形成局部数据库,而只是维护多维视图,另一些工具则从数据仓库中抽取所需的关系型数据子集,在客户机上通过一种称之为数据立方的多维结构方式加以局部存储,还有一些工具则更为先进,为了在关系型数据库上进行多维分析,实现了一个3层的软硬件结构。

   3)DSS/EIS软件包 

   DSS/EIS软件包是更为复杂的工具,用于复杂的多为数据分析,用其可直接提供面向业务的信息分析,如财务报表分析和合并财务报表分析、业务品种利润分析、企业负债分析和管理报表等。 

   4)客户机/服务器工具 

   对于那些特定的不能直接采用现有工具和DSS/EIS软件包的业务需求,可以考虑使用通用的客户机/服务器工具开发前端的应用。通过使用这种工具,可以开发特定的功能,满足用户对图形界面、数据操作及数据分析报表等多方面的特殊需求。这些工具都能提供对数据的透明访问,简化对数据库的访问操作,支持多媒体应用,能够迅速构建前端决策支持应用系统,开发成本较低。使用这些工具开发的应用可以通过DDE和OLE接口与第三方产品实现透明连接,因此在开发前端工具的过程中,可以根据需要把很多现成产品连接到其中,如字处理系统和统计软件包等,这对于提供开发效率和系统质量是颇有裨益的。由于通用客户机/服务器工具应用广泛,用户众多,因此在开发客户化的数据访问和分析工具时,应积极考虑使用这样的工具。

面对众多的前端数据访问和分析工具,应该根据功能需求选择,要着眼于工具是否易于使用及功能是否可靠。一般来说,简单的关系型查询工具是和业务分析人员来透明的访问数据,而关系型数据的多维视图则能够提供多维分析的能力,业务专家可以使用DSS/EIS工具分析大量的历史数据,发现业务发展规律,预测未来发展趋势,当要实现特殊的功能时,可以考虑使用通用的客户机/服务器工具。

继续阅读