[工程科技]社会保险OLAP系统的设计与实现.doc

上传人:sccc 文档编号:4534834 上传时间:2023-04-26 格式:DOC 页数:99 大小:917.50KB
返回 下载 相关 举报
[工程科技]社会保险OLAP系统的设计与实现.doc_第1页
第1页 / 共99页
[工程科技]社会保险OLAP系统的设计与实现.doc_第2页
第2页 / 共99页
[工程科技]社会保险OLAP系统的设计与实现.doc_第3页
第3页 / 共99页
[工程科技]社会保险OLAP系统的设计与实现.doc_第4页
第4页 / 共99页
[工程科技]社会保险OLAP系统的设计与实现.doc_第5页
第5页 / 共99页
点击查看更多>>
资源描述

《[工程科技]社会保险OLAP系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《[工程科技]社会保险OLAP系统的设计与实现.doc(99页珍藏版)》请在三一办公上搜索。

1、65摘 要某市社会保险部门已经拥有成熟的OLTP数据库系统,经过长期的业务处理和常规管理,他们积累了大量的业务数据。要充分利用这些积累起来的海量数据,从中获取可用于决策的有用信息,可行的办法是建立专门用于决策支持的数据仓库系统。本课题的任务就是在建立起来的数据仓库的基础上进行多维(OLAP)分析。我们在数据仓库中存储海量数据,并面向主题建立数据立方。在建立起来的两个数据立方的基础上,本系统将实现这些功能展示多维数据,高级查询所需的有用信息,生成用于决策的数据报表,生成用于决策的图形报表。本论文正文内容包括五大模块:引言,OLAP概述,OLAP开发工具概述,项目系统的设计,项目的技术实现。 引言

2、模块描述了数据仓库的市场现状、技术现状、项目背景、项目任务和论文写作安排。OLAP概述模块阐述了数据仓库的基本理论和多维分析的基本理论。OLAP开发工具概述模块介绍了基于SQL Server 2000的分析服务技术,MDX查询语言,ADO MD对象模型,DSO对象模型,OWC组件技术。项目系统的设计模块描述了本项目数据仓库体系结构,数据仓库模型,数据立方模型。项目的技术实现模块介绍了访问多维数据库的算法和VB代码,客户端应用程序的建立和使用。【关键词】 社会保险,数据仓库, 多维分析,OLAPAbstractThe social insurance department of one city

3、 has been equipped a very mature database system of OLTP. After transacting and managing the daily operations by using the OLTP for a long time, they have accumulated a great deal of the transacting data. In order to make good use of the mass data as well as to obtain the useful information which ca

4、n be used to support decisions, a feasible way is to establish a data warehouse system which can be wholly used to support decisions. The mission of this project is to do the OLAP analysis which base on the established data warehouse. We store the mass data in the data warehouse, and establish the d

5、ata cubes according to the tops. This system will achieve many functions on the basis of the two data cubes established. It can show the multi-dimension data. Users can query the useful information from it. It can generate the data reports and the charts which will be used to support the decisions.T

6、he text content of this dissertation includes 5 modulesthe preface, the summary of OLAP, the summary of tools used in developing OLAP, the designing of the system, the technical achieving of the project.The first module describes such content as the status quo of data warehouse in market field, the

7、status quo of data warehouse in Technology field, the background of the project, the mission of the project and the content arrangement of this dissertation. The second module describes the basal theories of data warehouse and OLAP. The third module describes the tools used in developing OLAP, inclu

8、ding the analysis technology which base on SQL Server 2000, query language of MDX, object model of ADO MD, and component technology of OWC. The fourth module describes system framework of the data warehouse established, the model of the data warehouse established, and the model of the data cubes est

9、ablished. The fifth module introduces the program arithmetic as well as its VB code, and the establishing as well as the using of the applications at the clients end.【Key words】 Social insurance, Data warehouse, multi-dimension analysis, OLAP目 录第1章引言71.1数据仓库现状概述71.1.1数据仓库市场现状71.1.2数据仓库技术现状71.2论文背景概述

10、91.2.1需求背景101.2.2论文任务101.3论文写作安排11第2章OLAP理论概述132.1数据仓库理论132.1.1什么是数据仓库132.1.2数据仓库系统的体系结构142.2多维分析(OLAP)理论162.2.1OLAP的12条准则172.2.2维的概念182.2.3OLAP的分析方法192.2.4OLAP的分类19第3章OLAP开发工具概述233.1SQL Server 2000 对OLAP开发的支持233.1.1SQL Server 2000 中Analysis Services的概述233.1.2SQL Server 2000 中Analysis Services的特点243

11、.1.3SQL Server 2000 决策支持系统263.1.4Analysis Services 客户端体系结构273.2MDX在多维数据库中的应用283.2.1MDX 简介283.2.2MDX 基本语法293.2.3MDX高级应用333.3ADO MD对数据仓库的访问383.3.1ADO和ADO MD383.3.2ADO MD的对象模型383.3.3DSO413.4OWC组件技术42第4章社会保险多维分析系统设计444.1系统架构444.2数据仓库模型454.3OLAP系统数据模型464.3.1OLAP系统共享维设计464.3.2OLAP系统数据立方设计47第5章社会保险多维分析系统技术

12、实现485.1Microsoft Visual Basic 实现多维数据查询485.1.1ADO MD对多维数据库的访问485.1.2DSO编程访问多维数据库495.1.3OWC技术编程使用535.2客户端应用程序的功能和使用545.2.1软件功能概述545.2.2浏览多维数据集595.2.3查询多维数据库60结论与展望63致 谢66参考文献68第1章 引言1.1 数据仓库现状概述1.1.1 数据仓库市场现状据调查,财富500强企业中已经有85%的企业建成或正在建立数据仓库。数据仓库与Internet一样,正在成为最快的IT增长点。1996年,全球企业在数据仓库上的投资达到16.8亿美元,并且

13、以每年19.1%的速度增长。IDC在1996年的一次对20世纪90年代前期进行的62个数据仓库项目的调查结果表明:进行数据仓库项目开发的公司平均在23年的时间内获得了平均为321%的投资回报率!数据仓库在中国市场的应用还处在起步阶段,市场前景非常广阔,研究价值非常高。1.1.2 数据仓库技术现状从计算机诞生后的几十年以来,随着计算机软硬件技术的飞速发展,数据库技术也得到了飞速的发展,特别是关系数据库的出现开创了数据库管理的一个新时代。此后几十年,关系数据库的应用一统天下。需要是发明之母。近年来,当联机事务处理(OLTP)系统应用到一定阶段后,用户发现,单靠拥有OLTP已经不足以获得市场竞争的优

14、势,他们需要对其自身业务的运作以及整个市场相关行业的情况进行分析,从而做出有利的决策。这种决策需要对大量的业务数据,包括历史业务数据进行分析后才能做出。这种基于业务数据的决策分析就是联机分析处理,即OLAP。传统的OLTP强调的是更新数据库,即向数据库中添加信息;OLAP强调的是从数据库中获取和利用信息。将大量的业务数据应用于分析和统计原本是一个简单和自然的想法。但在实际操作中,要获取到有用的信息却十分困难。原因如下:(1)、OLTP强调的是密集的数据更新处理性能和系统的可靠性,并不关心数据查询的方便与快捷。OLAP和OLTP对系统的要求不同,同一个数据库在理论上都难以做到两全。(2)、业务数

15、据往往存放于分散的异构环境中,不易统一查询访问,而且还有大量的历史数据处于脱机状态,形同虚设。(3)、业务数据的模式是针对OLTP系统而设计的,数据的格式和描述方式并不适合非计算机专业人员进行业务上的分析和查询。针对这一问题,人们设想专门为业务的统计和分析建立一个数据中心,它的数据来自OLTP系统、异构的外部数据源、脱机的历史业务数据等。这个数据中心是一个联机的系统,专门为分析统计和决策支持应用服务,通过它可以满足决策支持和联机分析应用所要求的一切。这个数据中心就是数据仓库(DW)。20世纪90年代以来,计算机技术,尤其是数据库技术的发展为DSS提供了技术支持。激烈的市场竞争促进了高层次决策人

16、员对DSS的实际需求。技术和市场的共同作用,促成了以DW为核心、以OLAP和DM(Data Mining)工具为手段建设DSS的可行方案。随着数据库技术的发展,DW需要以下数据库技术的支持。(1)、高性能数据库服务器DW的应用不同于传统DB的OLTP应用。传统DB的应用是操作型的,而DW的应用是分析型的。分析型应用涉及的数据量大,查询要求复杂,因此,它要求高性能的DBMS核心的支持,同时DBMS必须具有良好的查询优化机制。(2)、并行数据库技术DW中的数据量大,而且随着时间的延长,新的数据还会不断加入。DW中数据通常是GB甚至TB级的,即超大规模数据库(VLDB)。并行数据库技术是存储和管理V

17、LDB,并提供VLDB复杂查询处理的有效技术。(3)、数据库互操作技术DW中的数据大多来自企业或行业中已运行的OLTP数据库或外部数据源。这些数据库常常是异构的,甚至是文件系统中的数据。DW必须从这些异构数据源中定期抽取、转换和集成所需要的数据,并把它们存入DW中。因此,异构数据源之间的互访和互操作技术是必需的。近十年来,全球数据库厂商在数据仓库技术市场上展开了激烈的竞争,到了今天,数据仓库以及基于此技术的商业智能在技术上已经比较成熟,随着市场的需求,它将进一步走向更加成熟和完善。1.2 论文背景概述1.2.1 需求背景近十年来,信息技术已极大地提升了社保部门在业务处理和常规管理方面的能力,管

18、理和决策部门对信息系统也提出了更高一级的需求。随着我国社会保险制度改革的深入,“统帐结合”模式的完善和统一,覆盖面的逐步扩大和社会化管理程度的不断提高,我国社会保险工作已由“粗放”转向“精深”,管理复杂性和决策难度也日益提高。在预测决策方面,由于现阶段的社会保险政策研究和预测决策没有引入面向政策和制度层面的决策方法和分析工具,使其无法满足社会保险宏观决策的现实需求;在基金监控方面,现阶段的应用系统也只能在业务处理和常规管理方面发挥作用,无法防范在政策和制度方面的漏洞和缺陷,无法更好地利用这些几十年积累的各种数据,更不能有效发现那些在经验之外的规律和推测之外的模式。1.2.2 论文任务正是在社保

19、部门当前的这种急迫需求下,本课题希望从当前的海量数据中寻找潜在的规律和隐藏的知识。因此,本课题的任务是建立某市社会保险部门的决策支持系统,即数据仓库系统。这是一个大课题,课题组计划从2004年3月开始用一年半的时间来开发,分三个阶段行。第一阶段,用半年时间熟悉相关理论和掌握相关技术,建立简易的系统模型。第二阶段,用半年时间就系统模型和客户进行进一步沟通,确定更为明确的需求主题,扩充与完善数据仓库模型;第三阶段,用半年时间建立数据挖掘模型。本论文解决的是课题的第一阶段任务,即建立社保部门的数据仓库体系模型并进行多维分析,重点是多维分析。我们使用DTS技术向建立好的数据仓库模型导入原始数据,在这个

20、数据仓库的基础上,按照决策需求中有关社保基金收缴与拨付的主题,建立两个数据立方“在职人员基金收缴立方”和“离退人员基金拨付立方”。然后,通过OLAP工具对数据立方进行多维分析,包括多维数据浏览、多维数据查询与图形报表生成等。1.3 论文写作安排论文首先介绍了数据仓库技术的发展现状和课题的背景及任务,然后介绍课题涉及的理论和开发工具,最后阐述课题的开发过程和开发结果。论文写作结构安排如下:第1章 引言。首先介绍数据仓库技术的市场和技术现状,然后介绍课题的背景及任务,最后介绍论文写作安排。第2章 OLAP概述。首先介绍数据仓库的理论,包括基本概念及其体系结构;然后介绍多维分析(OLAP)的理论,包

21、括OLAP基本概念、分析方法和它的分类。第3章 OLAP开发工具概述。首先介绍了SQL Server 2000在数据仓库和分析服务上的应用,然后介绍了MDX语言在对多维数据库查询中的应用,还介绍了ADO MD对象模型对多维数据库的访问,最后介绍了OWC组件技术。第4章 社会保险多维分析系统设计。首先介绍了该市社保部门数据仓库系统的系统架构,然后介绍了建立了的数据仓库模型,最后介绍了该市社保部门OLAP数据模型的设计过程。第5章 社会保险多维分析系统技术实现。首先介绍了在VB中访问和查询多维数据集的程序算法和部分VB代码,然后介绍了客户端应用程序的功能和详细的使用过程。最后是本论文的结论和展望。

22、首先介绍了本课题到目前为止所取得的工作成果,然后分析了在完成本课题工作任务的过程中遇到的问题,最后对课题在下一步的研究进程及其在未来投入使用后所取得的成果作了展望。第2章 OLAP理论概述2.1 数据仓库理论2.1.1 什么是数据仓库目前,数据仓库一词尚没有一个统一的定义,著名的数据仓库专家W.H.Inmon在其著作Building the Data Warehouse一书中给予如下描述:数据仓库(Data Warehouse)是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数

23、据集合,用于支持管理决策。对于数据仓库的概念我们可以从两个层次予以理解,首先,数据仓库用于支持决策,面向分析型数据处理,它不同于企业现有的操作型数据库;其次,数据仓库是对多个异构的数据源有效集成,集成后按照主题进行了重组,并包含历史数据,而且存放在数据仓库中的数据一般不再修改。根据数据仓库概念的含义,数据仓库拥有以下四个特点: 1、面向主题。操作型数据库的数据组织面向事务处理任务,各个业务系统之间各自分离,而数据仓库中的数据是按照一定的主题域进行组织。主题是一个抽象的概念,是指用户使用数据仓库进行决策时所关心的重点方面,一个主题通常与多个操作型信息系统相关。2、集成的。面向事务处理的操作型数据

24、库通常与某些特定的应用相关,数据库之间相互独立,并且往往是异构的。而数据仓库中的数据是在对原有分散的数据库数据抽取、清理的基础上经过系统加工、汇总和整理得到的,必须消除源数据中的不一致性,以保证数据仓库内的信息是关于整个企业的一致的全局信息。 3、相对稳定的。操作型数据库中的数据通常实时更新,数据根据需要及时发生变化。数据仓库的数据主要供企业决策分析之用,所涉及的数据操作主要是数据查询,一旦某个数据进入数据仓库以后,一般情况下将被长期保留,也就是数据仓库中一般有大量的查询操作,但修改和删除操作很少,通常只需要定期的加载、刷新。4、反映历史变化。操作型数据库主要关心当前某一个时间段内的数据,而数

25、据仓库中的数据通常包含历史信息,系统记录了企业从过去某一时点(如开始应用数据仓库的时点)到目前的各个阶段的信息,通过这些信息,可以对企业的发展历程和未来趋势做出定量分析和预测。2.1.2 数据仓库系统的体系结构数据仓库系统是一个包含四个层次的体系结构,具体由图2-1表示:图2-1 企业数据仓库系统体系结构企业数据仓库的建设,是以现有企业业务系统和大量业务数据的积累为基础。数据仓库不是静态的概念,只有把信息及时交给需要这些信息的使用者,供他们做出改善其业务经营的决策,信息才能发挥作用,信息才有意义。而把信息加以整理归纳和重组,并及时提供给相应的管理决策人员,是数据仓库的根本任务。因此,从产业界的

26、角度看,数据仓库建设是一个工程,是一个过程。数据源:是数据仓库系统的基础,是整个系统的数据源泉。通常包括企业内部信息和外部信息。内部信息包括存放于企业操作型数据库中(通常存放在RDBMS中)的各种业务数据和办公自动化(OA)系统包含的各类文档数据。外部信息包括各类法律法规、市场信息、竞争对手的信息以及各类外部统计数据及各类文档等。 数据的存储与管理:是整个数据仓库系统的核心。在现有各业务系统的基础上,对数据进行抽取、清理,并有效集成,按照主题进行重新组织,最终确定数据仓库的物理存储结构,同时组织存储数据仓库元数据(具体包括数据仓库的数据字典、记录系统定义、数据转换规则、数据加载频率以及业务规则

27、等信息)。按照数据的覆盖范围,数据仓库存储可以分为企业级数据仓库和部门级数据仓库(通常称为“数据集市”,Data Mart)。数据仓库的管理包括数据的安全、归档、备份、维护、恢复等工作。这些功能与目前的DBMS基本一致。OLAP服务器:对分析需要的数据按照多维数据模型进行再次重组,以支持用户多角度、多层次的分析,发现数据趋势。其具体实现可以分为:ROLAP、MOLAP和HOLAP。ROLAP基本数据和聚合数据均存放在RDBMS之中;MOLAP基本数据和聚合数据均存放于多维数据库中;而HOLAP是ROLAP与MOLAP的综合,基本数据存放于RDBMS之中,聚合数据存放于多维数据库中。前端工具与应

28、用:前端工具主要包括各种数据分析工具、报表工具、查询工具、数据挖掘工具以及各种基于数据仓库或数据集市开发的应用。其中数据分析工具主要针对OLAP服务器,报表工具、数据挖掘工具既针对数据仓库,同时也针对OLAP服务器。2.2 多维分析(OLAP)理论多维分析即联机分析处理 (OLAP) 的概念最早是由关系数据库之父E.F.Codd于1993年提出的。当时,联机事务处理 (OLTP)已经不能满足终端用户对数据库查询分析的需要。因此,Codd提出了多维数据库和多维分析的概念,即OLAP (on-line analytical processing,联机分析处理),在通常意义上是指针对特定问题的联机数

29、据访问和分析。OLAP委员会对OLAP的定义是,使分析人员、管理人员或执行人员能够从多种角度对从原始数据中转化出来的、能够真正为用户所理解的、并真实反映企业维特性的信息进行快速、一致、交互地存取,从而获得对数据的更深入了解的一类软件技术。2.2.1 OLAP的12条准则Codd提出了OLAP的12条准则,用来描述OLAP系统,即: 准则1:OLAP模型必须提供多维概念视图; 准则2:透明性准则; 准则3:存取能力推测; 准则4:稳定的报表能力; 准则5:客户/服务器体系结构; 准则6:维的等同性准则; 准则7:动态的稀疏矩阵处理准则; 准则8:多用户支持能力准则; 准则9:非受限的跨维操作;

30、准则10:直观的数据操纵; 准则11:灵活的报表生成; 准则12:不受限的维与聚集层次。2.2.2 维的概念OLAP的目的是满足决策支持或多维环境特定的查询和报表需要。它的技术核心是“维”这个概念,因此,OLAP也可以说是多维数据分析工具的集合。“维”是人们观察数据的角度,是一种高层次的类型划分,是考虑问题的一类属性,属性集合构成一个维。例如时间维、地理维等。“维”一般包含着层次关系,维的层次是指人们观察数据的某个特定角度(即某个维)还可以存在细节程度不同的各个描述方面。例如,时间维可以向下再划分出年、季、月、日等不同层次;地理维可以划分为省、市、县、乡等层次。在OLAP中,维的一个具体取值称

31、为维的成员,也就是将数据项在某维中位置的描述称为维的成员。例如具体的一个日期“2002年12月1日”,就是在时间维上的一个成员,它是有层次的,是时间维上一个位置的具体描述。很多维和变量组合起来,成为“多维数组”,表示为(维1,维2,维n,变量)。在OLAP中,通过对维进行不同的操作,能够更加深入分析数据,了解数据中所包含的有用信息。维有自己的固定属性,如层次结构(对数据进行聚合分析时要用到)、排序(定义变量时要用到)、计算逻辑(是基于矩阵的算法,可有效的指定规则)。这些属性对进行决策支持很有用。2.2.3 OLAP的分析方法OLAP的基本多维分析方法有钻取(roll up和drill down

32、)、切片(slice)和切块(dice)、以及旋转(Rotate)/转轴(pivot)等。钻取是改变维的层次,变换分析的粒度。它包括向上钻取(roll up)和向下钻取(drill down)。roll up是在某一维上将低层次的细节数据概括到高层次的汇总数据,或者减少维数;而drill down则相反,它从汇总数据深入到细节数据进行观察或增加新维。切片和切块是在一部分维上选定值后,关心度量数据在剩余维上的分布。如果剩余的维只有两个,则是切片;如果有三个,则是切块。旋转/转轴是通过旋转纬度或纬度的层次,得到不同视角的数据,便于从不同的侧面观察数据,即在表格中重新安排维的放置(例如行列互换)。

33、2.2.4 OLAP的分类有关OLAP的分类,我们以图2-2来表示:图2-2 OLAP的分类目前常见的OLAP存储方式有三种,即基于多维数据库的MOLAP方式(处理多维数据存储),基于关系数据库的ROLAP方式(直接从关系数据库访问数据),HOLAP方式(前两者的混合)。1、MOLAPMOLAP严格遵照Codd的定义,自行建立多维数据库。它将按照主题定义的OLAP分析所要的数据,对数据的存放采用多维,生成的多维立方体已经计算生成了一些汇总值。当用户发出请求时,从多维立方体中取得数据,而不是从数据仓库中取得数据,这样对用户响应的时间短。但由于多维立方体的生成,造成了数据存储空间的增大,并且多维立

34、方体中不可能存储大量的细节数据,综合数据较多,所以分析的颗粒度不会太细。MOLAP的体系结构如图2-3所示。图2-3 MOLAP的体系结构2、ROLAP 在多个软件厂商中,有些流派认为,可以沿用关系型数据库来存储多维数据,于是,基于稀疏矩阵表示方法的星型结构(star schema)就出现了。 ROLAP方式在数据的存储中,使用了星型模式的概念。使用事实表来存储事实的度量值和各个维的码值,使用维表来存放维的元数据(维的层次、成员类别等描述信息)。ROLAP以关系型结构进行多维数据的表示和存储,而不生成多维立方体,只是存储数据模型与数据仓库之间的映射关系,真正的关系物理存储在数据仓库。在进行多维

35、分析时,OLAP服务器根据定义的模型,分析用户的需求,从数据仓库中取得数据,进行实时分析。这样虽增加了响应时间,但相对MOLAP节省了空间,并且分析可以达到具体细节数据,即考察数据的颗粒度较小。当分析应用的灵活性较大时,应以ROLAP为主。ROLAP的体系结构如图2-4所示。图2-4 ROLAP的体系结构3、HOLAPHOLAP是多维数据库和关系数据库相混合的OLAP,其中事实表保存在关系数据库中,聚集信息保存在多维数据库中。HOLAP的体系结构如图2-5所示。 图2-5 HOLAP的体系结构第3章 OLAP开发工具概述3.1 SQL Server 2000 对OLAP开发的支持SQL Ser

36、ver 2000 中,微软进一步完善了对数据仓库技术的解决方案,其中包括新版的OLAP Services,同时增加了数据挖掘的功能,并称它们为Analysis Services。3.1.1 SQL Server 2000 中Analysis Services的概述图3-1显示了微软SQL Server Analysis Services的体系结构。图3-1SQL Server Analysis Services的体系结构图3-1显示了几个工具,每个工具都有独特的功能。这些工具可被分成几个部分:数据源、数据转换和导出、数据存储、数据分析和数据表示。3.1.2 SQL Server 2000 中A

37、nalysis Services的特点SQL Server 2000 中Analysis Services具有易用性、灵活的数据模型、良好的可伸缩性、高度集成、广泛的应用开发接口和开放的体系等技术特点。1、易用性SQL Server 2000 中OLAP提供了大量的使用向导和许多可视化的编辑器。通过这些向导和编辑器,用户可以完成诸如数据立方体的创建和编辑,维的生成和编辑等工作。OLAP中提供的浏览器使用户可以很容易地浏览数据立方体中的数据以及各种数据库对象的属性。Microsoft提供的教程还介绍了OLAP技术的原理和在SQL Server 2000 中的实现方式,用户可以很快掌握OLAP技术

38、。2、灵活的数据模型灵活的数据模型首先体现在SQL Server 2000 同时支持基于多维数据库存储模式、基于关系数据库存储模式和两者混合的存储模式。SQL Server 2000 支持对数据立方体的多种分区方式,对同一种数据立方体的不同分区在不同的地方以不同的存储模式存储。在支持对数据立方体的分区的同时还支持对分区的合并操作,即不同的分区还可以重新组织成一个完整的分区。通过和数据立方体技术的结合,SQL Server 2000 支持不同用户对数据立方体的并发访问,用户对数据立方体的写操作的它们的登陆信息捆绑在一起,然后被存储到数据立方体的分区中,当浏览数据立方体中的数据的时候,不同的分区中

39、的数据再集成在一起。3、良好的可伸缩性SQL Server 2000 支持对聚集信息的优化分配,它提供了一个Storage Design Wizard,通过它可以由用户自定义对聚集信息的处理方式,从而在系统性能和存储空间之间寻求一个合适的平衡点。SQL Server 2000 支持面向应用的优化,它可以实现对特定的、应用比较频繁的查询进行专门的优化,实现对系统性能的存储空间的精细控制。良好的可伸缩性还体现在数据压缩、分布式计算等方面。4、高度集成SQL Server 2000 集成了管理程序、安全控制、数据转移、元数据服务以及服务器/客户端缓冲等多种技术于一体,还提供了对OLE DB和ODBC

40、数据源的支持。5、广泛的应用开发接口和开放的体系SQL Server 2000 中的OLAP技术支持OLE DB和ADO编程接口,同时还支持基于COM接口的用户自定义函数。OLAP提供的服务器组件模型和决策支持对象可以被程序员使用,通过它们可以有效的扩展在线分析的功能。3.1.3 SQL Server 2000 决策支持系统SQL Server 2000决策支持系统(Decision Support System,DSS)包括OLAP服务器和数据透视表服务(PivotTable Service)。、OLAP服务器OLAP服务器是Analysis Services的核心,它从异构数据源中提取和组

41、织数据,并在多维数据库中对数据进行必要的聚集和处理。它也可以利用存放在OLTP数据库中的汇总表。通过DSO能访问分析服务器,也可以创建自定义应用来定制报表。、数据透视表服务数据透视表服务是客户端体系结构的核心。它有以下功能: 为客户端应用程序进行在线分析提供统一的与OLAP服务器的连接点。 作为服务提供支持使用关系型数据创建数据立方,实现多维功能,显示带OLAP扩展的OLEDB接口。 支持SQL子集,并能将查询结果以数据透视表的形势表示出来。 支持MDX,成为多维数据的提供者。 支持客户端应用直接从一个关系型数据源中创建本地数据立方。 支持客户端应用从存放在Analysis服务器上的数据挖掘模

42、型建立本地的数据挖掘模型。 支持用户从数据源中下载数据,并以多维结构保存在本地,以进行离线分析。3.1.4 Analysis Services 客户端体系结构图3-显示了微软SQL Server Analysis Services客户端的体系结构。 图3-2SQL Server Analysis Services客户端体系结构可见,Analysis Services客户端体系结构以数据透视表服务为核心。3.2 MDX在多维数据库中的应用3.2.1 MDX 简介MDX(Multi-Dimensional Expressions,多维表达式)是一种语法,支持多维对象与数据的定义和操作。MDX 在很

43、多方面与结构化查询语言 (SQL) 语法相似,但它不是 SQL 语言的扩展;事实上,MDX 所提供的一些功能也可由 SQL 提供,尽管不是那么有效或直观。如同SQL 查询一样,每个 MDX 查询都要求有数据请求(SELECT 子句)、起始点(FROM 子句)和筛选(WHERE 子句)。这些关键字以及其它关键字提供了各种工具,用来从多维数据集析取数据的特定部分。MDX 还提供了可靠的函数集,用来对所检索的数据进行操作,同时还具有用用户定义函数扩展 MDX 的能力。如同 SQL,MDX 提供管理数据结构的数据定义语言 (DDL) 语法。其中有用于创建(和删除)多维数据集、维度、度量值以及它们的坐标

44、对象的 MDX 命令。3.2.2 MDX 基本语法 1、 MDX语法定义简单MDX 查询的基本形式如下: SELECT , FROM WHERE axis_specification包括了语句中坐标轴的个数以及每个坐标轴的成员。每个定义一个坐标轴,MDX语句中子句的个数及坐标轴的个数。2、术语解析成员:代表维度中一次或多次数据出现的项。元组(tuple):不同维的成员的一个集合。坐标轴(axis):元组的集合。每一个坐标轴代表一个维。可指定 128 个轴。单元集(unit set):MDX对多维数据查询的结果。是原始立方的子集。单元(unit):由坐标轴相交确定的对象。切片(slice):切片

45、维将过滤多维数据。没有显示分配到某个坐标轴的维将作为切片维,根据其默认的成员过滤数据。该维出现在MDX语句的WHERE子句中。例如:SELECT 地理.城市名称.Members on columns, 时间.年.Members on rowsFROM 拨付立方WHERE (Measures.养老金拨付金额) 切片3、MDX语句例如下面的一个简单查询语句:SELECT Measures.社会保险收缴金额 on columns, 轴定义(列) 时间.1998年.二季度, 时间.1998年.三季度 on rows 轴定义(行)FROM 收缴立方 查询范围WHERE (地理.城市名称.西安) 切片维上

46、述查询返回西安市1998年2、3季度社会保险收缴金额总量。用来表示一组维或者一组维成员,每次只支持一个查询立方,WHERE子句定义了切片维,指明该维中的一个成员。4、MDX语法的使用1)、WITH语句的使用WITH操作符可以用来在MDX查询中定义计算成员。WITH操作符位于SELECT子句之前,它定义了一个用以定义计算成员的段,此段用单引号括起来。基本形式如下:WITH .SELECT ,.FROM WHERE 你可以利用一般的运算子如加(+)减(-)乘(*)除(/)來定义成员的公式,或是利用一般的数学运算公式來定义,如 SUM、AVG、COUNT 等。2)、函数的使用MDX语法是专门为Analysis Services设计的。MDX中函

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 教育教学 > 成人教育


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号