Nancy Padrick 数据架构师, 2004 年 2 月 在 2002 年 8 月发表的这篇文章的第 1 部分中,我们提供了简介和定义。第 2 部分将继续介绍构建数据集市的有关信息。 在 2002 年 8 月发表的这篇文章的 第 1 部分中,我们提供了数据集市组件的简介和定义。第 2 部分将继续介绍构建数据集市的有关信息。 填充数据库 一旦定义了商业目标、数据源和数据模型,就需要开发一个过程来提取源系统的数据,集成和净化来自于多个不同系统的数据,然后将之载入物理数据库中。有一个称作提取转换和加载(Extract Transformation and Load)或 ETL 工具的新型开发软件可完成该工作。 ETL 软件专门完成数据集市中所需的数据提取、转换和加载。与用更为传统的编程语言(如 COBOL 或 C++)进行的“手工编码”相比,ETL 软件有两个主要的优点。ETL 提高了生产率并且是可移植的。生产率是通过在更高层次进行开发而提高的。用图形界面进行开发可以从“指向和点击”菜单中选择命令、函数和字段名。可以选择许多“预先编程的”函数,其中很多都是专门为创建维数模型而准备的。ETL 使用可视界面而非手工输入来生成 SQL。这些特性都使得开发更快,错误更少且更容易维护。 ETL 的另一个优点就是其可移植性。将 ETL 逻辑移到不同的服务器上或使用不同的 RDBMS 都只需要进行很少的修改。因此,如果需要迁移到新的平台,ETL 软件将进行配置修改和测试,但是如果 ETL 软件支持新的平台或 RDBMS,就只需进行极少的编码修改。 数据管理通常都是项目中最难的工作。如果数据集市项目最先使用 ETL 软件,则在学习过程、开发新标准以及设置新的编码环境方面需要额外的时间。开发一旦完成,就要维护大量新的、复杂的代码,而这通常需要一个兼具数据集市和 ETL 软件知识的技术团队。 访问信息 一般用户是通过数据访问工具来了解数据集市的,而这些工具将支持信息的访问和分析。数据集市用户可分为三组:普通(conventional)用户、专门(ad hoc)用户和高级(power)用户(图 7)。 - 普通用户不加修改地运行预先定义的报表。因为他们不懂技术,所以需要简单的用户界面,其中带有满足他们需求的预定义报表。
- 专门用户易于将商业问题转换为查询。他们具有一些技术并且理解数据。因此他们需要带有大量功能的直观的数据访问工具。
- 高级用户很懂技术且理解 SQL。他们用能最好地满足他们需求的软件(例如 MS Access、Excel 或 SAS)从各种来源采集数据,并且联合和分析数据。为专门用户选择的数据访问工具或许也能满足高级用户,但是他们还可能需要强调分析功能的附加软件。
当选择数据访问工具时,要考虑各种特性。 其中应该考虑必需的和“较好的”的功能以及软件评价功能。理想的是能有一些用户参与数据访问工具的评价,因为他们接受决策才是最重要的。还有一些可考虑的特性是:工具是基于 Web 的还是基于客户端的,报表是否可以预先安排,可用哪些分析功能,用户界面是否友好,销售商占有多少市场份额等等。 数据访问工具的功能丰富且带有许多附加的组件。将为处理实时的、批处理的或基于 Web 的请求配置多个服务器,而该软件就可驻留在这些服务器上。因为该软件与服务器、操作系统和数据库紧密集成,所以安装和监控数据访问工具的人将需要具有非常好的基础知识。相比之下,开发用户界面和任何预定义报表就需要业务知识和较好的交际能力了。 元数据 元数据(Metadata)通常被定义为关于数据的数据,是从数据仓库活动中产生的另一功能。在数据集市中,用户将在成百上千个数据元素中进行选择,而这些数据元素是来自于多个系统的,用户还将需要很好地理解这些数据元素以回答所提出的商业问题。元数据将通过提供数据定义、转换逻辑、有效值列表、业务逻辑等来支持这一信息需求。元数据(Metadata)软件的主要组件包括存储所有信息的仓库、用户界面、与其他软件的接口以及电子和纸张发布组件。 - 仓库通常用关系数据库技术捕获元数据。当然,所有仓库捕获的是都是基本的信息:长度、定义、数据类型等等。其中也一些工具可以捕获源和目标映射、元素间的关系以及更多内容。
- 用户界面允许元数据管理员输入和维护元数据,虽然最好是通过数据上传或与其他软件的接口将大部分信息输入元数据工具。而元数据的维护可能是极其复杂的,因此一个直观且功能强大的用户界面是很重要的。
- 软件接口从任何可以接触或定义数据的软件中接收并且向其发送关于数据的信息,比如数据建模工具、业务建模工具、RDBMS、ETL、修改管理工具以及测试支持工具。例如,元数据软件可以向 ETL 工具发送数据定义并且接收 ETL 对每个字段所应用的映射和派生逻辑,以及 ETL 过程运行的最后时间、运行时间和所处理的记录数目。大多数元数据工具都在软件接口这方面进行发展。
- 发布使商业和技术用户群体获得元数据。通常是通过 Internet 浏览器和在硬复制报表(例如映射规范或数据字典)中查看已发布的元数据。仓库中捕获的所有信息未必都是可发布的,并且不同的元数据工具提供的用户界面和报表设计的数量也不相同。
如果数据集市项目预先就考虑了元数据,那么在有需要时就可以使用元数据工具。而元数据的报表就可以当作说明书使用。然而,如果事后才考虑元数据,那么当项目完成时,则要将说明书与其他信息一起输入到元数据(Metadata)软件中。构建块 3:基础设施 基础设施用于维护数据集市的信息并且使之对用户可用。基础设施包括硬件、软件和技术架构(图 8)。硬件和软件在数据集市的整个预算中占有很大的比例,特别是如果该组织还未曾在商业智能的基础设施方面做过投入。
硬件 所需的硬件是基于所需的功能而不同的。数据集市一般需要服务器、磁盘存储设备、磁带备份设备以及用于连接不同组件的网络器件。这些可能包括: - 存储区域网络(SAN)-过去,磁盘是安装在服务器内部,如果是外部的话,则通过各种“筒仓(silo)”连接到唯一一台服务器。而与外部磁盘阵列的连接是通过不同形式的 SCSI 以及后来的光纤网络来完成的。最近,SAN 的概念已经越来越普遍地用于支持应用了。SAN 是一个互连的磁盘阵列,可通过高速光纤连接一个或更多存储数据的服务器。SAN 有一些优点:
- 磁盘管理-位于一个地方的磁盘空间比分布在多个不同外部阵列的更容易管理。
- 磁盘空间的共享-服务器之间可以随意地共享磁盘空间。
- 空间需求的更改-当一个服务器的空间需求减少时,其他服务器就可使用那些空间。
- 多个销售商-如果希望,SAN 的销售商可以不同于服务器的销售商。
- ETL 服务器-编辑、转换、净化、有效性验证以及为数据库准备数据所需要进行的其他处理都在 ETL 服务器上进行。该服务器将访问分级区域的数据,理想情况是位于 SAN 上,以便可以在多个通道中进行处理,并且使 ETL 服务器和数据库服务器都可访问这些数据。
- 数据库服务器-当用户通过数据访问工具向数据库提交查询时,数据库服务器将处理这些查询并返回结果。该服务器还管理数据体系结构定义的结构中的数据集市里的所有数据。
- 表示服务器-数据访问工具可驻留在一个或多个地方;在用户的 PC、表示服务器和/或 web 服务器上。表示服务器将管理新来的查询并且将之发送给数据库服务器。它还可以允许用户预先安排查询,用以周期性地运行或在某一时刻运行。
- Web 服务器-数据访问工具可以是基于 web 的。这意味着用户可通过公共 Internet 或公司内部 Intranet 的 web 站点来访问它。根据创建的是“瘦客户机(Thin-Client)”还是“胖客户机(Fat-Client)配置,这可以限制需要安装到用户计算机上的软件数目。在用户与 web 服务器的通信中,称作 applet 和 cookie 的文件可被自动地转移并安装到用户的 PC 上,以助于与服务器进行通信。不管数据访问工具是否为基于 web 的,都可能需要 web 服务器来处理报表或元数据的发布。如果将在公共 internet 上发布信息,那么可能需要更多的服务器来管理大量的用户以及维护这个更开放环境中的安全性。
- 其他服务器-取决于所需的功能,可能需要更多服务器来管理安全性、备份、监控、元数据、数据模型等。
- 磁带备份设备-取决于数据集市的更新频率,一般需要每天或每周进行备份,以确保在碰到硬件问题或灾难时进行完全恢复。磁带备份系统通常由可自动控制的磁带构成并且由一个或多个磁带驱动器进行支持,而在服务器上运行的磁带管理软件将管理所有磁带。磁带备份系统可以支持多服务器。
- 网络控制器、光缆等等-还需要许多其他更小的硬件来连接和管理服务器、SAN 以及磁带备份单元之间的通信量。
软件 软件将会基于数据集市的功能而不同。数据集市至少需要数据库软件、数据访问工具和 ETL 软件。 - 提取转换和加载-ETL 软件提供了一个开发环境,用以从源文件提取数据,进行诸如派生、编辑有效值和查找等转换,以及将数据加载到数据库中。因为 ETL 工具需要相当大的投入来进行培训且难以被其他工具所替代,所以其销售商的市场地位与该工具的功能一样重要。
- 数据访问工具-也称作在线分析处理(Online Analytical Processing,OLAP)或即席报告工具(ad hoc Reporting Tool),这些工具提供了友好的用户界面,以便用户构造查询和分析从数据库中返回的数据。许多数据访问工具还有 web 访问、批处理调度和分析组件等附加功能。
- 关系数据库管理软件(RDBMS)-RDBMS 将数据组织到可通过 SQL 访问的结构中。大多数 RDBMS 使用开放的技术,以便能在多种操作系统中运行,而其他的却只提供较少的选项。公司数据集市的潜在大小,并发用户的数目以及问题的复杂性都有助于确定应使用何种数据库技术。
- 监控软件-这个监控数据库和操作系统性能的软件将供诊断问题和指导更正所需的信息。一般既要使用数据库监控软件,又要使用操作系统监控软件,尽管存在可兼管两者的软件。数据库监控可能包括活动级数据库文件和数据库过程所使用的资源,而操作系统监控可能包括磁盘 I/O 利用率、CPU 占用、存储利用率和网络通信量。
- 调度软件-通常在操作系统中都带有基本的调度软件,而 ETL 软件中有时也有。它们一般都能够基于日期和时刻调度作业,但无法支持运行整个作业流的需要,因为其中包括了复杂的作业依赖性。它们可能在向待命人员告知问题方面还有限。如果需要一个企业范围的调度解决方案,或者如果作业流十分复杂,就要考虑单独的调度软件。
- 媒体管理软件-当磁带存储设备变得越来越复杂时,以及当自动化的需要增长时,就有必要用软件来管理用以备份和恢复数据的磁带设备单元和媒体(一般是某形式的盒式磁带)。该软件还需要与由数据库销售商所提供的备份/恢复软件进行交互。
- 建模应用程序-建模应用程序将捕获图形格式的数据模型,以及每个数据元素的有关信息。它还将生成创建物理数据库对象所需的 SQL。一些建模应用程序还捕获元数据以及提供对于模型的修改控制。
- 元数据-元熟据软件将捕获并且发布数据的有关信息,例如业务描述、转换规则、数据库定义、引用数据的地方等等。当选择元数据工具时,应该考虑所捕获信息的类型,如何发布信息,它与哪些软件接口以及维护的复杂性。
- 其他软件-根据需求还可能需要其他软件。
技术架构 支持组织商业智能策略的技术架构(Technical Architecture)将提供一个框架,用以选择软、硬件以及进行软、硬件基础设施的整体设计。该方案将定义要配置多少服务器和如何配置,硬件位置,在应用程序间共享哪些硬件和软件以及其他等等问题。 技术架构还可以确定从源到目标的数据流所处的阶段,包括实施、净化、集成和加载。它可以集中这些过程,以便跨企业利用逻辑和保持数据一致。数据仓库的技术架构将适合于组织的整体技术架构。 训练-将数据调整为知识
 在数据集市被实现时,或在进行测试之前,新用户将开始较长的学习过程。 传统的训练对于数据集市不起作用,因为要学习的东西太多了。除了学习数据访问工具,新用户还必须学习如何加以分析地思考以及他们的组织是如何将信息嵌入到每个数据元素中的。(图 9)他们每天都将回答对于信息的不同请求。任何以前对于数据有过分析经验或业务经验的用户都具有一定优势。 可以有销售商或资深培训师参与的传统训练环境中学习数据访问工具。这种培训模型已经出现一段时间了,聘请了顾问(mentor)和主题事物专家授课,将最大限度地关注分析技能和数据集市中的数据。定期碰面以分享经验和问题的用户群也十分有效。 DB2 与商业智能 在 2002 年,Gartner Group 将 DB2 与 Teradata 和 Oracle 一起放在了数据仓库 DBMS 幻方图(magic quadrant)的右上角中。因为 DB2 是可扩展的并且可以处理超大型的数据库,所以它既适合于整个信息体系结构,又适合于纯粹的数据集市。DB2 还提供了精制的优化器以管理复杂查询。DB2 中包含的自动摘要表(Automatic Summary Table,AST)将在适当的时候自动访问预先摘要的总数,而无需每次都进行计算,从而提高了性能。DB2 Relational Connect 提供了对于查询访问分布式异构数据服务器的只读支持。因此,它将为用户和应用程序提供优化的、联合的数据视图,无论这些数据是存储于本地 DB2、远程 DB2 中,还是总共在另一数据库系统中。
|