《IBM BI系统方案建议书》由会员分享,可在线阅读,更多相关《IBM BI系统方案建议书(49页珍藏版)》请在金锄头文库上搜索。
1、XXX 公司公司 BI 系统系统方案建议书方案建议书IBM 公司软件部公司软件部二二二一二二一二二一年三月二一年三月IBM 中国公司非常荣幸有此机会向 XXX 公司 提交数据仓库方案建议书。该建议书含有专有信息。文中涉及的所有资料请严格保密。目目 录录第一章第一章 概述概述 .1第二章第二章 商业智能综述商业智能综述 .22.1 商业智能基本结构.22.1.1 IBM数据仓库架构.32.1.2 数据仓库:用于抽取、整合、分布、存储有用的信息.42.1.3 多维分析:全方位了解现状.42.1.4 前台分析工具.52.1.5 数据挖掘.52.2 商业智能方案实施原则.52.2.1 分阶段、循序渐进
2、的原则.52.2.2 实用原则.62.2.3 知识原则.6第三章第三章 XXX 公司公司 BI 系统方案系统方案 .73.1 XXX 公司 BI 系统的需求分析.73.2 IBM 的解决方案.73.3 建议架构.9第四章第四章 所选所选 IBM 产品简介产品简介 .114.1 DB2 UDB .114.1.1 概述:DB2家族(Family)与DB2通用数据库(UDB) V7.2.114.1.2 DB2通用数据库(UDB) V7.2的特色.124.1.3 DB2通用数据库(UDB)的其他先进功能.224.2 DB2 WAREHOUSE MANAGER (数据仓库管理器).264.2.1 DB2
3、 Warehouse Manager的主要部件.264.2.2 数据抽取、转换和加载(ETL)功能.274.2.3 元数据(Meta Data)管理.314.2.4 DB2 Warehouse Manager的其它技术特点.314.3 IBM OLAP SERVER(多维数据库服务器) .334.3.1 DB2 OLAP Server引擎.334.3.2 DB2 OLAP Server各个附件.344.3.3 DB2 OLAP Server与DB2 Warehouse Manager集成.364.3.4 DB2 OLAP Server支持的前端工具.364.4 DB2 OLAP ANALYZE
4、R.374.5 数据挖掘工具(IBM INTELLIGENT MINER).374.5.1 数据挖掘的实现方法.384.5.2 数据挖掘基本方法.394.5.3 数据挖掘与多维分析相结合.40第五章第五章 工程服务和售后服务工程服务和售后服务 .415.1 工程服务.415.2 售后服务.415.2.1 IBM数据仓库的安装及配置服务.415.2.2 IBM数据仓库的维护服务.415.2.3 IBM数据仓库的顾问服务.425.2.4 IBM培训服务.425.3 技术文档.42第一章第一章 概述概述随着市场竞争的日益激烈,各家公司纷纷把提高决策的科学性、合理性提高到一个新的认识高度。在此背景下,
5、利用信息技术的最新手段,利用业务数据进行面向决策的分析这一方法纷纷被国内外许多公司所采用。通过有目的、有选择地采集业务数据,并将其转换为对决策有用的信息,用于智能化的分析、预测和模拟等目的,这样的应用被称为商业智能应用。从国内外各行各业的发展经验看,实施商业智能是提高企业进行高效的业务分析和科学决策的有效手段。作为一个具有八十多年历史,以开发信息技术和商业应用而闻名的“蓝色巨人” ,IBM 在这一领域进行了多年的研究,发展出完备的商业智能技术,为商业数据自动转化为商业知识提供了现实的方案。商业智能的本质,是提取收集到的数据,进行智能化的分析,揭示企业运作和市场情况,帮助管理层做出正确明智的经营
6、决定。一般现代化的业务操作,通常都会产生大量的数据,如话单、账单以及客户资料等,其中一部分是决策关键数据,但并不是所有的数据都对决策有决定意义。商业智能包括收集、清理、管理和分析这些数据,将数据转化为有用的信息,然后及时分发到企业各处,用于改善业务决策。企业可以利用它的信息和结论进行更加灵活的阶段性的决策:如采用什么产品、针对哪类客户、如何选择和有效地推出服务等等,也可以实现高效的财务分析、销售分析、风险管理、分销和后勤管理等等。这一切都是为了降低成本、提高利润率和扩大市场分额。第二章第二章 商业智能综述商业智能综述2.1 商业智能基本结构商业智能基本结构当今,许多企业认识到只有靠充分利用,发
7、掘其现有数据,才能实现更大的商业效益。日常的商务应用生成了大量的数据,这些数据若用于决策支持则会带来显著的附加值。若再加上市场分析报告、独立的市场调查、质量评测结果和顾问评估等外来数据时,上述处理过程产生的效益可进一步增强。而数据仓库正是汇总这些商用信息后,进而支持数据发掘、多维数据分析等当今尖端技术和传统的查询及表报功能,这些对于在当今激烈的商业竞争中保持领先是至关重要的。那么怎样把这样大量的数据转换成可靠的、商用的信息以便于决策支持呢?建立数据仓库正被广泛地公认为最好的转换手段。图 1数据仓库建立过程根据 IDC 的调查,使用数据仓库的投资回报率平均超过 400,尤其是从小型数据仓库开始实
8、施的平均超过 500。2.1.1 IBM 数据仓库架构IBM 早在 90 年代初期,就投入大量优秀技术人员和资金开始了数据仓库的研究,并启动了 Star-Burst 大型科研项目。该项目主要就是为了攻克数据仓库领域的一些技术难题,例如优化星型连接(Star-join),实现多维分析。因此,IBM现在发布的数据仓库产品都是经过反复推敲和久经考验的,真正做到让用户买起来放心,用起来舒心。基于对数据仓库结构的深刻理解和多年积累的经验,IBM设计了自己的数据仓库结构,见下图:数据仓库的组成。作为一个开发式结构,它方便了用户的产品选择、实施和今后的扩展。图 2IBM 数据仓库架构上图为 IBM 三层次数
9、据仓库结构:从第一层 OLTP 业务系统到第二层数据仓库为建仓过程,从第二层到第三层数据集市为按主题分类建立应用的过程。第一步包括数据抽取、数据转换、数据分布等步骤,按照统一的数据格式标准进行统一的数据转换,建立可被企业各部门充分共享的数据仓库。其中,数据抽取阶段完成对各种数据源的访问,数据转换阶段完成对数据的清洗、汇总和整合等,数据分布阶段完成对结果数据存储的分配。这三个阶段通常紧密结合在一起,由一个产品或几个产品配合实现。例如,DB2 Warehouse Manager 既可独立完成,又可结合 DataJoiner、DataPropagator 实现对异构数据和数据复制的处理。DB2 Wa
10、rehouse Manager 可进行数据映射的定义,以定期地抽取、转换和分布数据;DataJoiner 可访问的各种关系型数据库包括 DB2 数据库家族、ORACLE、SYBASE、INFORMIX 和 MS SQL Server 等;DataPropagator 主要用于数据复制,采用数据复制的方式可对业务数据仓库进行增量数据更新,避免对作业系统事物处理性能的影响和大量重复抽取数据。数据的存储由 DB2 家族产品来完成,以保证数据仓库始终高性能地运转,提供完整、准确的数据,便于将来的升级和扩展。第二步,在按主题分类建立应用时,若既想拥有多维数据库的独特功能,又要把数据存放在关系型数据库中以
11、便管理,则 DB2 OLAP Server 是用户的最佳选择。DB2 Warehouse Manager 中提供的 Information Catalog 通过描述性数据帮助用户查找和理解数据仓库中的数据,Intelligent Miner 用于数据挖掘以便帮助决策者预测或发现隐藏的关系。最后,我们以报表或图形的方式将结果数据呈现给用户,这通常由第三方产品来实现,它们包括:Hyperion Analyzer, Cognos,Brio,Business Objects 等。商业智能的实现方式多种多样,其规模和特点由用户的需求来决定。但万变不离其宗,其基本体系结构往往包括三个部分。2.1.2 数据
12、仓库:用于抽取、整合、分布、存储有用的信息一个企业的信息往往分布在不同的部门和分支机构,管理者要综观全局、运筹帷幄,必须能迅速地找到能反映真实情况的数据,这些数据也许是当前的现实数据,也可能是过去的历史数据。因此,有必要把各个区域的数据集合起来,去其糟粕、取其精华,将真实的、对决策有用的数据保留下来,随时准备管理人员使用。因此,数据仓库不仅仅是个数据的储存仓库,更重要的是它提供了丰富的工具来清洗、转换和从各地提取数据,使得放在仓库里的数据有条有理,易于使用。2.1.3 多维分析:全方位了解现状管理人员往往希望从不同的角度来审视业务数值,比如从时间、地域、产品来看同一类业务的总额。每一个分析的角
13、度可以叫作一个维,因此,我们把多角度分析方式称为多维分析。以前,每一个分析的角度需要制作一张报表。由此产生了在线多维分析工具,它的主要功能,是根据用户常用的多种分析角度,事先计算好一些辅助结构,以便在查询时能尽快抽取到所要的记录,并快速地从一维转变到另一维,将不同角度的信息以数字、直方图、饼图、曲线等等方式展现在您面前。2.1.4 前台分析工具提供简单易用的图形化界面给管理人员,由他们自由选择要分析的数据、定义分析角度、显示分析结果。往往与多维分析工具配合,作为多维分析服务器的前台界面。以上三部分是商业智能的基础。它完成的是对用户数据的整理和观察,可以说,它的工作是总结过去。在此基础结构之上,
14、商业智能可以发挥更进一步的作用,利用数据挖掘技术,发现问题、找出规律,达到真正的智能效果:预测将来。2.1.5 数据挖掘正如在矿井中可以挖掘出珍贵的矿石,在数据仓库的数据里也常常可以挖掘出业务人员意想不到的信息。它比多维分析更进一步。例如,如果管理人员要求比较各个区域某类业务在过去一年的情况,可以从多维分析中找答案。但是,如果管理人员要问为何一种业务在某地区的情况突然变得特别好或是不好,或者问该业务在另一地区将会怎么样,这时数据挖掘工具可以作出回答。简单的说,数据挖掘使用统计、分析等数学方法、以及电脑学习和神经网络等人工智能方式,从大量的数据中,找寻数据与数据之间的关系。这种关系,一般显示数据
15、组之间相似或相反的行为或变化。一个细心的分析者,往往能从这些发掘出来的关系得到启示。而这种启示又很可能使得到它的业者,获得其他竞争者所没有的先机 。数据挖掘要求有数据仓库作基础,并要求数据仓库里已经存有丰富的数据。因此,在实施商业智能方案时,一般分两步走:第一步实现数据仓库和多维分析,构造商业智能的基础,实现分析应用;第二步实现数据挖掘,发挥商业智能的特色。2.2 商业智能方案实施原则商业智能方案实施原则实施商业智能方案项目工程,与实施传统的应用系统有很大的不同。其中最重要的是,商业智能的实施是不断的交流过程,只有双方紧密的合作才能取得实施的成功。 我们建议,工程实施上采取以下原则:2.2.1
16、 分阶段、循序渐进的原则任何一个项目的实施都是一个发现问题,解决问题,积累经验,又遇到新问题,再解决,再积累的循序渐进的过程。我们建议 XXX 公司 应根据现有的资源以及今后发展的方向,分阶段、循序渐进的实施商业智能方案。2.2.2 实用原则在第一步实现数据仓库时,尽量针对当前电信最关心的主题,并将该主题进行细致分析,尽可能用简单、统一、易于使用的方式来实现,避免追求片面的复杂和完美。2.2.3 知识原则普遍说来,由于商业智能技术相对而言比较新,企业的信息技术人员对数据仓库、多维分析、数据挖掘等系统涉及的知识往往存在着不足或偏差,实际应用经验也很欠缺。因此,我们建议在实施过程中结合专家培训和服
17、务,在商业智能系统的设计、开发、实施当中,逐步培养出企业自己的系统管理、维护和开发人员。当系统投入使用时,这些人员可以对系统进行维护和管理,并负责对最终用户进行培训。第三章第三章 XXX 公司公司 BI 系统方案系统方案 3.1 XXX 公司公司 BI 系统的需求分析系统的需求分析在 XXX 公司 的 BI 系统中,可以实现如下一系列经营过程中的分析和决策支持:除了以上列出的一系列分析和预测外,利用 BI 系统,还应该能够根据XXX 公司 的需求很方便地扩展其功能。3.2 IBM 的解决方案的解决方案基于 XXX 公司 BI 系统的需求,以及 IBM 公司在数据仓库领域的经验,我们提出以下解决
18、方案:采用一个企业级的数据仓库,实现各分行业务数据的自动采集、清洗、汇总,并且通过多维分析工具,让用户能够有效的将数据转化为灵活的报表和决策支持信息,最终满足用户的信息需求。该方案的实现方式如下:首先,在数据主要来源于两个方面:综合业务系统和新录入的数据。综合业务系统中的数据通过数据仓库工具进行自动采集、清洗、整理,而需要新录入的数据则通过浏览器方式录入。在构造数据仓库的过程中,我们采取以点带面的做法,采用小步长、逐步地建立数据仓库的策略。以 XXX 公司 报表系统为开端,分阶段地实现商业智能应用。小的项目可以立即显示数据仓库的价值,同时也提供了更快的投资回报。而且,先在只有少量的数据和用户的
19、小系统上进行学习和实践,对技术人员来说会学得更快。我们希望首先在需求较为迫切的领域,选择一些比较有意义的主题;基于这些主题,我们将建立一个数据集市,待用户能够对数据仓库的概念和一些技术有了比较深刻的认识之后,再综观全局,构建起企业级的数据仓库。数据录入可以采用数据文件快速装入的方式,也可以采用专门应用的方式。如果采用后者,我们可以考虑使用 IBM 的 WebSphere 和 VisualAge for Java 进行开发,它们产品是 IBM 电子商务应用的重要部件。利用这两个工具,我们可以方便地建立 Web 页面,生成 Java 程序,包括 Applet、Servlet 和 Applicati
20、on 等等。并且系统的维护工作也比较方便,当需要修改应用时,只需要修改服务器上的程序就可以了,不需要在客户端做工作。另外,这种结构对客户机的配置要求也不太高。在建造数据仓库的过程中,我们推荐使用 IBM 的 Warehouse Manager,该产品是 IBM 用来建立数据仓库的工具,利用该工具,我们可以方便、快捷地构造起数据仓库来,因为我们应该认识到数据仓库必须建立在一个开放的、可更改的结构上,以便能够处理数据和需求的不断膨胀。Warehouse Manager 正是这样的一个工具。提供一个开放的,从数据源到数据仓库的一致的解决方案。在 XXX 公司 的 BI 系统中,通过 Warehous
21、e Manager 管理器可以方便地建立数据加工的流程(process)和步骤(step),这些步骤反映了 XXX 公司 具体业务数据的流程、规则。在各步骤中可以定义代理(agent)来自动运行数据传递、清洗和汇总功能,这些步骤可以按时间、事件运行,或由其它步骤触发。代理可以运行在 Warehouse Manager 服务器上,也可以运行在远程的业务主机上,并且可以有多个代理运行以提高效率。可以以非常直观的图形化方式管理数据仓库,当报表系统的业务需求发生变化时,可以非常方便地修改步骤,满足变化多端的商业竞争环境。Warehouse Manager 是专门为商业应用设计的,它可以自动在网络上进行
22、数据的传送,不需要人为干预,并且利用它的日志功能可以对系统运行很好地监控。在 DB2 Warehouse Manager(DWM)中含有 Warehouse Agent 部件,它可以用来在位于数据仓库的目标数据库 DB2 UDB 中执行直接执行数据仓库的数据加工。另外,在数据仓库服务器于业务系统之间的文件数据 FTP 传输以及从表中抽取少量数据也可以通过 Agent 直接执行。建立数据仓库之后,选择一些有意义的主题,抽取相关的数据到 DB2 OLAP Server 中,利用 DB2 OLAP Server 的强大分析功能,给最终用户提供在线多维分析的功能,能够让最终用户充分挖掘出数据中包含的信
23、息。DWM 在执行完数据的提取任务后,自动触发预先定义好的 OLAP 操作,将数据经过汇总计算后加载至 DB2 OLAP Server 中。最终用户工具我们选用 DB2 OLAP Analyzer,这个产品是一个数据仓库的前端分析工具,利用这个工具用户可以很容易地访问 OLAP Server 中经过处理的数据,制作各种形式、风格的报表,报表内容可以包括数字、图像、曲线等,使得管理层可以直接、直观地查看企业的经营情况。3.3 建议架构建议架构生产系统1生产系统2生产系统3 Intranet/InternetBrowserWindows 2000Meta Data管理/数据仓库控制DB2/Ware
24、house Control CenterDB2 Warehouse ServerDB2 OLAP Server Application ManagerDB2 Intelligent Miner ClientWindows 2000查询分析WEB应用服务器DB2 OLAP Analysis ServerHTTP ServerDB2 UDB EEDB2 Warehouse ManagerDB2 Intelligent Miner for DataDB2 Intelligent Miner ScoringOLAP DataWarehouseDataRS/6000DB2 OLAP Server图 3X
25、XX 公司 BI 系统软硬件配置示意图在此方案中,采用 RS/6000 服务器作为运行数据仓库目标数据库的服务器,其上安装 DB2 UDB EE、DB2 Warehouse Manager,用来从生产系统抽取对决策有用的业务数据,经过加工后存放在数据仓库中。在海量数据仓库基础上针对每一类具体业务问题建立数据集市。由于 XXX公司 BI 系统中的业务问题大多是多维分析问题,故利用另外一台 RS/6000 服务器运行 IBM 公司专门的多维分析服务器产品 DB2 OLAP Server,以极大地加快多维分析的速度。在数据仓库服务器上同时安装 DB2 Intelligent Miner for Da
26、ta,从数据仓库服务器中抽取数据进行智能挖掘;此外,在数据仓库上安装 DB2 Intelligent Miner Scoring,用来将数据挖掘的结果作用到数据仓库中,实现打分功能。所有客户端以浏览器方式,通过查询和多维分析的 WEB 应用服务器访问数据仓库和多维分析服务器中的数据。整个系统需要在一台运行 Windows 2000 的PC 服务器上安装 DB2 OLAP Analyzer Analysis Server 以及 HTTP Server,作为为前端浏览器客户提供统一入口的应用服务器。为提高系统响应时间及提供负载均衡能力,可以配合 WebSphere Application Serv
27、er 共同使用。另外,需要配置一台 PC 服务器运行 Windows 2000 作为整个系统的控制服务器,安装 DB2 Warehouse Control Server、DB2 Control Center、OLAP Server 控制台 OLAP Server Application Manager 以及挖掘服务器前端 DB2 Intelligent Miner for Data Client。此方案的优点:基于公司的业务需求。各业务部门可以根据自己的需要定义数据集市的内容,并进行各种指标的多维分析,在实际应用中不断扩展系统,为决策者提供必要的信息。高性能、高效率。数据都在本地运行,数据量相
28、对较小,因此对服务器计算能力的要求相对较低。同时由于在局域网上运行,对网络带宽基本不会有压力,并且用户响应时间可以得到保障。最大限度地减少网络负荷。各客户端通过浏览器方式从中心数据仓库中获取数据,只有需要的数据被传输。满足 XXX 公司 未来发展的需要。此方案具有很好的可扩展性,随着 XXX公司 业务量的增加,业务数据的增多,各种业务系统的建立,此方案可以容易的适应这些变化,满足业务的需求。一次性投资,长期受益。此方案不仅可以满足 XXX 公司 目前 BI 系统的需要,更为重要的是为 XXX 公司 商业智能应用打下了一个坚实的基础。XXX 公司 可以在此基础上开发各种商业智能应用,辅助决策者制
29、定业务计划和措施,在激烈的竞争中保持良好的势头。第四章第四章 所选所选 IBM 产品简介产品简介在这次的商业智能解决方案中,采用的产品包括数据库 DB2 UDB、数据仓库(DB2 Warehouse Manager)、多维数据库(OLAP Server)、前台分析工具(DB2 OLAP Analyzer)及智能数据挖掘服务器(DB2 Intelligent Miner for Data)。以下是各个产品的描述说明。4.1 DB2 UDB4.1.1 概述:DB2 家族(Family)与 DB2 通用数据库(UDB) V7.2IBM DB2 家族的各种关系数据库管理系统适用于各种硬件平台,其中包括
30、基于 Intel 的微机、IBM 的或非 IBM 的各种 RISC 服务器和工作站、大型并行处理机、AS/400 中型计算机系统以及运行 VM、VSE 和 MVS、OS/390 操作系统的主机系统。各种平台上的 DB2 有共同的应用程序接口,因此运行在一种平台上的程序可以很容易地移植到其他的平台。DB2 家族产品能够满足不同用户的需求,它包含了从单用户的微机系统到支持 80 万用户的主机系统。DB2 家族除了包含在各种平台上运行的数据库管理系统内核之外,产品包中还包括了数据复制、数据库系统管理、环球网(Internet)网关支持、在线分析处理、多媒体支持和各种并行处理能力,免费提供免费提供 D
31、B2 UDB V7.2 在在 PC 和和 UNIX 平台上的客户机端平台上的客户机端产品产品(DB2 CAE),并为所有平台上的异构数据库访问提供“中介件”(Middleware)解决方案。可运行在基于 Intel 的微机及各种 RISC 服务器(UNIX 平台)上的 DB2 UDB V7.2 包括:DB2 for AIX,DB2 for HP-UX,DB2 for SUN Solaris,DB2 for OS/2,DB2 for Windows NT,DB2 for Win95,DB2 for Win98,DB2 for Linux,DB2 for SCO,DB2 for Sinix,DB2
32、 for NUMA-Q 等等。这些产品是全功能、具有工业强度的关系数据库管理系统,分别用于服务器和工作站平台。可以把它们配置到单个的系统上,或者配置到支持客户机工作站的 LAN 服务器上,还可以把它们配置为环球网(Internet)上的数据库服务器。如果使用服务器配置,那就允许DOS、Windows、OS/2、Win95、Win98、Macintosh 或 UNIX 客户机去访问 DB2服务器,可以使用 TCP/IP、IPX/SPX、NetBIOS 或 APPC 等网络协议;如果作为环球网上的数据库服务器,则可由一台浏览器(Web Browser)作为客户机访问。DB2 通用数据库(UDB)
33、V7.2 产品建立在一个共同代码的基础之上,依据多进程/多线索结构进行设计,其数据库引擎的核心技术来自 Starburst 研究项目以及 DB2 for OS/390 等主机产品,而且它们在数据和应用的可移植性两个方面与DB2 家族中的其他成员完全兼容。因而任何受过一种平台上的 DB2 培训的人员能够很容易地使用其他平台的 DB2 产品。在保持这种外在的兼容性以及具备DB2 家族成员所必需具备的可靠性和可管理性的同时,实际上它们每个产品还针对各自的平台环境作了调整和优化以达到业界领先的性能/价格比。DB2 产品家族提供了完整的中文支持,对中文的支持贯穿于从微机到主机的所有平台,这是任何其他数据
34、库厂家做不到的。图 4DB2 家族产品4.1.2 DB2 通用数据库(UDB) V7.2 的特色DB2 通用数据库(UDB) V7.2 无论在网络计算方面还是在线分析、多媒体处理,都能给你全面、满意的支持,而且集成了丰富的数据库管理工具,把原来复杂的管理工作变得非常简单。DB2 V7.2 致力于商业智能和数据仓库方面的改进,包括自动触发器,多分区和多表的自动总计表格,优化星式结构的连接方法,使查询和整个系统的反应速度大大提高。同时也增加了在装载和在线重组时对索引的维护。在 DB2 中还新增了统计、线性回归等功能,直接支持进一步深入分析,以便利用 DB2 的查询处理实用程序,而以往只能在应用程序
35、级上做到这一点。另外,在支持 16 和32KB Pages、多个缓冲池(multiple buffer pool)的优化、更快的完整性约束处理、处理更多查询的星式连接等方面,做了一系列的改进。应一些 IBM 合作伙伴软件提供商的要求,DB2 UDB V7.2 包含以下扩充性能:表/视图/别名的命名长度限制由原来的 18 个字符扩充为 128 个字符。列命名长度限制由原来的 18 个字符扩充为 30 个字符。SQL 语句的最大长度由原来的 32KB 增大到 64KB。页大小从 16KB 增大到 32KB。最大变量字符为 32KB,取决于页大小。最大表/表空间的大小从 128GB 扩大到 512G
36、B,取决于页大小。索引关键字长度从 255 字符扩大到 1,024 个字符。嵌入式 SQL 编程支持宏。DB2 V7.2 对统一代码(Unicode)的支持:16-Bit 固定长度的 Unicode 包含所有通用文本字符,容许定长字符序列(以便分析)和设定含义的字符。对 UCS-2和 UTF-8 格式的支持,允许用户用各种主要语言创建数据库和存取数据。DB2支持 wchar_t 数据类型,使得用户在单字节环境(如英语环境)下开发的应用在其他环境(日语)下也可照常运行。DB2 UDB V7.2 增强面向对象的 SQL 和 SQL 扩展,集成 Windows 平台,打包新增免费软件。产品集成改变主
37、要包括通用数据支持,免费新增数据仓库中心和 DB2 OLAP starter kit。用户可以使用 DB2 的数据连接器(DataJoiner),象访问DB2 数据资源一样,访问 Oracle, Sybase, Informix, SQL Server 等数据库。用户只需熟悉 DB2 语法即可在跨平台的复杂环境中轻松获取非 DB2 数据。DB2 UDB V7.2 选件中针对 Oracle 的关系连接部件可以使用户通过标准 SQL 查询同时访问DB2 和 Oracle 的数据资源。DB2 UDB V7.2 的用户现在可以跨越 DB2 数据库、Oracle 数据库或者一个OLE DB 资源进行分布
38、式的查询,也就是可以通过使用 DB2 通用数据库的 SQL句法和 API 在一个工作单元的查询内实现访问和操作保存在异构数据资源中的数据。DB2 Relational Connect 加强了分散查询功能,使 DB2 用户可以通过一个简单的查询来访问 DB2 数据和存储在 Oracle 数据库中的数据。DB2 UDB V7.2 免费包含的数据仓库中心把可视化仓库的强大功能和 DB2控制中心的便捷特点结合起来,为需要商业智能的用户提供友好的用户界面。用户可以使用数据仓库中心对数据进行定义、自动取样、转换、发布、以及为数据仓库加载数据。这种新功能可以为一个部门或单位配置一个独立的简单数据中心。除数据
39、仓库中心之外,DB2 还在 Wizards,模式名模型(Schema Modeler)、元数据交换(Metadata Interchange)等方面做了改进。DB2 UDB V7.2 数据仓库中心使用了更便捷的新界面,用于创建、设计、储存以及维护数据仓库以及 OLAP 表。DB2 数据仓库管理器产品在大量数据传递、元数据管理以及查询管理方面做了改进。DB2 UDB V7 中包含了一些先进的高级面向对象 SQL 功能,对开发人员和分析员都非常有用。这些聚合功能用于 OLAP 应用计算,这是在 SQL-99 中很难或根本无法实现的,其符合 SQL-99 OLAP 附录中建议的标准。DB2 现在可以
40、提供临时表格支持,应用存储点(saving point),标识栏(ID Column),嵌套存储过程。SQL 过程语言( SQL Procedure Language)支持创建DB2 存储过程,符合 ANSI SQL99 中的存储过程模型标准。DB2 UDB 存储过程创建工具(SPB)是一个图形应用工具,支持 DB2 存储过程的快速开发。通过使用SPB,用户可以在本地和远程 DB2 服务器上创建、修改、运行、测试和调试存储过程。SPB 提供 Windows、AIX 和 Solaris 下的开发环境,支持 DB2 系列产品,用户可以从 DB2 UDB 程序组启动 SPB,也可以从 MS VC+,
41、MS VB,IBM VisualAge for Java,DB2 控制中心启动 SPB。DB2 UDB V7.2 创建用户定义功能,表功能和行功能时允许包含一条 SQL 语句,这就减少了使用外部高级语言书写这些功能的需要。DB2 UDB V7.2 推出了结构数据类型(或者叫做抽象数据类型),这可以让用户和开发商们创建带有结构的表格。DB2 UDB V7.2 版本中包括了许多可以提高系统性能和改善系统管理的功能:能够把 ODBC/CLI 应用程序包含的动态 SQL 语句转换为静态 SQL 并执行;活动日志最大可为 32GB;支持多个 TCP/IP 收听者(listener) 。DB2 UDB 7
42、 提供三个新的扩展器:(1) 空间扩展器(Spatial Extender):DB2 提出了空间 SQL 查询概念(Spatially Enabled SQL Queries),使用户可以在关系型数据库中集成空间数据(通过坐标确定位置)和普通的 SQL 数据。这两种技术的结合使用户可以进行新型查询。新的空间扩展器将能够存储和索引空间数据(坐标信息),并使用户通过特定的空间数据查询对其进行访问。(2) DB2 XML 扩展器:IBM DB2 XML Extender 体现了 IBM 全面的 XML技术策略,在电子商务领域居业界领导地位。XML 扩展器是 IBM B2B服务器的组成部分,使 DB2
43、 服务器可以支持 XML。IBM 曾为早期XML 技术被采用和发展起到了关键作用,此次该扩展器又提供了 XML存储和数据交换的新技术。通过存储,XML 扩展器提供了 XML 文档在DB2 中的存储和恢复机制,并可高效地查询 XML 内容。通过数据交换,XML 扩展器提供新的和已存在的 DB2 相关表格和 XML 格式文档之间的映射。DB2 用户可以在任何地方通过 XML 扩展器进行电子商务,实现企业之间(B2B)和企业与消费者之间(B2C)的应用。本产品是免费的。A 支持先进的面向对象和多媒体应用自从 70 年代 IBM 发明关系数据库以来,在数据库市场上,关系型数据库管理系统(RDBMS)得
44、到极其广泛的运用。关键任务的应用在很大程度上依赖于RDBMS 的使用。然而,目前很多 RDBMS 用户正转向非传统的、面向对象的应用,需要对更广泛的形形色色的现实世界数据予以支持。比如,需要更有效地处理在 RDBMS 中的文本、声音、视频、映象等数据。DB2 通用数据库(UDB)能够支持这些先进的应用。DB2 把对传统应用与非传统应用的支持与数据库体系结构集成在一起,对关系型数据库进行面向对象扩展,形成新一代对象关系型数据库系统(Object Relational DBMS)。DB2 UDB V7.2 提供了许多对面向对象及多媒体应用的支持。(1) 用户定义类型(UDT)DB2 允许用户定义新
45、的数据类型,称为用户自定义类型(User Defined Type)。例如,一个用户可以定义两种币值类型:用 CDOLLAR 表示加拿大元,用USDOLLAR 表示美元。这两种类型在内部可以用 decimal (十进制)类型来表示,但在意义上是有显著差别的。它们彼此间不应也不能直接进行比较,也不可直接与 decimal 类型进行比较。这是通过 DB2 的面向对象强类型(strong typing)机制来保证的。象内设(built-in)类型一样,UDT 可以用来定义表列的数据类型和用户定义函数(UDF)的参数。例如,用户可以定义一个类型:多边形 Polygons,这个用户自定义类型可有构造函数
46、,还可有一组用户定义的函数作用于它,如求面积,求角度,以及旋转多边形等等。(2) 用户定义函数(UDF)DB2 允许用户用 C,C+等编译语言定义新的函数,称为用户自定义函数(User Defined Function)。UDF 允许在查询中包含强有力的计算过程和检索判定,以便滤除在数据源附近无关的数据。UDF 使用户有能力提供一组函数,它们作用于用户定义的类型,形成面向对象的封装,从而定义该 UDT 的行为语义。SQL 优化器考虑到 UDF 的语义和执行成本,这使得对待用户定义的函数就完全象对待内设函数(如 SUBSTR 和 LENGTH)一样。开发应用程序所用的语言环境可以不同,如 C、C
47、+、COBOL、FORTRAN 和 PL/I 等,借助于 SQL,应用程序共享一组 UDT 和 UDF。把用户定义的类型和函数组合在一起使用,就能把数据的表示和解释该数据的一组函数定义都隐藏起来。利用它们能创建函数库,这些函数库可以是 IBM开发的,也可以是第三方经销商或客户自行开发的,然后直接把它们集成在数据库中。(3) 大对象(LOB)LOB 允许用户在一个数据库中存储特大(若干个 GB)对象。在 DB2 中有二进制 LOB(BLOB),字符 LOB(CLOB),双字节字符 LOB(DBCLOB)等几种类型。用 LOB 可以存储多媒体对象,如文档资料、视频信号、映象和声音等。它也可存储由
48、UDT 和 UDF 定义其语义的小型结构。DB2 支持一组用于 LOB 的功能强大的内设函数,如查找、子串和连接等。利用 UDF 方式用户可随时定义附加函数。另外,在一个表中可以定义多个 LOB 列。对 LOB 实现支持时要考虑到客户对性能的需求,为此允许数据库用户或管理员执行如下操作:仅访问应用程序需要的那部分 LOB,不必访问整个 LOB。延迟或取消 LOB 的求值过程。在定义一个 LOB 列时,能做出选择-对该 LOB 列是否作日志。把 LOB 数据存储在不连续的数据库分区中,这些分区是专为 LOB 管理而构造的。(4) 关系数据库扩展器(Relational Extenders)关系数
49、据库扩展器是一个预先包装的用户定义类型、用户定义函数、触发器、约束以及存贮过程的集合。利用 DB2 提供的对象关系型特征,把 DB2 的基于内容的搜索能力扩展到诸如文本、图像、视频、音频之类的新的数据类型。使用关系扩展程序,只需简单地添加由关系扩展程序提供的相应数据类型的列(如文本或图像列),用户就可以把文本文档、图像、视频、音频等连同常规企业数据一起存贮在 DB2 的表中,对这些表的结构或主关键列并没有任何特殊要求。关系扩展程序还提供了一组用户定义函数,用于对新数据类型的管理、索引和搜索。(5) 集成内容搜索集成内容搜索由 Relational Extenders 通过用户定义函数来支持。例
50、如:DB2 Image Extender 提供了一组函数来支持关于图像的、基于内容的搜索。一个用户可以在一个 SQL 查询中使用一个 Image Extender 函数来请求那些与一个现有图像相似的图像。并且,其实现对用户是透明的,用户只需简单地把他的搜索请求表示为 SQL 查询即可,该 SQL 查询将自动地调用由扩展程序提供的函数。DB2的基于 SQL 的、支持集成内容搜索的方法的另一个重要的优点是既可以在多种非常规的数据类型上搜索给定的查询,又可以在常规的数据上搜索给定的查询。B 强劲的在线分析处理(OLAP)支持DB2 优化器能够使用动态位图索引(Dynamic Bit-Map Inde
51、x Anding)即根据需要在相应字段上自动地动态生成位图索引,从维数表格(Dimension table)中调选出符合条件的记录,再和事实表格(Fact table)连接,提高了访问多维数据的性能;而不是执行 Cartesian 的维数表格连接,避免了大量中间数据的生成,中间数据已实现了理论上的最小值。当连接所涉及的表达到三个或三个以上,DB2 可自动判断是否使用星型连接技术(Star Join)和动态位图索引进行优化。DB2 在 SQL 中新增加了 ROLLUP 和 CUBE 功能,ROLLUP 功能通过在常规组的行中增加“小计”和“总计”行来提供扩展的组(GROUP),CUBE 功能增加
52、了“cross-tabulation”行。它们通过星型连接(Star join)方式在关系型数据库中支持在线分析处理(OLAP),使用立体的结构查看和归纳数据而不是传统的平面结构。DB2 的优化器一向是值得 IBM 骄傲的,它提供了领先于其它数据库厂商的基于成本优化技术,它在优化时考虑了 CPU 速度、磁盘 I/O 率、表格尺寸、有效访问路径,并且如果可能的话可以重写查询,以得到更高的性能。这更使得 DB2的在线分析处理(OLAP)功能如虎添翼。C 卓越的并行处理能力(1) 并行优化技术DB2 UDB V7.2 无论在 SMP 还是在 MPP 环境下,甚至在 SMP 节点组成的MPP 环境下,
53、都可充分发挥其并行处理能力。查询执行时被透明地分开后并行执行(称作内部查询并行性:Intra-query parallelism),过去需要数小时的查询现在只需几分钟就可以完成。过去不能执行的查询现在不仅可行,而且还能从中获益。在 SMP 环境下处理并行,DB2 UDB 采用的是吸管模型(Straw model)。此时被执行的 SQL 相当于杯子中的水,而每个 CPU 相当于一根吸水的吸管,这样被执行的 SQL 很快就被 CPU“吸干”了。在 MPP 环境下处理并行,则相当于把杯子中的水先智能地分配给多个小水杯(参与 SQL 执行的节点机),这样小水杯中的水就分别被每个节点机“吸干”了。有了好
54、的模型仅仅是开了个好头,DB2 UDB V7.2 中融入的最先进的技术才是成功的关键。(1) 并行优化:并行优化:从很多系统中抽取非常多的数据,这会耗费大量的时间,如果效率不高,还会浪费大量宝贵的处理能力。从串行数据库中抽取数据有很多方法,它们没有必要象并行数据库那样运作。DB2 UDB V7.2 有一个查询优化器,是由 IBM 研究机构开发的,它是专为提高并行抽取数据的效率而设计的。这样就可获得高品质的查询性能,特别是对特大型数据库。(2) 全面并行全面并行(Parallel Everything):DB2 首先把数据分配到数据库中的多个分区或子集中,这些数据库位于多个 SP 站点或 SMP
55、 服务器内。接着,DB2自动创建一个并行处理访问计划。数据扫描、合并、分类、负载平衡、表格重组、数据调用、创建索引、索引访问、备份与恢复等一系列工作都是在所有不同的节点里同时完成的。DB2 UDB V7.2 以并行方式执行全部数据库功能,这包括全部SQL 语句(Select、Insert、Update 和 Delete)、实用程序(backup,restore,reorg,load)和数据存取方法(连接、表扫描和索引扫描)等,而且无需任何额外的编程。这不仅提供了更好的性能和可伸缩性,而且也提供了更佳的管理性有能力利用全部处理机去执行数据库管理任务。进一步说,DB2 UDB V7.2 既可用于联
56、机事务处理(OLTP),又可用于决策支持查询工作。(3) 管理工具在并行环境同样适用:管理工具在并行环境同样适用:Governor 帮助您控制每个用户及应用程序的资源利用率,可自动调整查询的优先级。从而,在线平衡负载,简化系统管理,减少关机时间。通过并行在线备份功能可显著减少备份及恢复所需的时间。(4) 并行环境下功能不受任何限制:并行环境下功能不受任何限制:DB2 UDB V7.2 对多媒体数据的支持、支持的客户端平台、支持的应用开发接口和开发工具以及动态位图索引等多维分析功能、对 WEB 和 Java 的支持均不受限制。(2) 对MPP结构计算机的独特支持当企业的业务系统或数据仓库系统的数
57、据量不断增大、并发用户量不断增大时,依靠单一的数据库服务器往往难以获得比较好的性能和处理能力。此时,由多台服务器协同工作成为解决这一问题的有效手段。多台服务器协同工作的手段主要有共享硬盘的集群式计算机,以及不共享任何资源而自以高速网络相连的海量并行处理计算机两种方式。随着计算机科学的不断发展,无论是科学计算领域还是在数据库领域都已经备计算机科学家证明,海量并行处理是目前解决大数据量、最大限度里并行处理能力的最佳手段。运行在 MPP 体系结构计算机上的 DB2 UDB V7.2 企业扩展版(Enterprise Extended Edition),作为并行关系数据库它允许把单个数据库映象散布到多
58、个系统上,从而能利用所有系统的处理能力以满足用户对数据的需求。DB2 可以在并行处理的多个节点上同时运行某一查询,从而提高查询性能,必要时它可以重新编写查询以优化性能。然后,它自动生成用于并行处理的访问方案。它包括以下针对 MPP 体系结构的特性:(1) 无共享无共享(Shared-Nothing)结构:结构:DB2 UDB V7.2 企业扩展版的体系结构设计为每个系统(节点)只处理它那一部分数据库,彼此间尽可能独立。这就减少了节点间共享资源时的竞争,并允许数据库有效地伸缩以支持更大的数据库,或者通过附加更多节点以支持更多用户。在客户进行 benchmark 测试时多达 512 个节点,都表明
59、 DB2 UDB V7.2 企业扩展版的性能可随系统规模线性增长。它的体系结构的规模可多达上千个节点。(2) 智能数据分发:智能数据分发:可在数据库的多个分区或子集中分布数据,其分区图允许 DB2 管理分发过程并在必要时重新分发。DB2 基于成本的 SQL 优化器利用分区信息估计 SQL 查询不同执行方案的成本,在需要分布数据和重新分布数据时进行有效的管理,从中选择成本最低的方案。(3) 应用透明性:应用透明性:对在 DB2 客户机工作站上工作的程序员或业务用户来说,DB2 UDB V7.2 企业扩展版看起来与其它的 DB2 数据库一样。使用 DB2 UDB V7.2 企业扩展版时不需要修改应
60、用程序,这就保护了当前用在 DB2 家族产品上在数据、应用和技能方面的投资,同时也提供了新的强有力的数据处理手段和发挥成本效果的手段。(4) 对对 RS/6000 SP 的支持:的支持:DB2 UDB V7.2 企业扩展版的体系结构完全可与 IBM 的大型并行处理器(MPP) RS/6000 SP 相媲美。RS/6000 SP 由上千个RS/6000 节点组成,相互由高速开关连接。DB2 UDB V7.2 企业扩展版和RS/6000 SP 的结合构成当今产业界中最有伸缩性和功能最强的并行数据库方案。(5) 可伸缩的性能和容量:可伸缩的性能和容量:DB2 UDB V7.2 企业扩展版提供了非并行
61、增量增长的途径,从容量为 1-2GB 的单处理器数据库到具有兆兆(TB)字节甚至更多数据的有 512 个节点的 MPP 计算机,这一切都不需重写应用程序(串行和并行环境使用相同的 SQL 语句)即可移到新的操作环境中。(6) 性能性能/价格比:价格比:因为它利用最新的并行技术,并且在成本收效显著的客户机/服务器环境中操作,而价格又很有竞争力,所以 DB2 UDB V7.2 企业扩展版提供了优异的性能/价格比。(7) 客户机客户机/服务器的可管理性:服务器的可管理性:在整个网络上散布着多台数据库服务器,其引人注意的替代品可以是单一大规模并行数据库服务器。把多个系统合并到一个地点,使之成为一个 M
62、PP 机群,可以减少系统管理开支和增加可用性。当出现故障时,可将其隔离到独立节点上,修复时系统运行不会中断。(3) DB2 UDB V7.2企业扩展版支持的硬件平台DB2 UDB V7.2 企业扩展版可以在由 IBM RS/6000 AIX、Windows NT/2000、SUN Sparc Solaris、HP/9000 HP-UX 等操作系统平台的 MPP 计算机群集上运行,组成群集中的每一个节点机即可以是但 CPU 的服务器,也可以是SMP 服务器。特别地,对于具有较多 CPU 的服务器,可以将其分解多个 DB2 EEE 逻辑节点,与其它服务器一起运行 DB2 EEE。各种硬件平台的 D
63、B2 EEE 的 SQL、API、管理和开发工具以及价格都是完全相同的。D 集成的数据库管理工具:Control Center 等DB2 UDB V7.2 的管理工具包括 Control Center、Alter Center、Event Analyzer、Script Center、Journal 和 Command Center、DB2 Governor 等。Command Center 中既可以执行 SQL 语句、数据库命令,也能执行系统命令。Event Analyzer 可帮助用户分析已执行的 SQL 操作。DB2 Governor 能够监视资源使用情况,及时终止违反资源限制的应用或降
64、低其优先级,这对保持系统的良好性能是非常重要的。Control Center (控制中心)提供了对本地或远程数据库的联机监控、直观的图形用户界面,可作到从一点控制能访问到的所有 UDB 数据库系统,且易操作。它包括一个类似浏览器的界面,用于访问和控制数据库中的对象;工作规划程序,允许用户自动执行许多数据库任务;Smart Guide:使用对话框,引导用户逐步进行性能配置、工具设置及数据库监视和管理等操作。Control Center 的主要功能包括以下方面:(1) 对象管理:对象管理:数据库管理员只需简单地点击对象图标便可以建立,改变,删除,复制,更名和分析对象;(2) 配置管理:配置管理:配
65、置数据库管理器和数据库;(3) 编目编目/未编目数据库和网点未编目数据库和网点;(4) 安全管理:安全管理:增加,改变,删除规则及其授权和特权;(5) 空间管理:空间管理:确定数据库空间分配,显示文件系统用法和磁盘格式,建立、修改和引入表空间,显示桌面空间分段存储;(6)操作管理:操作管理:运行公用程序(备份/恢复等)。此外,Control Center 可调用 Script Center、Journal 等。Script Center 帮助你很容易地创建、存储、编辑、运行和预定脚本,它所发出的 SQL 指令和 DB2 命令相一致。由于 Script Center 也能识别操作系统命令,因此用
66、户可以只用一个脚本语言,例如 Perl。Journal 是一个简单的调度表和工作监视表,它能够列出所有悬挂着的、运行中的和按调度表完成了的脚本和工作,提供它们的状态信息和结果信息,及时地记录数据库管理过程中返回的消息,还能够与 Alert Center 协同工作,共同监视系统并自动发出问题警报。Control Center 还可调用 Visual Explain (可视说明)、Performance Monitor (性能监视器)。DB2 UDB V7.2 的管理工具免费包含在 Windows 95/98/ME、OS/2 或 Windows NT 平台上的 DB2 客户机端产品(DB2 CAE
67、)中。(1) Visual Explain (可视说明)DB2 Visual Explain 是一个易于使用的图形说明工具,它提供 DBMS 优化器存取数据时所选定存取计划的详细信息。图形化显示:优化器选取的 SQL 存取计划,传统上用文本格式或表格来表示,对大多数 SQL 语句来说,它是很难理解的。在 Visual Explain 中,表、索引以及对它们所作的操作都用节点来表示,数据的传递则表示为各个节点之间的联系。DB2 Visual Explain 用易于理解的图形方式展示存取计划、数据库对象(例如:表和索引)间的关系以及优化器选择的各种操作,一切变得一目了然。利用这些信息,SQL 语句
68、和数据库可以调整到更佳的性能获得更高的效率。详细的优化器信息:Visual Explain 提供大量的优化器信息,用以帮助用户书写高效的 SQL 语句。其中包括每个操作所用的 I/O 和 CPU 成本估算,联编时间和当前目录统计、预测信息和基数。例如,管理员和开发人员能很方便地指出给定的 SQL 语句中代价最高的操作是哪个,从而集中精力调整那个操作。SQL 的“如果则”模型(What-if Modeling for SQL):Visual Explain 允许用户对数据库环境中由于 SQL 语句的各种变化所带来的影响进行模拟。例如,在有1,000,000 行的产品环境中用户能预计执行一个查询所
69、需的时间。而无需往 100行的测试环境添加更多数据。(2) DB2性能监视器(Performance Monitor)DB2 Performance Monitor 提供了全面的性能数据采集、查看、报告、分析和报警的功能。全面灵活的数据采集:包括缓冲池、锁和死锁、排序、通信、代理和日志信息,显示的数据有数据库管理器、数据库、表空间、表、连接、事务和语句等。Performance Monitor 还支持两类性能数据快照(snapshot)和事件,为用户提供了更多的灵活性。快照数据周期测量时间点上的性能特征,而事件数据汇总了某个期间的性能属性(例如从语句开始执行到最后完成的时间,或者从第一次连接在
70、给定数据库上到最后解除连接的时间);关于事件举例来说,对于语句事件DB2 Performance Monitor 可以监测开始时间和停止时间、总的 CPU 时间、排序的总量和 CPU 时间、读写行数以及该语句的 SQLCA,对动态语句来说,还要捕获 SQL 语句文本。使用方便,查看和报告直观:采集到的数据可以实时查看或记录下来,供以后重播和分析。记录的数据也可装入到 SQL 性能数据库,以备将来查询和报告。当查看数据时,用户可选择图形表达方式或文本表达方式。图形说明有助于用户解释复杂的数据,而文本式输出可以用于报告和归档。功能强大的数据分析:Performance Monitor 支持类似电子
71、表格的公式,从而允许用户定制测量方式。例如:用户不必考虑绝对测量结果,他可以直接监测由两个相关测量结果计算出的比值。该产品支持多种公式,包括函数,如求平均值、求最小值和最大值。Performance Monitor 包括一组常用测量法,用户可以直接使用其中的监测功能。此外,它可以分析数据、筛选出适于某些数据库对象或某一时间阶段的记录。例如,用户正追踪一个性能问题,他可以迅速地定位与给定数据库相关的事件记录上。SQL 性能数据库可提供辅助分析能力。例如,事件记录显示了应用程序中每条语句的 I/O 成本,它们可以按降序排序,显示出成本最高的语句。健壮的报警能力:对于任何性能测量结果,用户可通过指定
72、一个阀值来定义异常条件。当达到阀值时,用户可指定下述任一或者全部动作通过窗口或声音报警、在日志文件中记载、执行命令或程序、给某一管理工具发通知如 IBM NetView(R)产品家族。例如,如果给定表的溢出比例过高,管理员可以指示Performance Monitor 自动进行重组,也可以指示 Performance Monitor 给 IBM NetView 发一个警告,通知重要操作。利用这样全面、灵活且便于使用的监测功能,管理员和开发人员就拥有了强有力的工具,来进行性能调整和发现问题。4.1.3 DB2 通用数据库(UDB)的其他先进功能DB2 UDB 最醒目之处就是非常容易安装,用户只需
73、在机器上插入 DB2 UDB 的光盘, “自动运行”就开始安装程序,用户即可根据“标准安装向导”按步就班地安装。DB2 UDB 还对其 SQL 语言做了许多改进,其中包括:外连接(Outer Join)、单精度浮点数据类型(Real Data Type)、表功能(Table Function)、重命名表(Table Rename)、表格列数最多可达 500 列、调用级界面(CLI)与最新的 ODBC 3.0 标准一致、滚动游标(Scrollable Cursor)。表功能实现了操作文本文件中的数据就如同操作关系型数据库中的表格。A 约束和触发器面向对象的扩展可以让用户把自己数据的“知识”封装到
74、数据库中,而不必将它编到应用程序中。上面述及的用户定义数据类型(UDT)和用户定义函数(UDF)是封装知识最重要的两种。封装数据知识的另一种办法是把业务规则定义到数据库内。这种办法可以通过申明引用完整性、约束和触发器等得到支持。一旦在数据库中建立业务规则,任何用户和程序都必须遵守这些规则。约束和触发器能定义复杂的完整性规则,利用这些完整性规则保障数据库的正确性。约束和触发器增强了其它面向对象特性的能力,它们扩充了唯一对象代码库(其方法不能修改),从而支持附加的特殊对象属性和约束条件检查。它们也有助于实施对象间完整性规则。通常检查约束条件是为了实施一项业务规则。例如,一个用户可以在EMPLOYE
75、E 表上定义约束条件,其中指明一个雇员的工作只能是Sales、Mgr或者Clerk三者之一,并且在该公司服务超过 8 年的每一位雇员的工资必须大于一定的数值。利用触发器可执行下述任务:维护复杂的交叉表业务规则,为新插入的行自动生成一个值,为实现交叉访问从另外的表中读取数据,为检查跟踪把数据写到另外的表中,提供 alert (报警)功能触发器可以调用一个用户定义的函数(例如发送一个电子邮件消息)。B 递归 SQL 查询DB2 UDB V7.2 支持递归 SQL,从而不仅支持材料单查询,而且也支持更强有力的递归查询形式,如路径表达式查询。由于支持递归,下述查询例子会很容易实现:(1) 材料单查询:
76、用户想返回各个部分的子部分,各子部分的子部分等等。(2) 路径表达式查询:用户想计算出多个飞行航线中成本最低飞行费用。例如,使用递归 SQL 可把下述查询用一个式子表示出来:返回从 Toronto (多伦多)到 Perth (佩思)所有可能的航班,并且要求不在 London (伦敦)或者 Chicago (芝加哥)中途停留,而且整个航程中飞机中转不多于 3 次。优化器能够为递归查询和非递归查询进行很复杂的转换和优化,从而选择出更佳的访问方案,使性能得以改善。C 灵活管理大型数据库和高可用性DB2 UDB V7.2 采用和主机数据库 DB2 for OS/390 相似的方法,允许数据库管理员把数
77、据库划分成若干称作表空间(tablespaces)的部分。表空间可以单独管理,这就大大增强了管理特大型数据库的能力,它能包含上兆兆字节数据。DB2 扩充的存储功能允许使用 64 位系统和 32 位系统,还可支持 4GB 的内存。为大型数据库管理提供了附加增强功能并改善了可用性,它支持 24 小时 X 7 天的数据库可用性,包括以下几个方面:(1) 支持不同操作环境下的群集技术:支持不同操作环境下的群集技术:允许您定义运行于多台服务器上的DB2 数据库,而对用户而言它就象一个数据库一样。如果某一服务器发生故障,其它服务器上的 DB2 仍能运行。(2) 灵活的空间分配:灵活的空间分配:在不停止数据
78、库运行的情况下,通过增加更多的设备或存储空间,系统管理员也可以增大表空间。为了获取最佳的性能,对表空间中的数据可以自动进行动态平衡。另外,数据库管理员对存放数据的位置具有更大的灵活性。例如,可以把同属一个表的数据、索引和 LOB 分别放在不同的表空间中,比如:把索引放在 I/O 速度快的硬盘上,从而获得最佳的性能。(3) 表空间级的备份和恢复功能:表空间级的备份和恢复功能:为客户的应用提供了最大的自由度您可以从整个数据库备份集中选择需要的单元进行恢复。(4) 支持联机或脱机备份和恢复:支持联机或脱机备份和恢复:在进行备份处理期间表空间可以是联机的或脱机的。在进行恢复处理期间,所有被恢复的表空间
79、(而不是一个表空间)可保持联机方式。在出现 I/O 错误(例如磁盘失效)的情况下,只有受到影响的表空间在恢复操作未完成之前被禁用,而该数据库的其余部分仍保持正常工作。(5) 并行备份和恢复:并行备份和恢复:能够用并行方式把数据库或表空间备份到多台设备上,或者反过来从多台设备上进行恢复。用并行方式执行备份/恢复大大地减少所花费的时间,从而满足关键性维护任务的需求。备份和恢复实用程序能以并行方式使用若干设备,这样就减少了这些实用程序所耗费的运行时间。(6) Point-in-time 表空间前滚功能:表空间前滚功能:可将数据库恢复至发生错误之前的位置(7) 高速装入实用程序:高速装入实用程序:高速
80、 LOAD 实用程序显著地加快了数据装入的速度,它比一般的 LOAD 实用程序快几倍,同时又保证装入数据的可复原性。D 数据复制DB2 UDB V7.2 内置的复制功能允许从一个数据源读取数据并把它送到另外一个地方,而且可以是双向的。当发生冲突时,UDB 可自动检测出来并进行补偿。此外,它还有以下特色:(1) 支持异构数据库:支持异构数据库:DataJoiner 既可作为 DB2 UDB V7.2 的数据源,也可作为它的目标,从而允许 Oracle、Sybase 分享 IBM 数据复制方案。(2) Pull Architecture through Staging Tables (分级表牵引式
81、体系结构分级表牵引式体系结构):二个组成部分Capture 和 Apply。Capture 部分在源数据库服务器上运行,它捕获要被复制的数据,并把数据放入服务器分级表中;Apply 部分在目标机上运行。在用户定义的时间间隔里或某个事件发生后,它连到源数据库中,并从分级表中抽取所需的数据。这种被动的“牵引式”体系结构减少了数据源的额外开销,能够支持数据源及目标机的独立运作性以及新一代流动计算机作为目标机的数据复制。这种体系结构还支持中介分级表,其中最初的源可以复制到区域目标中,然后再复制到各区域内的目标机上。(3) 支持更新和修正:支持更新和修正:既支持更新也支持修正复制。Apply 可以完全替
82、换目标数据或者仅仅修正上次复制以来所发生的改变。(4) 改变事务运行记录的改变事务运行记录的 Capture:捕获数据修改。它从 DB2 运行日志(LOG)中读出修改,从而抓取用于复制的数据修改,进而安排好这些数据。这就减少了对源的额外开销,不需要另外处理如触发器。甚至可以直接从内存中读运行记录,以减少 I/O。(5) 加工数据:加工数据:数据首先要从运行记录移到分级表,所以能在复制之前加工或处理它;由于分级表是 DB2 表,使用标准 SQL 就能定义加工处理功能。除了通过 SQL 来构造子集,汇总并连结表以外,分级表还能提供基于时间分析源数据改变的方法。这要考虑到整个新一类的应用包括检查跟踪
83、,历史分析,asof查询等等。(6) GUI 管理机构:管理机构:通过图形用户界面可以定义和管理数据拷贝,定义代码和触发器没有专门语言。这样最终用户就有权定义和管理,而不仅仅是 DBA和程序员的范围。E 对 SQL 标准的完美支持和开放性(1) 安全的事务管理机制:安全的事务管理机制:通过 COMMIT 和 ROLLBACK 处理过程能维护事务完整性。此外,各平台上的数据库可与事务处理器协同工作,完成事务处理。例如,DB2 UDB V7.2 for AIX 和 DB2 UDB V7.2 for HP-UX 可与 CICS/6000 和CICS/HP 进行协同事务处理,这是通过支持 X/open
84、 的 XA 标准实现的。(2) 多用户并发控制:多用户并发控制:并发控制是通过行级封锁、查询结果游标处理以及层次隔离等手段进行维护的,层次隔离包括游标稳定性、读稳定性、可重复读和未提交读等方式。(3) 数据完整性:数据完整性:通过申明引用完整性维护逻辑数据完整性,通过联机备份和向前滚动恢复维护物理数据完整性。(4) 数据安全性:数据安全性:防止对数据未经授权的访问,其方法是规定用户和用户组级的保密权限,通过 SQL 的 GRANT 和 REVOKE 命令分别授予和撤消数据库特权。DB2 UDB V7.2 具有审计(Audit)功能,支持的安全级已达到 C2。(5) 高性能:高性能:DB2 拥有
85、迄今为止最好的性能(TPC-C&TPC-H)和最佳的性能/价格比。其原因之一是利用了 IBM 研究开发的工业界最先进技术:基于成本的优化和查询重写优化。优化器能够模拟采用不同方式从磁盘中查询数据所付出的代价,从而选用最佳查询方案。优化器还采用了先进的查询重写技术,它自动把复杂查询转换成简单查询,并对重写后的查询进行优化。这样一来,最终用户会感受到最佳的性能,而不必关心如何构造一个查询。此外,DB2 内部包含着 I/O预取、并行 I/O 和异步 I/O 等若干并行处理措施,这些措施和其他的静态 SQL、存储过程、数据缓存和在客户机与服务器之间成块 I/O 等技术一起共同发挥了单处理器及对称多处理
86、(SMP)硬件上的性能。Global SQL Cache 能够在内存中存储静态和动态 SQL,它们能够让多用户再使用,使得对共享 SQL 目录访问最小化。数据库管理员可以同时创建多个不同大小的缓冲池后将它们指向特定的表格空间,就象大型机 DB2 用户一样非常细致地控制内存使用,这对提高交易应用的在线响应时间会产生很大效益。(6) 应用程序接口:应用程序接口:支持多种工业标准应用程序接口,它们包括 ANSI SQL92,SQL93,调用层接口(CLI)和开放式数据库连通(ODBC)、JDBC。同时还支持嵌入式 SQL 静态格式和动态格式,SQL 可嵌入在 C,C+,Cobol,Fortran等宿
87、主语言里,通过预编译器处理后用于数据库访问。例如 DB2 的存储过程就是通过嵌入式 SQL 进行编程,然后在数据库中执行一个调用存储过程的语句来实现的。(7) 系统管理:系统管理:系统管理设施包括 GUI 数据库管理工具、命令行界面、以及用于转出转入、备份/恢复、重构和向前滚动恢复等实用程序。通过监视器支持性能监测,并提供了多个参数,以调整系统和数据库的性能。高可用性:高可用性:通过 High Availability Cluster Multi-Processing(HACMP 高可用性集群多重处理)支持 DB2 UDB V7。4.2 DB2 Warehouse Manager (数据仓库管
88、理器数据仓库管理器)IBM Warehouse Manager 是 IBM 数据仓库解决方案的重要组成部分,它主要由以下几部分功能组成:数据访问,数据转换,数据分布,数据存储,靠描述性数据查找和理解数据,显示、分析和发掘数据,数据转换过程的自动化及其管理。它缩短了复杂的海量数据与有洞察力的商务决策之间的差距,有助于公司更进一步了解其业务、市场、竞争对手和客户。IBM 的 Warehouse Manager 可获取的数据源可以是 DB2 家族中的任一数据库,也可以是 Oracle、Sybase、Informix、SQL Server 数据库和 IMS、VSAM 文件系统;存放数据仓库的数据库可以
89、是 DB2 UDB for Windows NT、OS/2、AIX/600、HP-UX、Sun Solaris、SCO、SINIX 和 DB2/400、DB2 for OS/390;Warehouse Manager 中的 ETL 工具还可以以分布式的方式运行在AIX、Solaris、Windows NT/200 平台上;数据仓库的控制服务器运行在Windows NT/2000 上。下面,我们将从几个用户关心的方面来分析一下Warehouse Manager。4.2.1 DB2 Warehouse Manager 的主要部件IBM 的数据仓库管理器主要由多个部件组成,所有部件紧密耦合,共同完成
90、了数据仓库数据源抽取、数据清洗、加工、装载、元数据管理、加工步骤定义、查询管理、信息编目等一系列工作。具体包括:用于数据抽取、清洗、加工和装载的的 ETL 工具 DB2 Warehouse Manager Transformer;用于分布数据仓库 ETL 过程的数据仓库代理 Agent。数据仓库的开发、监控以及 Meta Data 管理工具 DB2 Warehouse Center;数据仓库控制服务器 DB2 Warehouse Server;用于调度复杂即席查询的查询管理器 Query Patroller;数据仓库信息目录 Information Catalog;报表生成工具 QMF 等此外
91、,为了能够以 Native 方式从除 DB2 之外的其它关系型数据库中抽取数据,DB2 Warehouse Manager 提供了选件 Relational Connect。4.2.2 数据抽取、转换和加载(ETL)功能建立和维护数据仓库的过程由多个步骤组成,主要包括数据的访问、数据的转换、数据的分布、数据的存储、流程的自动化、数据的维护几个方面。以下将针对每一个实施步骤进行详细的说明。A 数据的抽取对数据的访问包括数据源和目标数据库两个方面。Data Warehouse Manager (后简称 DWM)的支持各种关系型和非关系型的数据源。因此数据仓库中的数据可以来自如 Oracle、MS
92、SQL Server、Files、FoxPro 等多种数据源。目标数据库多为 DB2 UDB。要使 DWM 可以访问源和目标库,都需要首先将源数据库和目标数据库都登记为系统的 ODBC 数据源。在完成以上工作后,需要在 DWM 中定义数据源及目标数据库(如下图) 。仓库目标的定义与仓库源的定义是类似的。完成以上步骤后,数据访问所需要做的工作就基本完成了。DB2 Warehouse Manager 支持以 ODBC 方式访问各种关系型数据库,也支持以 FTP 等方式访问远程文件系统。对比较大量的数据,往往采用 FTP 方式将数据传递到本地后用数据装载(LOAD)方式放入数据仓库。通过选配 DB2
93、 Warehouse Manager 的选件 Relational Connect 和 DB2 Connect,DB2 Warehouse Manager 可以以 Native 方式访问Oracle、Informix、Sybase、SQL Server 和 DB2/390、DB2/400 等数据库。B 数据的转换、分布及存储作为数据仓库的源数据通常是以满足业务应用的为目的进行组织和存放,这种形式多数情况下不适用于数据仓库的最终用户的分析需求。因此数据在进入数据仓库之前都要经历一定的清洗和转化的过程。DB2 UDB 和 DB2 Warehouse Manager 提供给用户超过 100 种的转化
94、程序以确保其可以满足客户的各种对数据进行净化、重组、关联、标准化和求和的需要,从而使数据更为准确和有用。这些转换器总共可以分为四类:SQL 函数、数据仓库转换程序、统计算法以及用户自定义函数:其中 SQL 函数可以帮助您进行针对字段和表的转化。对于字段的处理包括对字符串进行处理,进行各种数据类型的转换,数学运算,以及逻辑运算。表级的转换程序包括求均值,最大最小值,针对某一位向上钻取等;数据仓库转换程序则负责基本的数据转换,如数据的净化,生成作为主外键的字段等;统计算法可完成以下工作:基本的统计算法,线性回归,移动平均,均方差等;而用户自定义函数则提供可以满足用户其它多样化的需求,由用户自己定义
95、,可以是可执行文件、批处理程序等。 以上的这些工作在具体实施时,是与进程及步骤的定义结合在一起的,要定义进程对象需要选择进程所涉及的数据源和目标(前面已经定义好)以及对数据源需要作的处理步骤,所谓步骤即可能需要作运行各种转换程序,可能是一个SQL 语句,可能是一个匹处理程序,可能是进行数据的装载。所有步骤定义完成后,还需要定义执行所有步骤的顺序,从而生成一个完整的数据处理流程,最终将经过转化和清洗的数据放入数据仓库。参考下图为一个简单的流程定义结果。图 5DB2 Warehouse Center 中定义数据仓库数据加工步骤C 数据装载DB2 Warehouse Manager 提供了对 DB2
96、 UDB 进行数据加载的功能。它充分利用 DB2 UDB 的快速数据装载功能,将文本数据装入到数据仓库的目标数据库中。DWM 中提供的数据装载功能可以和其它数据抽取、转换功能结合在一起被统一调度执行。一般地,在数据仓库的具体构建中,可以在数据仓库或交易数据阶段性中间信息库(ODS)中直接对数据进行加工处理。对于比较大的数据量,往往采用将数据库中表的处理结果写入硬盘,然后再利用快速数据装入功能装入数据库的方法来提高数据仓库的处理速度。D 流程的自动化DWM 有效地减少了在建立数据仓库以及日常的抽取数据时所需要的人为的干预工作。这是因为 DWM 以提供的定时调度功能,可以保证所有流程的自动化。当调
97、度步骤时,可以指定一个或多个日期和时间,该步骤将在这些日期和时间运行。还可以指定步骤将只运行一次,或者将按指定的时间间隔运行,例如在每个星期六运行。 同时它还可以 监控流程中每个步骤的运行,从而有效的进行出错处理。DB2 Warehouse Manager 对每一个步骤支持如下流程控制:成功时:指示一个步骤将在它前面的步骤运行成功时才开始运行。完成时:指示一个步骤将在它前面的步骤运行完成后开始运行,无论前一个步骤是否成功。失败时:指示一个步骤将仅在它前面的步骤运行失败时才开始运行。 E 数据仓库的维护数据库所需的维护量与数据库的活动量或工作负荷量直接相关。为了提高最终用户的查询响应,在日常的维
98、护中需要做如下的工作:创建索引,收集表的统计信息,重组表等。所有这些工作都可以在 DWM 自动完成,也可以在 DB2 UDB 的控制中心中完成。索引是一组键,每一个指向表中的一组行。索引是独立于表数据的对象。数据库管理器构建了索引结构并自动对其进行维护。索引通过使用索引创建的指针来创建至数据的直接路径,使得对表中的行的访问更为有效。表统计信息提供了有关表及其索引的物理特性和逻辑特性。您必须定期收集这些统计信息,以便“DB2 通用数据库”可确定访问数据的最佳方式。如果对表中数据进行扩充更改,且上一次收集的统计信息不再反映实际的表数据,则数据访问性能会有所降低。一般情况下,如果表中的数据有较大的更
99、改,则应更新统计信息。重组表是在物理存储器里对表进行重新安排,以除去碎片,并确保有效地将表存储在数据库中。您还可使用重组来控制表中的行的存储次序(通常与索引对应) 。对数据仓库中的表运行统计信息以及重组表的工作都可以作为数据仓库数据加工的一个步骤在 DB2 Warehouse Center 中定义,DB2 Warehouse Server 会自动执行相应统计信息和重组表操作。4.2.3 元数据(Meta Data)管理IBM 数据仓库建立在集成的数据字典之上,该数据字典实际上是一个装满描述信息的数据库,成为元数据数据库,它提供了一个所有管理和操作功能的中心。数据仓库的模型以描述性数据的形式存储
100、于该数据字典中,它定义了数据仓库的结构和内容,用于对数据源进行抽取、过滤、转换、映射后放入数据仓库。这种描述性数据是以步骤形式被定义的,而且步骤可以在多个数据仓库间输入和输出,大大方便了具有相同结构数据仓库的建造。Warehouse Manager 的管理是由其客户端 DB2 Warehouse Center 实现的,它以图形化的方式提供给开发人员和系统控制员一个完整易用的操作界面,对整个网络内的数据仓库管理集中于一点。它包括以下几点:数据加工过程及其具体步骤,监控数据转换过程,编辑版,定期执行,级联式步骤:(Cascaded Business View),版本,Warehouse Manag
101、er 中的触发器,用户自定义程序,描述性数据(Meta Data)。4.2.4 DB2 Warehouse Manager 的其它技术特点A 数据仓库的可扩展性Warehouse Manager 很易于扩展,单个的数据仓库可支持非常大量的数据,也可靠简单地增加内存、处理器升级和存储设备扩容来支持更多的升级和用户,访问更多数据源。另外,我们还可以不同的主题同时实施多个部门级数据仓库,最后再把它们整合到一起形成企业级的数据仓库。B 系统环境的开放性Warehouse Manager 提供了一个真正开放的系统环境,它不仅提供了数据仓库的所有功能和组件,而且可以“即插即用”的方式与用户喜欢的第三方软件
102、组合,以最少的费用快速开发出用户所需的数据仓库。C 规模化的体系结构Warehouse Manager 提供了一个完整的分布式客户机/服务器系统环境,它使得用户可充分享受到“网络计算”带来的便利,而且适用于多种平台。它包括四个组件:管理员,控制数据库,客户端管理员,代理。这些组件既可分布于几个不同的服务器,也可都安装在同一服务器上。D 处理 OLAPWarehouse Manager 支持 DB2 OLAP Server 上一种或多种星型图表的全部映射或装载。另外 Warehouse Manager 现在也支持指定和创建在 DB2 OLAP Server以外生成的星型图表初始化或引入关键码。E
103、 按照业务需求建立数据仓库数据加工步骤Warehouse Manager 图形查询编制器得以扩展,目前除了支持常用的 SQL 语句还支持 Join 和 Group by 语句,简化了复杂的 SQL 声明。Warehouse Manager 基于久经考验的独创技术,可以支持复杂业务分析过程的每一步骤同现有应用程序环境集成,转换数据,自动执行数据仓库处理,分析数据,并为决策人员提供信息。Warehouse Manager 是一种简单易用、经济有效的数据中心和数据仓库产品,可以处理部门或企业中设计、实现和应用解决方案时的相应任务。其较低的维护成本和迅速的实现过程将使工作组迅速提高工作效率。Wareh
104、ouse Manager 提供了完整的 Web 支持功能,允许从任何 Web 浏览器访问任何数据。因为 Warehouse Manager 的信息目录完全支持 Web,用户可以访问可用数据的详细信息,包括格式、通用性、拥有者和位置。F 解决方案产品包(Solution Package)IBM 的 Warehouse Manager 提供了强有力的工具以定义、建立、管理、监控和维护一个商用信息系统环境数据仓库。但是,IBM 并不满足于此。为了更好地满足用户的需求,IBM 设计了一个完整的解决方案。IBM 将 Information Catalog 和 Warehouse Manager 集成在一
105、起并与 Lotus Approach 和相应平台上的DB2UDB 打包在一起,作为一个完整的解决方案提供给用户。其中,Information Catalog 靠商用信息分类表支持商业需求,帮助用户查找和理解数据仓库中的商用信息;Lotus Approach 可帮助用户分析信息并把它们以图表的方式表示出来。Warehouse Manager 产品系列集成了数据库功能,单一软件包中的集成化工具可以简化数据提炼、自动规划、用户授权、数据仓库管理和监控、信息分类、数据纯化、在线分析处理、端用户查询和报告等功能。它提供了迅速建立小型企业或工作组数据仓库并投入实际运行所需的一切。此外,Warehouse
106、Manager 是希望建立大型数据仓库的企业的理想出发点,而且可以扩展为管理极大数量的信息数据。4.3 IBM OLAP Server(多维数据库服务器多维数据库服务器)在线分析处理(OLAP)在 IBM 的商业智能中扮演着重要角色,IBM 为此提供一个分析工具DB2 OLAP Server,深入最终用户的业务,对桌面上的数据进行实时操作。DB2 OLAP Server 是一套独特的商务工具,能够快速地分布传统监视和报告范围之外的应用程序数据。4.3.1 DB2 OLAP Server 引擎IBM DB2 OLAP Server 是一种功能强大的工具,结合了业界领先的Hyperion Essb
107、ase OLAP 功能以及 DB2 的可靠性、可管理性和访问能力。Hyperion Essbase 是 OLAP 市场领先的厂商。同其它 OLAP API 相比,有更多的前端工具和应用程序利用了 Essbase API,使其成为事实上的业界标准。同大多数基于 SQL 的应用程序结合时,DB2 OLAP Server 和 Warehouse Manager 将为端用户提供更多的前端工具和业务智能应用程序选择余地。如今,用户可以享受到多种 OLAP 应用程序的优势,如通过 Hyperion 的 OLAP 引擎集成预算功能,充分利用机构在相关技术上的投资,管理基本设施和 DB2 数据。DB2 OLA
108、P Server 以图形化的方式定义多维模型。多维模型以维和成员分层次表示,用户可以根据需要定义每一个层次的聚合关系;也可以在任何一个成员上定义计算公式,使其可以由同维度或不同维度、同层次或不同层次其它成员计算而来。DB2 OLAP Server 将一个多维立方体中的各个维以紧凑维和稀疏维加以区分,在物理存储时将所有的紧凑维以小立方体块(block)形式存储,而所有的稀疏维则以向量形式存储即只在所有稀疏维进行笛卡尔积后存在实际值的交叉点才存储一个指向小立方体块的向量。通过采用这种稀疏矩阵的存储方式,DB2 OLAP Server 既避免了由于多维及多层次而导致的多维存储膨胀率过大这一问题,有可
109、以同时获得比较高的访问速度。DB2 OLAP Server 支持以 MOLAP 方式存储多维数据,也支持将 MOLAP 数据以二维表的形式保存在 DB2 UDB 中,两种存储方式之间可以任意切换,在一台服务器上采用两种不同存储方式的多维立方体可以共存。这样,即获得了MOLAP 方式存储高效、节约硬盘空间的优势,有同时具有了关系型数据库海量存储和易于管理的特点。用户可以在 Application Manager 中非常方便地增加、修改、删除维及维中的层次和成员,DB2 OLAP Server 会自动重构多维立方体的存储,而无需重新装入数据。用户在 Application Manager 中定义维
110、度更新规则和数据装载规则,用户可以以增量方式向已经存在的多维模型中增加新的数据。在 DB2 OLAP Server 沿着各个维度和层次做汇总计算时,将只对新增加的和修改过的数据进行更新,而无需重新计算整个多维立方体,从而大大加快计算速度。DB2 OLAP Server 支持完整的用户权限控制,管理员可以分别对应用、多维立方体以及多维立方体中某一个维中的某一个成员对用户和用户组设定不同的访问权限,并且无需编程。这一功能使得用户可以用一个相同的应用满足不同权限的用户的需求,无需针对不同客户单独开发多维分析前端界面,且所有的安全权限控制亦不需要进行复杂的编程,从而大大降低了开发和维护成本。DB2 O
111、LAP Server 支持大量用户并发访问,对于同一个多维立方体,在一个用户进行更新操作时,其他用户对于没有被更新的单元格(cell)仍然可以访问。多个多维立方体之间可以完全并行操作维度更新、数据装载、汇总计算以及前端访问。DB2 OLAP Server 支持对多维立方体中的任意一个单元格的修改操作,无论此单元格是输入的原始数据还是汇总后的数据。用户可以通过此功能迅速实现What-if 分析功能。4.3.2 DB2 OLAP Server 各个附件DB2 OLAP Server 中包含多项附件,如 Tools Bundle、Partition Option、Integration Server
112、、Objects、Web Gateway、Allocation Manager、OLAP Miner 等。A Tools BundleTools Bundle 是 OLAP Server 最重要的部件之一,它具有如下功能:SQL Interface:访问关系数据库源;Currency Conversion:外币汇率转换;Application Programming Interface:客户程序接口;Extended Spreadsheet Tool:用于 1-2-3 和 Excel 应用程序的宏和 Visual Basic 函数。B Partition Option可以利用 Partion
113、Option 所提供的分区技术将一个多维模型按照时间、地理位置、产品等一切需要的方式分布到不同的服务器或 CPU 上。利用分区技术可以支持:Transparent Partition 透明分区允许将对多维立方体内某个区域的操作透明地传送到另一个分区上。一般用于将一个比较大的多维模型按照某一维或某几维分解到不同服务器或 CPU 上,以达到并行计算和分布存储的目的。Replicated Partition 复制的分区允许将一个多维立方体内的一部分数据复制到另一个多维立方体内。一般用于将公司总部的数据中与某个地区分公司相关的数据复制到各个地区的本地OLAP Server 中以加快各个地区进行分析时的
114、查询速度。Linked Partition 链接的分区将一个多维立方体内的某一个 Cell 连接到另一个多维立方体的某一个 Cell上。利用链接的分区可以实现多个多维立方体之间的自动连接。C OLAP Integration Server (OIS)其主要功能是利用图形界面自动地根据数据仓库目标数据库 DB2 UDB 中将星型模型或雪花状模型生成 DB2 OLAP Server 的多维立方体模型,并自动生成维度更新规则、数据装载规则,并自动计算。特别地,OIS 中的 SQL Drill-Through 功能还可以实现从 DB2 OLAP Server多维立方体内某一个单元格(Cell)到数据仓
115、库目标数据库的查询,可以利用此功能以 HOLAP 形式实现多维分析应用。例如,对于一个非常复杂的多维分析模型,我们可以在数据仓库目标数据库DB2 UDB 中以星型模型或雪花状模型保存所有详细数据,然后选取对分析影响最大的若干个维,按照一定的粒度利用 OIS 自动生成 DB2 OLAP Server 的多维模型并将数据仓库中的数据进行汇总后存放在 DB2 OLAP Server 中,同时在 OIS中定义 Cell 到 DB2 进行钻透的 SQL 语句。这样,在对此多维模型进行分析查询时,针对最常用的一些纬度和比较大的粒度,可以直接在 DB2 OLAP Server 中进行查询;当分析需要用到 D
116、B2 OLAP Server 中没有保存的维度或更小的粒度时,可以利用 OIS 的钻透技术利用 SQL 语句到 DB2 UDB 中直接查询详细信息。D DB2 OLAP Server Objects用来为 Visual Basic 应用提供开发接口。E Web Gateway用来为 Web 方式直接管理 DB2 OLAP Server 提供接口。F Allocation Manager预算分配管理器。G OLAP MinerDB2 OLAP Server 的 OLAP Miner 功能将背离分析这一数据挖掘功能与多维分析相结合,在 DB2 OLAP Server 之上直接实现了一定的挖掘功能。
117、对于多维分析而言,分析人员往往需要相当长的时间在一个多维立方体中反复查询,才能够获得一定的知识。在这个反复查询的过程中,有相当多的工作是找出多维立方体中的奇异点。而当多维模型比较庞大复杂时,找出这些奇异点的过程是漫长的,在某些情况下还可能难以发现奇异点。利用 OLAP Miner 的背离分析,可以非常方便地找出一个多维模型内部的奇异点,分析人员对这些奇异点进行重点分析,可以更快地找出问题的所在。4.3.3 DB2 OLAP Server 与 DB2 Warehouse Manager 集成DB2 OLAP Server 可以与 Warehouse Manager 有机地集成在一起:完全、自动地
118、把 OLAP 集成到数据仓库,数据抽取和生成自动地由规则和数据源支持,直接进入 DB2 OLAP Server 的立方体;将 OLAP 描述数据外部化;实现数据集市。DB2 OLAP Server 和 Essbase 产品最突出的方面在于它特别的分析能力和简便的分布。虽然从应用程序角度上讲易于分布,OLAP 系统更倾向于把劳动集中于获得和清除数据,经过许多努力,使用 DB2 OLAP Server 的部件 OLAP Integration Server 能够自动地创建和维护多维数据库,大量减少手工维护并确保数据稳定。Warehouse Manager 与 OLAP Server 相结合还有一项
119、附加的好处,就是在数据仓库管理器上创建了一个中间信息仓库(ODS)。这个中间数据仓库包含干净、抽取的数据,用来在 OLAP 系统上装载多维数据。一旦 OLAP 系统装载并上线,或者作为干净数据源来进行 OLAP 以外的分析比如查询客户地址等,这些中间数据就可以废弃。Warehouse Manager 与 OLAP Server 相结合对于分析业务需求来说是一套很好的商业智能解决方案,它利用自动维护仓库工具提供了强大的针对分析型数据的分析能力。这种结合在业界是独一无二的,巩固了 IBM 在商业智能上的地位。4.3.4 DB2 OLAP Server 支持的前端工具DB2 OLAP Server
120、提供开放的 C 语言 API 供客户端访问之用,用户可以自行开发应用程序访问 DB2 OLAP Server 中存放的数据。由于 DB2 OLAP Server 的市场份额居于业界领先地位,各种多维分析前端工具厂商都在自己的产品里包括了对 DB2 OLAP Server 的支持。IBM 公司的OLAP 分析前端产品是 DB2 OLAP Analyzer,常见的第三方 OLAP 前端产品有:Cognos、Business Object、Brio 等。此外,DB2 OLAP Server 中还包括有Microsoft Excel 及 Lotus 1-2-3 的插件,使用户可以直接在电子表格中访问
121、DB2 OLAP Server,利用从 OLAP Server 中获取的数据生成各种图表。4.4 DB2 OLAP Analyzer使用 DB2 OLAP Analyzer,可以达到企业的“商业智能化” ,并提高信息技术组织的效率。信息技术人员可以让用户利用分析和报表的功能获得他们所需的信息,而不会失去对信息、数据完整性、系统性能和系统安全的控制。强大功能的报表繁忙的信息技术部门可以在几分钟内创建用于在企业中分发的完善的报表。,决策人员可以从该 Web 页面上找到可用的一系列报表。图形化分析远远超出对数据的静态图形化步骤。决策人员可以根据需要排序、分组数据并改变“图表” (Chart)的类型(
122、直方图、饼形图、线图、堆积图) 。图表中的元素可以被“钻取”到其他的细节层次,并可以返回来恢复一个概要性的步骤,。多种图表步骤:直方图、线图、组合图、饼形图、堆积图和离散点图可在任何地方“钻取”没有路径的预先定义完善的报表复合报表通过用各种不同的形式(交叉表、图表、表格或以上几种形式的组合来表现分析结果,对工作进行概括。优美格式的商用报表交互式的、立即的“所见即所得” (WYSIWYG)显示4.5 数据挖掘工具(数据挖掘工具(IBM Intelligent Miner)当用户的数据积累到一定数量时,这些数据的某些潜在联系、分类、推导结果和待发现价值隐藏在其中,我们可以使用数据发掘工具帮助发现这
123、些有价值的数据,IBM 在这方面的工具就是 Intelligent Miner。IBM Intelligent Miner 被选为业界最佳数据挖掘工具,赢得了 DM 读者奖。XXX 公司 在适当的时候,可以考虑采用数据挖掘技术。Intelligent Miner 有别于其他厂家产品的地方在它丰富的挖掘方法。一般厂家主要是提供统计方面的技术。Intelligent Miner 不单单用统计方法,它还提供电脑学习(machine learning)或神经网络(neural network)的技术。Intelligent Miner通过其世界领先的独有技术,例如典型数据集自动生成、关联发现、序列规律
124、发现、概念性分类和可视化呈现,它可以自动实现数据选择、数据转换、数据发掘和结果呈现这一整套数据发掘操作。若有必要,对结果数据集还可以重复这一过程,直至得到满意结果为止。根据 IDC 的统计,Intelligent Miner 目前是数据发掘领域最先进的产品。现在,IBM 的 Intelligent Miner 已形成系列,它帮助用户从企业数据资产中识别和提炼有价值的信息。它包括分析软件工具Intelligent Miner for Data 和IBM Intelligent Miner for Text,帮助企业选取以前未知的、有效的、可行的业务知识如客户购买行为,隐藏的关系和新的趋势,数据来
125、源可以是大型数据库和企业内部或 Internet 上的文本数据源。然后公司可以应用这些信息进行更好、更准确的决策,获得竞争优势。Intelligent Miner for Data 可以寻找包含于传统文件、数据库、数据仓库和数据中心中的隐含信息。Intelligent Miner for Data 帮助用户充分利用传统数据库或普通文件中的结构化数据。其采集算法已成功应用于客户及贸易伙伴之中,满足市场分析、诈骗行为监测、客户联系管理等业务领域的需求。系统支持的服务器平台包括 Windows NT、AIX、Sun Solaris 以及 OS/390、OS/400。4.5.1 数据挖掘的实现方法与多
126、维分析不一样,数据挖掘具有更深层的意义。其实现的一般过程如下:明确挖掘的目的。在进行数据挖掘前,一定要明确挖掘的目标。因为电信业务变化快,不同的时期,挖掘的对象并不一样,挖掘目标也千差万别,而挖掘目的不一样,决定了挖掘使用的模型和算法完全不一样。明确影响挖掘目的的可能因素和结果。影响用户消费行为的因数是多种多样的,要比较的指标也是多种多样的,所有这些因素均应在模型中考虑。确定数据来源、确定数据整理方法。根据上述确定的因素,定义原始指标和衍生指标。整理数据。根据上述定义的因数和指标,将原始数据进行整理。数据挖掘。根据确定的指标和因数,对用户进行分类、统计、分群、预测。在挖掘后,往往还要用多维分析
127、进行报表和图形演示。挖掘结果应用。根据挖掘结果,应用所有用户,预测业务发展趋势。挖掘结果分析。根据挖掘和多维分析结果,填写分析报告,以直观的图形或语言文字表示。影响数据挖掘准确性的几个关键点是:挖掘目标是否明确、因素和指标考虑是否完整、使用的数据是否具有代表性、是否使用合理的挖掘算法、是否能理解挖掘结果。综合上述因素,我们认为,数据挖掘是一个长期的任务,由于不同的挖掘目的使用不同的挖掘算法,不同的地区影响用户消费行为的因素不完全一致,因此,数据挖掘不可能作为一个简单的软件产品进行简单的销售完成。对于数据挖掘,最现实的是部分模型可以通用;而对其它的不通用的分析,则需要以咨询方式进行。4.5.2
128、数据挖掘基本方法A 关联挖掘(association)发现一个事务中不同操作相关性的概率。例如,一条开户记录为一个事务,用户号为其标示,申请短信为一个操作,申请呼叫转移为另外一个操作,通过挖掘,发现申请短信的人 80%必定申请呼叫转移,申请呼叫转移的人不一定申请短信。在这种情况下,可以推出将呼叫转移打包在短信服务中,可以提高用户的服务质量。B 人口统计学分群挖掘(demographic clustering)根据记录中最频繁出现的特征,将相关记录进行分类。例如,按照月通话费、长话费消费情况,将用户进行分类,对不常出现的记录将标示为其他类别。该分群方法在实际中是经常使用的。C 神经元分群挖掘(n
129、eaural clustering)其功能与上述方式类似,但采用的统计方式不一样。神经元分类方式按照所选定的指标,计算每个记录与中心点之间的距离,并不停地调整中心点;用该分类方法分出的类型,没有其它类型,分成的类别数目一定是以指数方式存在。D 序列模式挖掘(sequencial pattern)发现周期性可预测的模式。例如,可以发现用户在关机后多长时间来缴费。E 相似序列挖掘(similarity sequence)发现序列数据中相似子序列及比例。例如,在通话费、长话费位于一类的用户中,根据用户不同时间的消费相似性,将用户再进行分类,根据该分类结果可以推出对该序列中的用户应该如何进行优惠。F
130、决策树分类挖掘(decision tree classification)根据用户的性质和其它消费行为,分析产生某项结果的原因。如,可以根据用户的性质、消费状况和缴费情况,分析用户流失的原因。比如,发现消费额度小于 30 元的用现金缴费的女性,80%可能会流失。G 神经元分类挖掘(neaural classification)挖掘目的与上述挖掘类似,但算法不一样。其类别仍然按照与所选中心点的距离计算,分出的类别没有其它类。H 径基函数(RBF)预测挖掘(radia basis function prediction)一个记录中某个字段的值对其它字段的依赖关系。例如,发现不同类型的用户,长话费与
131、通话费、漫游类型、用户类型的依赖关系。I 神经元预测挖掘(neaural prediction)基于神经元网络算法的预测,对于每一组入口参数,通过神经元网络的黑箱产生唯一输出。4.5.3 数据挖掘与多维分析相结合最经常使用的挖掘算法有演示分群、树分类挖掘和 RBF 预测挖掘。另外,还有相应的统计方法如:回归、主分量分析、曲线拟合、因子分析。数据挖掘是一个归纳整理的过程,在我们的实际应用中,我们发现,数据挖掘往往要和 OLAP 紧密结合,才能真正产生有意义的结果。同时,数据挖掘不能对没有数据源的挖掘目的进行挖掘。因此,在定义优惠模型后,如果没有相应的测试数据,系统将无法预演或模拟优惠后的用户行为
132、,并对优惠政策作出评估。第五章第五章 工程服务和售后服务工程服务和售后服务5.1 工程服务工程服务IBM 软件服务部可根据客户的需要,在客户 BI 系统项目建设中提供 IBM软件顾问服务。IBM 软件服务部将提供专人对项目进行支持。5.2 售后服务售后服务IBM 软件服务部可提供 IBM 数据仓库的以下服务:IBM 数据仓库的安装及配置服务;IBM 数据仓库的维护服务;IBM 数据仓库的顾问服务;5.2.1 IBM 数据仓库的安装及配置服务按照客户计划的安装日程,安排专业软件安装工程师到达客户指定地点进行IBM 数据仓库的安装及配置。5.2.2 IBM 数据仓库的维护服务针对客户进行维护的 I
133、BM 数据仓库软件,IBM 软件服务部将提供 7*24 小时的电话及现场支持服务。一般事件的服务时间为星期一到星期五的上午八点半至下午五点,公共假日除外。对于一般事件,技术支持工程师将在收到客户电话后将对客户的请求进行积极响应。对已报告的一般事件,技术支持工程师将在每个工作日与客户进行联系,以跟踪问题的进展状态。 对于紧急事件,IBM 软件服务部将向客户提供 7*24 可联系的服务电话以便客户及时联系。对于已报告的紧急事件,技术支持工程师将每隔四个小时与客户进行联系,以跟踪问题的进展状态。对远程不能解决的紧急事件,IBM 软件服务部将根据客户的实际需要安排工程师到现场解决问题。5.2.3 IB
134、M 数据仓库的顾问服务在客户开发数据仓库应用时,IBM 可对客户所使用的数据仓库软件提供现场顾问咨询服务。5.2.4 IBM 培训服务IBM 软件服务部可提供 IBM 数据仓库的技术培训,培训包括初级和高级培训二种。培训地点:IBM 培训中心或客户指定地点培训时间:客户提前一个月通知 IBM,IBM 可按客户安排时间开课A IBM 数据仓库初级培训天数:1 天授课内容:IBM 数据仓库的简单介绍参加培训人员要求:希望对 IBM 数据仓库了解的软件技术人员B IBM 数据仓库高级培训天数:13 天授课内容:IBM DB2 UDB 技术培训:5 天DB2 Warehouse Manager 技术培
135、训:2 天OLAP Server 技术培训 :3 天DB2 Intelligent Miner 技术培训 :3 天参加培训人员要求:对数据库有一定的基本知识5.3 技术文档技术文档IBM 数据仓库/商业智能产品包括完整的中文版手册。包括:数据库 DB2 UDB 的安装、管理、使用、开发、系统维护、数据移动、复制、性能调优等的手册。数据仓库管理器 DB2 Warehouse Manager 的安装、开发手册。多维分析服务器 DB2 OLAP Server 的安装、开发、管理、维护、数据接口等手册。智能数据挖掘服务器 DB2 Intelligent Miner for Data 的安装、使用、开发手册。智能挖掘打分工具 DB2 Intelligent Miner Scoring 的安装、使用手册。前端展现工具 DB2 OLAP Analyzer 的安装和使用、开发手册。