您的位置:首页 > 其它

《商务智能 管理视角》——(二)数据仓库(1)

2013-05-19 10:51 253 查看
1.数据仓库的定义和概念

实时数据仓库(Real-timeData Warehousing,RDW)、决策支持系统(Decision SupportSystem,DSS)以及商务智能技术综合运用是一种重要的梳理业务流程的手段。在开篇场景中,我们介绍了实时数据仓库支持决策的一个真实情景,即通过分析来自不同渠道的海量数据来提供支持关键流程的快速解决方案。借助一种易理解的形式存储于数据仓库中的真实数据,扩展了DirecTV的革新业务流程。通过实时数据仓库,DirecTV可以浏览公司的业务实时状态并快速识别问题所在,而这也正是分析解决这些问题的首要步骤。除此之外,客户可以获取他们的实时订阅、电视服务以及其他账户的信息,也就是说,系统同时还具备了显著的竞争优势。
决策的制定需要关于当前运作、趋势和变化的明确、可靠的信息,而数据往往是分散于不同的操作系统下,所以管理者常常是至多基于部分信息来做出所谓的决策。数据仓库通过访问、整合、组织关键业务数据使其一致、可靠、及时和可用,排除了障碍,使得数据实现了随时随地地取用。

简单来说,数据仓库(Data Warehouse,DW)就是一个支持决策制定的数据池,它同时还是一个关乎整个组织的所有管理者潜在兴趣的当前数据和历史数据的存储库。数据通常以一种易于分析业务动态的形式来构建,例如在线分析处理、数据挖掘、查询、报表和其他决策支持应用。数据仓库通常是一个面向主题的、集成的、非易失的且随时间而变的数据集合,用来支持管理者的决策。



2.数据仓库的特点

了解数据仓库的一个基本方法就是了解它的基本特点(Inmon,2005):
【面向主题的】 面向主题提供了一种更易理解的数据组织方式,数据以某个具体的主题来组织的,例如销售、生产或者顾客,每个主题下只包括决策支持的相关信息。面向主题使得用户可以决定他们的业务展现形式,以及为什么如此展现。数据仓库与操作性的数据库有很大的不同,后者大多是以产品为导向的,并且常常由于业务的处理而需要更新数据库。

【集成的】 集成同面向主题密切相关。数据仓库需要将多渠道的数据以一致的形式来存储,并解决由于集成而出现的诸如命名冲突和数据类型差异性的问题。数据仓库是完全集成的。

【随时间而变的(时间序列)】 数据仓库需要定期维护历史数据。除非是在实时数据仓库中,否则这些数据并不要求提供实时状态。它们检测趋势、偏差以及预报和比较的长期关系,从而支持决策。每个数据仓库都有时态性,时间是所有数据仓库都必须支持的一个重要维度。在数据仓库中,数据分析要包括不同时间点的分析,如日、周以及月等。

【非易失性】 数据一旦录入数据仓库后,用户就不能对其进行更改和更新。过时的数据将会被丢弃,而变化后的则作为新数据被记录下来。

上述的这些特点极大地提高了数据仓库的数据存取能力,除此之外,数据仓库还有一些别的特点:

【基于网络】 数据仓库通常被设计为基于网络应用提供高效的运算环境。

【关系的/多维的】 数据仓库常常是基于关系架构或是多维架构,最近的一个多维架构的调查是由Romero和Abellò于2009年发现的。

【客户端/服务器】 数据仓库运用客户端/服务器架构易于终端用户的访问。

【实时】 最新的数据仓库已经实现了提供实时或者动态的数据访问和分析能力(Basu2003,Bonde and Kuckuk 2004)。

【元数据】 数据仓库通过元数据,即数据的数据,来描述数据的组织方式以及如何有效地使用它们。

尽管数据仓库是数据的集合,但从字面上来说,数据仓库就是一个涉及全过程的东西(Watson,2002)。数据仓库是一门将它的应用结果用于支持决策,并允许随时查询业务信息,同时还具备对于业务的洞察力的学科。数据仓库有3种主要类型,分别是数据集市、业务数据存储(Operational Data Store,ODS)和企业数据仓库(Enterprise
Data Warehouse,EDW)。




3.数据集市

尽管数据仓库是将数据库与整个企业结合起来,但数据集市相对来说通常较小,并且关注于某一个特别的主题或部门。数据集市是数据仓库的一个子集,通常包括一个单独的主题域,如销售市场、企业运营等。数据集市可以是独立的也可以是非独立的(归属于某一数据仓库)。非独立的数据集市是由数据仓库直接生成的一个子集,它具备稳定的数据模型和提供高效数据的优势。在数据仓库的基础上,非独立的数据集市可以作为一个企业范围内的数据模型而存在,它可以确保数据仓库终端使用者所浏览数据的一致性。数据仓库的高成本限制了它在大公司的应用前景,作为替代,更多的公司开始倾向于选择独立的数据集市,这是一种低成本、低版本的数据仓库。独立的数据集市可以被看做是支持某项业务决策或者某个部门的小型数据仓库,但是它的数据源并不是企业数据仓库。

4.业务数据存储

业务数据存储提供了一种较新的客户信息存储模式。这类数据库通常作为某一个数据仓库中的临时决策域。不同于数据仓库的静态存储,ODS中的内容在整个业务运营过程中是随时更新的。ODS常常被用于涉及核心应用的短期决策,个别情况下还会与企业数据仓库结合,用于中期或长期决策。举例来说,数据仓库是长期记忆因为它存储的是永久信息,而ODS则是短期记忆,因为它只存储最近的信息。ODS将多个系统中的信息集成起来,提供近实时性的、可变集成的当前数据。而这种数据提取、转换和加载过程和数据仓库的做法是一样的。当操作性数据需要多维化分析时,操作集市(open
marts)就会形成,而这些操作性数据则是来源于ODS。

5.企业数据仓库

企业数据仓库是支持整个企业决策的大型数据仓库,这也正是我们之前提到的DirectTV公司所建立的数据仓库。大范围特性使得它将不同来源的数据标准化,支持商务智能和决策支持的有效运作。EDW通常被用于为多种决策支持系统提供数据,包括客户关系管理、供应链管理、业务绩效管理、业务活动监控(Business Activity Monitoring,BAM)、产品生命周期管理(ProductLifecycle
Management,PLM)、收入管理系统以及知识管理系统(KnowledgeManagement System,KMS)。

6.元数据

元数据(metadata)是数据的数据。元数据描述了数据的结构和部分意义,因此有助于数据的有效或无效使用。Mehra(2005)文献指出,极少的组织真正理解元数据,而极少理解元数据的组织知道如何设计并执行元数据策略。就用法而言,元数据通常被定义为技术元数据或者业务元数据。模式是另外一种浏览元数据的方式,通过模式浏览,可以知道语法元数据(也就是描述数据语法的数据)和结构元数据(也就是描述数据结构的数据)以及语义元数据(也就是描述某个特定域的数据含义的数据)的不同。
接下来,我们将解释传统元数据模式以及如何通过一个全面的元数据集成方法实现有效的元数据策略。这些方法包括本体论和元数据注册,企业信息集成(Enterprise Information Integration,EII),数据提取、转换和加载以及面向服务的架构(Service-Oriented Architecture,SOA)。有效性、可扩展性、重用性、互用性、效率和性能、进化、权限、灵活性、隔离、用户交互、版本、多样性以及低维护成本,这些都是建立一个成功的元数据驱动的企业的成功要素。

Kassam(2002)文献提出,业务元数据包括能提高我们对传统数据(也就是结构数据)理解力的信息。元数据的首要目的是描述数据的内容特征,也即是说,它要提供知识建立所需要的丰富信息。尽管业务元数据的效率较差,但却比结构数据更具潜能。元数据的内容对于所有的用户来说不需是相同的。在某些情况下,元数据有助于数据和信息转换为知识。Bell(2001)的文献认为元数据为元商业架构奠定了基础,Tannenbaum(2002)的文献描述了如何识别元数据的需求,Vaduva
and Vetterli(2001)文献概要介绍了数据仓库中的元数据管理,Zhao(2005)文献描述了元数据管理成熟度的5个阶段,分别是随机状态、发现、管理、优化和自动化。这5个级别有助于组织理解如何使用以及最好地使用元数据。

元数据的设计、建立和使用——即描述和总结数据的数据——以及元数据标准可能涉及的伦理问题。这些问题主要产生于元数据中信息的收集和归属,包括信息的隐私性,以及在设计、收集和分离期中形成的知识产权。



7.数据仓库架构

数据仓库的基本信息系统架构有很多种。大体来说,这些架构通常是客户/服务器架构或者多层架构,其中最多见的是二层和三层架构,如图所示,但有时也会出现单层架构。多层架构可以满足大规模、高性能要求的信息系统的需求,例如数据仓库。为了了解数据仓库中多层架构的具体应用,Hoffer et al.(2007)区分这些架构,将数据仓库划分为3个部分:
1.数据仓库本身,包括数据和相关联的软件。

2.数据采集(后端)软件,用于从遗留系统和外部数据源中提取数据,合并和汇总后,再将它们加载到数据仓库中。

3.客户端(前端)软件,如决策支持系统、商务智能系统、业务分析引擎,允许用户对数据仓库进行数据存取和数据分析。

在三层架构中,数据和用于数据采集的软件是一层(也就是数据库服务器),数据仓库是另一层,第三层包括决策支持系统、商务智能系统、业务分析引擎等(也就是应用服务器)以及客户端。数据仓库中的数据被处理2次后,存储于附加的多维数据库中,用于简单的多维分析和数据显示,或者复制到数据集市中。三层架构的优势在于其功能的分离,它消除了资源的限制,使得数据集市的建立变得更为简单。

如图所示,在二层架构中,决策支持系统引擎与数据仓库运行于同一硬件平台上,这比三层架构更经济。但是,当大型数据仓库需要数据密集型应用进行决策支持时,二层架构就会出现性能问题



在不考虑组织所处环境和某些特定需求的情况下,大多数人明智地倾向于绝对的方法,即认为某种做法一定要比另一种做法更好。许多咨询顾问和软件供应商只关注系统架构的某一部分,限制了它们的能力和动机,使得它们无法按照组织需要正确地选择架构,这使得架构的选择变得更为复杂化。这些方面早已被提出和研究过。2005年Ball为组织中商务智能的实施提供了决策标准,明确了商务智能实施中多维数据集市的作用,但对于架构的具体层次却未能做出定论。他的标准围绕着数据访问的空间和速度需求的预测问题。

数据仓库和因特网是正确管理企业数据的两大关键技术,它们的结合就是基于WEB的数据仓库。如图2-4所示,基于Web的数据仓库的架构是一种包括PC客户端、Web服务器和应用服务器的三层架构。在客户端,在用户熟悉的图形用户界面(Graphical
User Interface,GUI)中,需要因特网连接和最好支持Java应用的网络浏览器,而因特网/内部网/外部网则是客户端和服务器的通信媒介。在服务器端,在数据仓库和应用服务器的支持下,Web服务器对客户端和服务器间的数据流入和流出进行管理。基于Web的数据仓库在数据易于访问、平台独立性和低成本方面的优势极为显著。



(Dragoon,2003)文献指出,美国先锋集团(Vanguard Group)采用基于Web的、三层架构作为企业架构进行数据的集成,向顾客和内部用户提供相同数据。(Anthes,2003)文献指出,希尔顿酒店则借助网络化的企业系统将其所有独立的客户端/服务器(C/S)系统集成为一个三层架构的数据仓库。这一举动为希尔顿酒店带来了380万美元的投资(不包括劳动力),波及到1500名用户。公司的处理效率(速度)提高了6倍。当数据仓库配置完后,预计每年会为希尔顿酒店节约450万美元到500万美元。此外,使用DELL的聚类技术,也就是并行信息处理技术的辅助下,数据仓库的扩展性以及处理速度都得到了提高。
数据仓库的Web架构与其他数据仓库架构的结构是相似的。在数据仓库设计过程中,需要确定Web数据仓库到底是安装在交易服务器上还是安装在独立的服务器上。在基于Web应用的实际过程中,页面的载入速度极为重要,因此就要仔细计算服务器的承载能力。

当决定使用何种架构时,还需考虑以下几点:
·使用何种数据库管理系统(Database ManagementSystem,DBMS)?
大多数的数据仓库是基于关系数据库管理系统(Relational DatabaseManagement System,RDBMS)建立的。Oracle(oracle.com)、SQL Server(microsoft.com/sql/)和IBM的DB2(306.ibm.com/software/data/db2)都是著名的关系型数据库。这些产品都支持C/S架构和Web架构。
·是否使用并行处理和分区?
并行处理使得多CPU可同时处理数据仓库查询请求,并提高数据仓库的可扩展性。数据仓库设计过程中要考虑到数据分区和划分标准的问题,也就是将数据库中的表拆分为更小的表,以提高数据访问的效率。这对于典型的大数据量存储的数据仓库来说极为重要。2009年,Furtado对数据仓库的并行和分区进行了最新研究,而Teradata就数据仓库的并行和处理进行了新奇的尝试。
·是否使用数据迁移工具进行数据加载?
数据从现行系统转移到数据仓库中的过程极为繁琐和耗费人力。依赖于数据资产的多样性和存储位置,数据迁移可能是个简单的过程,或者相反,需要1个月时间。迁移工具的使用与否要由现存数据资产的全面评估结果决定,同时还要考虑到这些商业工具的具体性能。
·使用何种工具进行数据检索和数据分析?
定期使用特定工具对数据进行定位、访问、分析、提取和转换,并最终加载到数据仓库中通常是重要的。但需明确数据迁移工具究竟是自行开发还是从第三方购买,或者直接使用数据仓库系统中的自带工具。而一些过于复杂和实时的迁移需求则需要使用到特定的第三方ETL工具。




8.可选的数据仓库架构

文献(Golfarelli and Rizzi,2009)认为,从设计角度来看,数据仓库架构的最高级别可以分为企业数据仓库设计和数据集市设计两种。图2-5介绍了除了单纯的企业数据仓库和单纯的数据集市之外,一些介于或超越传统架构的基本数据仓库架构。其中最值得注意的是集中星形拓扑架构(Hub-and-Spoke)和联合架构。这5种架构分别是在由Ariyachandra
and Watson(2005,2006a,and 2006b)中提出的。而在此之前,Sinha(2005)已经研究出了15种不同的数据仓库开发方法。这些方法分别来自核心技术供应商、基础架构供应商和信息建模公司。




【a.独立数据集市架构】 这一架构被认为是最简单和最低成本的数据仓库架构。数据集市独立运作,为组织的各个单元提供服务。由于其独立性,因此会存在不一致数据定义及不同的维度和度量值,而这使得跨数据集市的数据访问很难实现,原因是数据的唯一性和真实性无法保证。
【b.数据集市总线架构】 数据集市总线架构是独立数据集市的可行替代品,适合于多个数据集市被中间件连接的情况。由于在各个单独的数据集市之间数据是相互关联的,因此至少在元数据的级别上,更便于维护整个企业数据的一致性。虽然这种架构允许数据集市间的复杂数据查询,但是其分析结果的展示却并不令人满意。

【c.星形拓扑架构】 这可能是目前最流行的数据仓库架构。它关注于建立一个包括集中数据仓库和一些服务于专门组织单元的从属数据集市的可扩展、可维护架构,通常用于一个主题接一个主题的迭代式开发。这种架构考虑到了用户接口和报表的简易型和定制化。缺点是缺乏企业全局观,容易形成数据冗余和数据延迟。

【d.集中数据仓库架构】 集中数据仓库架构和星形拓扑架构很相似,不同之处在于,它没有非独立的数据集市,却用一个巨型企业数据仓库服务于所有的组织机构。集中的方法使得用户不再受限于数据集市,可以对数据仓库中的所有数据进行访问。这缩减了技术团队所需转换和更改的数据量,使得数据的管理和监控简单化。如果这种架构设计和实施正确的话,那么只要是在企业内部,无论是谁、无论什么时间、什么地点、都可对企业进行及时和全面的了解。Teradata公司主张集中数据仓库架构,建议使用没有任何数据集市的数据仓库,如图2-6所示。

【e.联合数据仓库架构】 联合数据仓库架构是对自然力量的妥协,是开发一个完美系统的最优方法。它从不同渠道集成分析资源来满足业务的变化。从本质上来说,联合方法需要不同系统的集成。在联合架构中,现行的决策支持架构将被取消,通过需要的数据源访问数据。联合方法需要中间件供应商提供分布查询和连接功能。用户通过使用基于可扩展标记语言(Extensible Markup Lauguage,XML)工具,如数据仓库、数据集市、网站、文档和操作系统等,可以对分布的数据源进行全球监控,当用户选取查询目标并按下查询按钮时,这些工具会对分布的数据源进行自动查询,并将查询结果关联起来,最终展现给用户。大多数专家(Eckerson,2005)认为在性能和数据质量方面,联合方法对数据仓库是一种补充而不是替代。






Ariyachandra and Watson(2005)提出了10种影响架构选择的潜在因素,它们分别是:

1.组织单元间的信息独立性

2.上级管理对信息的需要

3.对数据仓库的紧急需要

4.终端用户任务的性质

5.资源限制

6.数据仓库实施前的战略考虑

7.与现行系统的兼容性

8.内部员工的理解能力

9.技术性问题

10.社会因素和政治因素

这些因素同信息系统项目以及决策支持系统和商务智能项目实施的成功因素相似。通常满足上层管理的信息需求以及设计开发过程中的社会因素或者政治因素这类行为问题,要比技术支持更为重要,尽管我们说技术也是重要的。虽然,每种数据仓库架构都可以实现最有效的应用,并能为组织带来最大的效益,但数据集市却是在实践中效果最差的。有关这方面更详细的信息可以参考Ariyachandra and Watson(2006a)的相关文献。

9.哪种架构是最好的
自从数据仓库成为现代企业必不可少的一个部分后,哪种数据仓库架构是最好的就摆上了议题。数据仓库领域的两大学者对其有各自的看法,Bill Inomn认为星形拓扑架构最好,而Ralph Kimball则主张一致维度的数据集市总线架构更为优秀。其他的架构也可能是最优的,但是这两种观点是完全不同的,每种都有强烈的支持者。为了证实究竟哪种架构是最好的,Ariyachandra
and Watson(2006b)进行了一项基于经验的研究。他们通过对参与数据仓库实施过程的人员,借助网络调查的方式来收集数据。网络调查的具体内容包括对反馈者的相关信息、反馈者的公司、反馈者的公司所使用的数据仓库以及数据仓库架构的成功与否。
Ariyachandra和Watson最后总计收回了454份调查问卷。调查涵盖了从年收入小于1000万美元的小型企业到年收入超过100亿美元的大型公司。调查中有60%的公司位于美国且从事不同的行业,其中金融服务产业的反馈最多,达到了15%。调查结果显示,最优秀的数据仓库架构是星形拓扑架构,支持率达到了39%;接下来是总线架构,支持率为26%;以及集中架构,支持率为17%;独立数据集市,支持率为12%;最后是联合架构,支持率为4%。主流数据仓库平台的普及率分别是ORACLE为41%、Microsoft为19%以及IBM为18%。每种数据架构的平均毛利润也从独立数据集市的37亿美元到联合架构的60亿美元不等。



Ariyachandra和Watson使用4种指标来衡量数据仓库架构的成功与否:(1)信息质量;(2)系统质量;(3)对个人的影响;(4)对组织的影响。每个问题满分为7分,分数越高,架构的成功性也越高。上图表示了每种架构4种指标的平均得分。
Ariyachandra和Watson的研究表明,独立数据集市在所有的指标中都得分最低,这一结论印证了独立数据集市实践性较差的论点。接下来最低的是联合架构。当公司由于收购和合并存在不同决策支持平台时,至少短期内公司会选取联合数据仓库架构,而这一结论也说明了联合架构并不是一项最优的长期选择。有趣的是,总线架构、集中星形拓扑架构和集中架构的得分却没有太大的差距,因此,在这种评价指标的简单比较下,我们无法证明某种架构比某种架构更为优越。
Ariyachandra和Watson同时也收集了一些关于数据仓库作用域,包括从最小的子单元到全企业范围,以及数据仓库的大小,也就是数据存储量的相关信息。他们发现大多数企业级实施中,以及大型数据仓库会选取星形拓扑架构。此外,他们也收集了不同架构实施所需的成本和时间信息。其中,星形拓扑架构成本最高,且费时最长。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: