`

Analysis Services基础知识

阅读更多

Analysis Services基础知识

——深入SQL Server 2008

这一节中,我们将介绍Analysis Services的体系结构,这个体系结构在SQLServer2005中建立,并在SQL Server 2008中得以延续。我们还将研究Analysis Services的一些基础特性。



本书相关链接: http://turingbooks.iteye.com/admin/blogs/1135541

体系结构

图 20-1给出了Analysis Services体系结构的一个高层视图。主要组件是UDM(Unified Dimensional Model,统一维度模型),这是一个表示关系型和多维数据存储库的内聚维度模型。UDM提供了从客户程序(如Excel或SQLServer Reporting Services)到各种异构数据源的一个桥(标准表示)。不必使用各个数据源的本机语言(如特定的SQL语言)来访问数据源,UDM允许客户程序向 UDM发出命令。

很多Analysis Services功能都建立在UDM之上。这包括层次结构、分类、时间表示、语言转换和透视。甚至一些高级功能(如主动缓存和分析)也成为UDM的内置部分,相应地也是Analysis Services的功能。

随 着XML和Web服务变得越来越重要,Analysis Services以一种全面的方式支持这些当前的技术主流。AnalysisServices服务器的行为方式类似于一个Web服务,毫无疑问,管理这个 服务器要采用基于XML的语言。所有与Analysis Services服务器的客户端通信都通过基于标准的XML/A协议完成。

 

微 软仍在继续支持各种技术,目的是与XML/A提供的功能(ADOMD、ADOMDB.NET、OLE DB for OLAP和Win32)实现向后兼容。XML/A实际上是ASSL(Analysis ServicesScripting Language,Analysis Services脚本语言)的一个子集,XML/A发送操作命令,如Create、Alter和Process(分别创建一个多维数据集、修改一个多维数 据集,以及处理一个多维数据集)。ASSL也是用来指定Analysis Services中对象的语言。XML/A处理命令,ASSL的其余部分是面向Analysis Services对象的一个DDL。

BIDS 作为SQL Server BI的开发环境,使用了Visual Studio的开发风格(解决方案、项目和源文件)。与一个BIDS Analysis Services项目相关的源文件包含与Analysis Services对象相关的元数据。可以将这些文件提交到标准源代码控件(如Visual SourceSafe或Visual Studio TeamFoundation Server)。元数据语言是XML,存储在文件中。SQL Server Management Studio和BIDS使用XML/A与Analysis Services通信。

微软在SQL Server 2005的Analysis Services中引入了主动缓存,使得低延时应用有最小的管理开销。主动缓存的主要目的是对数据的过时性进行管理。例如,可以将主动缓存配置为在底层数 据改变时进行更新。如果缓存正在更新过程中,Analysis Services会足够聪明,指示查询不要从缓存取结果,而应对底层数据源运行查询。主动缓存最适合用在当底层数据改变时发出通知的关系数据库中。

SQL Server 2008中的Analysis Services不会将整个维度都缓存在内存中。类似于操作系统在内存中保留某些页而将某些页面切换到磁盘上,Analysis Services也使用了物理内存和磁盘空间。这种方法的好处是现在Analysis Services可以支持无限的维度大小。例如,SQLServer 2000的AnalysisServices要根据可用的物理RAM限制维度大小。现在Analysis Services可以利用缓存(将结果部分存储在磁盘上),因此不受RAM的限制。

开发环境

BIDS是Analysis Services开发的主要环境。这个应用实际上是Visual Studio 2008的一个版本,随SQL Server2008发布而没有额外费用。

在 开发人员将Analysis Services项目部署到一个服务器上之前,BIDS支持离线开发。这种离线开发是可行的,因为BIDS会使用所访问的数据源的模式快照。它创建的 AnalysisServices对象(多维数据集、维度、事实表,等等)只是这些对象的本地副本。开发人员必须将它们部署到一个特定的Analysis Services服务器。这样做真正的好处是,即使AnalysisServices未在本地运行,而且即使开发人员没有连接网络,也可以进行开发。

在 离线开发之上,BIDS为计算的创建提供了管理对话框和基于向导的支持。这些用户界面改进可以自动完成计算的管理,包括时间管理和解释、账户智能 (account intelligence)、财务聚合(financialaggregation)、对多种货币的支持,以及半累加(semi-additive)度量 值。如果不使用这些对话框和基于向导的支持,另一种做法就是手动编写这些计算。

注意    要理解术语半累加度量值,需要对Analysis Services对象有所了解。计算会在由维度组成的多维数据集上运行。完全累加度量值是对一个多维数据集的所有维度进行计算。半累加度量值则是对一个多维数据集的一部分而不是全部维度进行计算。

BIDS的另一个好处是对多种配置的支持。这样就可以对Analysis Services的多个实例部署项目。另外还支持本地化对象和转换,所以Analysis Services支持采用多种语言部署。

Analysis Services对象和概念

Analysis Services包括很多我们感兴趣的特性。在这里,我们将回顾其中最重要的一些对象和概念,这些对象和概念对于有效的BI实现尤其有用。我们将在下一节介绍更多特定于OLAP应用的概念。

1.数据源视图

DSV(Data source views,数据源视图)在数据源之上形成了一个虚拟层,包含与数据源相关的对象的一个子集(只是相关元素)。例如,一个DSV可能包含与工资处理有关的 表和视图的一个子集。利用这种可视化,开发人员可以重命名对象,还可以创建计算列和命名查询。命名查询支持的另一个好处是,开发人员可以访问基础视图而无 需要求用户对数据源有CREATEVIEW权限。

2.多维表达式

前面提到过,MDX是Analysis Services支持的语言,来实现计算和安全性规则。开发人员使用MDX查询AnalysisServices,并建立计算和KPI。

3.KIP框架和透视

KPI在SQL Server 2005中引入,这是一些服务器端对象,可以图形化表示一个值、该值的一个期望目标、指标的状态(好、坏等),以及度量值的走向。

例 如,一个证券所可以使用大拇指朝上(thumb-is-up)或大拇指朝下(thumb-is-down)的图片来指示是否买入或卖出某只股票。确定这一 点的底层算法可能相当复杂(涉及值、目标、状态和走向),不过KPI(公司度量值)可以很简单:买入(大拇指朝上的图片)或是卖出(大拇指朝下的图片)。

走向是一个方向性行为,可以与一个图片关联,如温度计、燃料表或者一个向上或向下的箭头。例如,一辆车可能在比赛中领先(KPI的状态),但是另一辆车可能很快追上(走向)。开发人员要使用MDX语言定义一个KPI的值、目标、状态和走向。

还 有一个功能可以支持用户特定的信息上下文,这就是透视。透视(perspective)是特性、用户定义的层次结构、操作和度量组的一个逻辑集合,经过优 化可以为给定的一类用户提供底层数据的一种相当精美的定制视图。可以认为AnalysisServices中的透视就相当于关系型引擎中的视图。

4.CLR集成

有 些情况下,Analysis Services开发人员可能仍需要用到采用某种高级语言完成的计算,如CLR(common language runtime,通用语言运行时)语言C#和VB.NET。在SQL Server 2008中,可以使用这种CLR语言创建SQL Server对象(如用户定义的函数等)。这个CLR语言支持不仅包括用户定义的函数,还包括存储过程和触发器。

可以使用Visual Studio 2008为SQL Server开发这种CLR插件。同一个Visual Studio解决方案完全有可能既包含一个AnalysisServices项目,同时包含一个C#或VB.NET项目来提供Analysis Services项目要用到的用户定义的函数(相当于一个应用和一个开发环境)。

5.AMO

从管理的角度看,AMO(Analysis Management Objects,分析管理对象)为创建和维护AnalysisServices对象公开了一个API。AMO可以处理管理任务,包括安全性和处理,甚至包括备份和恢复。

分享到:
评论

相关推荐

    Analysis Services 项目部署

    ### Analysis Services 项目部署知识点详解 #### 数据仓库与Analysis Services概览 数据仓库是一种用于存储和组织企业历史数据的特殊类型的数据库,旨在支持业务智能活动,特别是数据分析、报告和决策支持系统。它...

    analysis services

    ### Analysis Services 基础知识点解析 #### 一、Overview(概述) Analysis Services 是一种用于构建多维和数据挖掘分析应用程序的数据分析工具。它能够帮助用户处理大量的数据,并通过复杂的数据模型来支持业务...

    Analysis Services Tutorial SQL Server 2012

    《SQL Server 2012 Analysis Services教程》是针对数据分析师和数据库管理员的一份详尽指南,旨在深入理解和掌握微软的商务智能工具——Analysis Services。SQL Server 2012版本引入了许多增强功能,使得数据处理、...

    Microsoft SQL Server 2008 Analysis Services Unleashed

    通过以上章节的详细介绍,本书不仅提供了丰富的理论知识,还提供了大量的实践案例和技术细节,旨在帮助读者全面掌握Microsoft SQL Server 2008 Analysis Services的强大功能,从而更好地应用于实际的商业智能项目中...

    Microsoft SQL Server 2008 Analysis Services Step by Step 及随书光盘

    1. **SSAS基础知识**:首先,会介绍SSAS的基本概念,包括OLAP(在线分析处理)和数据挖掘,并讲解其在企业中的应用价值。 2. **安装与配置**:如何在Windows环境中安装和配置SQL Server 2008,以及设置Analysis ...

    SQL Server 2005 Analysis Services 教程

    SQL Server 2005 Analysis Services (SSAS) 是微软提供的一个强大的数据分析工具,主要...通过这个教程,你将获得构建高效、交互式BI解决方案的基础知识,这对于任何希望利用大数据进行分析的组织来说都是非常宝贵的。

    65520775BIandSQL2000AnalysisServices2

    标题 "65520775BIandSQL2000AnalysisServices2" 和描述 "65520775BIandSQL2000AnalysisServices" 暗示了这个压缩包可能包含与商业智能(BI)以及SQL Server 2000 Analysis Services相关的学习资料。标签 "mdx" 提示...

    SQL serve 2005 analysis service

    在这个专题中,我们将深入探讨SQL Server 2005 Analysis Service的基础知识。 首先,我们需要理解SQL Server 2005的核心概念。SQL Server是一个全面的数据库管理系统,它提供了数据存储、查询、报表和分析等功能。...

    Expert Cube Development with Microsoft SQL Server 2008 Analysis Services

    3. **MDX计算**:详细阐述了多维表达式语言(MDX)的基础知识及其在多维数据集中的应用,包括自定义计算成员、集和度量值的创建。 #### 四、部署、监控和性能调优 这部分内容着重于多维数据集的部署、监控和性能...

    Preparing and Mining Data with Microsoft® SQL Server™ 2000 and Analysis Services

    本篇将深入探讨这一主题的关键知识点,包括SQL Server 2000的功能、Analysis Services的作用、数据挖掘的基础、以及如何利用这些技术进行数据准备和分析。 ### SQL Server 2000的功能 SQL Server 2000是Microsoft...

    Sams.Microsoft.SQL.Server.2005.Analysis.Services

    标题与描述中的关键词"Sams....以上是对标题和描述中提及的"Sams.Microsoft.SQL.Server.2005.Analysis.Services"相关知识点的详细解释,涵盖了Analysis Services的基础概念、核心功能及其在商业智能领域的应用价值。

    Practical DMX Queries for Microsoft SQL Server Analysis Services 2008

    本文旨在深入探讨《实用DMX查询在Microsoft SQL Server Analysis Services 2008中的应用》这本书中涉及的关键知识点。该书由经验丰富的数据库设计与查询专家Art Tennick撰写,并得到了BI咨询专家Deepak Puri的技术...

    Expert cube development with microsoft SQL server 2008 analysis services

    - **MDX计算**:介绍MDX(Multidimensional Expressions)语言的基础知识及其在计算度量值和创建自定义成员中的应用。 ##### 2.4 部署、监控与性能调优 - **部署策略**:提供有关如何将多维数据集部署到生产环境的...

    Professional SQL Server 2000 data warehousing with analysis services-1861005407

    - **Analysis Services**:作为SQL Server 2000 的一个组件,Analysis Services 提供了多维数据分析功能,支持OLAP操作。 - **多维数据集**:通过预计算和存储多维数据集,加速查询响应时间。 - **数据挖掘**:...

Global site tag (gtag.js) - Google Analytics