热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

SSAS入门指南:基础知识与核心概念解析

###SSAS入门指南:基础知识与核心概念解析AnalysisServices是一种专为决策支持和商业智能(BI)解决方案设计的数据引擎。该引擎能够为报告和客户端应用提供高效的分析数据,并支持在多维数据模型中构建高性能的分析应用。通过其强大的数据处理能力和灵活的数据建模功能,AnalysisServices成为了现代BI系统的重要组成部分。

一、Analysis Services  

  Analysis Services是用于决策支持和BI解决方案的数据引擎。它提供报表和客户端中使用的分析数据。

  它可在多用途数据模型中创建高性能查询结构,业务逻辑和KPI(企业关键绩效指标),该数据模型可由任何支持Analysis Services作为数据源的客户端程序访问。

  多用途数据模型的创建:使用SQL Server Data Tools,并选择则表格或者多维和数据挖掘项目模板。

  多用途数据模型的数据填充:通常是数据仓库

  多为数据模型的使用:将它部署在特定服务器模式下运行数据库的Analysis Services实例。并使数据对应用程序连接的授权用户可用。

  Analysis Services实例:

  • 表格实例,运行表格模型
  • 多维和数据挖掘实例,运行OLAP多维和数据挖掘模型(默认)
  • PowerPivot for SharePoint,在SharePoint中运行PowerPivot或Excel数据模型。 

二、SSAS体系结构

  SSAS使用服务器组件和客户端组件为商业智能程序提供联机分析处理(OLAP)和数据挖掘功能。

  • 服务器组件:SSAS的服务器组件是应用程序msmdsrv.exe,它作为Microsoft Windows服务来实现。支持来自一个计算机的多个实例,每个Analysis Services实例作为单独的Windows服务实例来实现。该应用程序包含很多组件其中包括XMLA监听组件,查询处理器组件等。
  • 客户端组件:使用XMLA(XML for Analysis)与Analysis Services进行通信。XMLA基于SOAP的协议,用于发出命令和接收响应。查询语言:SQL,MDX(一种用于分析的行业标准查询语言),DMX(面向数据挖掘行业的查询语言)
  • OLAP的支持:允许用户设计、创建和管理由多个数据源聚合的数据的多维结构。多维分析是OLAP的核心。
  • 数据挖掘功能:允许用户设计、创建和处理数据挖掘模型。

三、多维数据分析的基本概念:

  观察变量:如数字1000

  度量值:没有上下文的数字是数据而不是信息,在寻找数字信息的过程中,首先要做的就是确定数据的度量值,如销售量、销售额等。通过增加标签,数字由数据变成了信息,这个标签就是元数据,将数据转换为信息的方式之一就是增加元数据。 度量值所在的表是事实数据表,常规多维数据集结构中只能有一个事实数据表。

  维:人们观察客观世界的角度,是一种高层次的类型划分。维包含着层次关系,可以把多项重要的属性作为多个维。如时间维,产品维,模型维等。时间维,产品的销售量随着时间的变化。包含维度信息的表叫做维度表。

  维度成员:维的一个取值称为维成员。如时间维上的某年某月某日。维成员不一定要在每个维层次上取值,如某年某月。

  层次结构:维度成员的集合以及这些成员的相对位置。如时间维的年月日三个层次。地理维的州 国家 城市 区 街道 门牌号。

  多维数据集(Cube):是一个数据集合,由数据仓库的子集构造。

  

  维度表:包含某维度信息的表。维度表由主键和维属性组成,维属性是维度表的列属性;产品维度表:Prod_id, Product_Name, Category, Color, Size, Price 时间维度表:TimeKey, Season, Year, Month, Date。维度表的主键是整型值,为了节省事实表的存储空间。

  事实表:包含度量值的表。如销售事实表:Prod_id(引用产品维度表), TimeKey(引用时间维度表), SalesAmount(销售总量,以货币计), Unit(销售量)

四、多维数据模型与结构

  目前主流的数据仓库建模分为两种,一种是实体关系建模(Entity-Relationship Modeling)和维度建模(Dimension Modeling)。这里讨论维度建模,这一部分是数据仓库的核心,模型的优劣至关重要。

 

1、概念模型

  概念模型也就是通常所说的需求分析。即在与用户交流的过程中,确定数据仓库索要访问的信息,这些信息包括当前、将来以及与历史用关的数据。

  概念模型的目标是建立面向主题的信息包图。由于超立方体在表现上缺乏直观性,尤其当维度超过三维以后,数据的采集和表示都比较困难。因此信息包图的目标也就是在平面上展开超立方体,使用二维表格表现多维特征。利用信息包图设计概念模型需要确定三大内容,以产品的销售情况分析和预测主题分析为例:

a)确定维度

  获取对电子商城中销售数据的多维特性分析,确定影响销售的维度:这里的时间、商品、商店、客户

b)确定类别

  对每个维度进行分析,确定它与类别之间的传递和映射关系。如时间有年、季度、月、周、日等。商品有大类、小类、具体商品等。

c)确定指标

  确定用户需要的指标体系,指标是用户最关系的信息。以销售情况作为依据确定相关的销售指标,如本期销售量,本期销售额,累计销售量,累计销售额等。

  

 

2、逻辑模型

  采用星型图建模技术可为数据仓库建立完善的逻辑模型。星型图用来描述数据仓库需求,因此也包括三个逻辑实体,维度、指标和详细类别。由信息包图可以知道,一个维度内的每个单元式一个类别,代表该维度内的一个详细的层次。

a)星型模式

  星型模式是一种多维的数据模型,它由一个事实表和逻辑上围绕这个事实表的维表组成。事实表是星型模式的核心,用于存放大量业务性质的事实数据,事实表中包含了度量属性和指向周围维表的外码,事实表中的一个事实指向每个维表中的一个元组。事实表中存放的大量数据是同主题密切相关的、用户最关心的、对象的度量数据。用户依赖于维度表中的维度属性,对事实表中的数据进行查询、分析进而得到支持决策的数据。

 

b)雪花模式

  雪花模式是星型模式的进一步扩展和规范化,也就是将与事实表关联的维表分为直接关联的主维表和与主维表关联的次维表。雪花模式比星型模式增加了层次结构,体现了维的不同粒度的划分。

 

c)星系模式

  当多个主题之间有公共的维时候,可以通过共享维表,把事实表连接起来。

 

雪花模式与星型模式的优缺点比较:

  从数据格式来看:雪花型使用规范化数据,星型使用反规范化数据。

  从加载内容来看,星形模型加载维度表,不需要在维度之间添加附属模型;雪花模型加载数据集市。

  从ETL复杂程度来看:星形模型ETL就相对简单,而且可以实现高度的并行化。

  从查询性能角度来看,在OLTP-DW环节,由于雪花型要做多个表联接,性能会低于星型架构;但从DW-OLAP环节,由于雪花型架构更有利于度量值的聚合,因此性能要高于星型架构。

  从模型复杂度来看,星型架构更简单。

  从层次概念来看,雪花型架构更加贴近OLTP系统的结构,比较符合业务逻辑,层次比较清晰。

  从存储空间角度来看,雪花型架构具有关系数据模型的所有优点,不会产生冗余数据,而相比之下星型架构会产生数据冗余。

  一般建议使用星型架构。因为我们在实际项目中,往往最关注的是查询性能问题,至于磁盘空间一般都不是问题。 当然,在维度表数据量极大,需要节省存储空间的情况下,或者是业务逻辑比较复杂、必须要体现清晰的层次概念情况下,可以使用雪花型维度。

五、OLAP以及分析服务

   OLAP:OLAP是一种技术,它能够使分析人员快速、一致、交互地从各个方面观察信息,以达到深入理解数据的目的。根据数据存储方式不同,olap可以分为rolap,molap,holap

  ROLAP:关系数据库来存储数据。

  优点:

–没有大小限制
   –现有的关系数据库的技术可以沿用.
   –可以通过SQL实现详细数据与概要数据的存储
   –现有关系型数据库已经对OLAP做了很多优化,包括并行存储、并行查询、并行数据管理、基于成本的查询优化、位图索引、SQL 的OLAP扩展(cube,rollup)等大大提高ROALP的速度
  缺点:
  –一般响应速度较慢
  –不支持有关预计算的读写操作
  –SQL无法完成部分计算
    •无法完成多行的计算
    •无法完成维之间的计算

  MOLAP:多维数据库来存储数据

  优点: 

  –性能好、响应速度快
  –专为OLAP所设计
  –支持高性能的决策支持计算
    •复杂的跨维计算
    •多用户的读写操作
    •行级的计算
  缺点:
  –增加系统复杂度,增加系统培训与维护费用
  –受操作系统平台中文件大小的限制,难以达到TB 级(只能10~20G)
  –需要进行预计算,可能导致数据爆炸
  –无法支持维的动态变化
  –缺乏数据模型和数据访问的标准

            

                                  

                                                         

 

 

 

 

 

 

 

 

  

转:https://www.cnblogs.com/mingcaoyouxin/p/3851161.html



推荐阅读
  • 本文详细介绍了如何安全地手动卸载Exchange Server 2003,以确保系统的稳定性和数据的完整性。根据微软官方支持文档(https://support.microsoft.com/kb833396/zh-cn),在进行卸载操作前,需要特别注意备份重要数据,并遵循一系列严格的步骤,以避免对现有网络环境造成不利影响。此外,文章还提供了详细的故障排除指南,帮助管理员在遇到问题时能够迅速解决,确保整个卸载过程顺利进行。 ... [详细]
  • 在使用 SQL Server 时,连接故障是用户最常见的问题之一。通常,连接 SQL Server 的方法有两种:一种是通过 SQL Server 自带的客户端工具,例如 SQL Server Management Studio;另一种是通过第三方应用程序或开发工具进行连接。本文将详细分析导致连接故障的常见原因,并提供相应的解决策略,帮助用户有效排除连接问题。 ... [详细]
  • 在搭建Hadoop集群以处理大规模数据存储和频繁读取需求的过程中,经常会遇到各种配置难题。本文总结了作者在实际部署中遇到的典型问题,并提供了详细的解决方案,帮助读者避免常见的配置陷阱。通过这些经验分享,希望读者能够更加顺利地完成Hadoop集群的搭建和配置。 ... [详细]
  • 在数据表中,我需要触发一个操作来刷新特定列的数据。例如,对于以下表格:| ID | Name | IsDeleted ||----|-------|-----------|| 1 | test | True || 2 | test2 | False |我希望在点击“更新”按钮时,能够仅刷新选定行的“IsDeleted”列。这将有助于确保数据的实时性和准确性。 ... [详细]
  • 内网渗透技术详解:PTH、PTT与PTK在域控环境中的应用及猫盘内网穿透配置
    本文深入探讨了内网渗透技术,特别是PTH、PTT与PTK在域控环境中的应用,并详细介绍了猫盘内网穿透的配置方法。通过这些技术,安全研究人员可以更有效地进行内网渗透测试,解决常见的渗透测试难题。此外,文章还提供了实用的配置示例和操作步骤,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 在使用SSH框架进行项目开发时,经常会遇到一些常见的问题。例如,在Spring配置文件中配置AOP事务声明后,进行单元测试时可能会出现“No Hibernate Session bound to thread”的错误。本文将详细探讨这一问题的原因,并提供有效的解决方案,帮助开发者顺利解决此类问题。 ... [详细]
  • 如何使用mysql_nd:Python连接MySQL数据库的优雅指南
    无论是进行机器学习、Web开发还是爬虫项目,数据库操作都是必不可少的一环。本文将详细介绍如何使用Python通过 `mysql_nd` 库与 MySQL 数据库进行高效连接和数据交互。内容涵盖以下几个方面: ... [详细]
  • Spring框架的核心组件与架构解析 ... [详细]
  • SQL Server 2005 在安装过程中通常会伴随 VS2005 一起安装,并且为了便于数据库管理,还会安装 Management Studio Express 管理工具。然而,在实际使用中,用户可能会遇到登录故障。本文综合分析了这些登录问题的常见原因,并提供了多种有效的解决方法,包括检查配置设置、验证账户权限和网络连接等。通过这些措施,用户可以有效地诊断并解决 SQL Server 2005 的登录问题。 ... [详细]
  • 润乾报表JNDI配置异常分析与解决方法
    在使用润乾报表时,通过JNDI连接数据源是常见的配置方式。本文详细分析了JNDI配置异常的原因,并提供了具体的解决方法。重点讨论了JNDI名称在三个关键位置的配置:1. Tomcat或应用服务器的数据源配置(以Tomcat为例);2. 润乾报表中的数据源配置;3. 应用程序代码中的JNDI名称引用。通过这些步骤,可以有效解决JNDI配置异常问题,确保报表系统的稳定运行。 ... [详细]
  • 在SQL Server 2008数据库迁移过程中,备份方法是一种高效且可靠的导出手段。本文详细介绍了如何利用备份功能实现数据的快速迁移,并提供了具体的步骤和注意事项,适合Golang程序员和数据库管理员参考。 ... [详细]
  • MySQL索引详解及其优化策略
    本文详细解析了MySQL索引的概念、数据结构及管理方法,并探讨了如何正确使用索引以提升查询性能。文章还深入讲解了联合索引与覆盖索引的应用场景,以及它们在优化数据库性能中的重要作用。此外,通过实例分析,进一步阐述了索引在高读写比系统中的必要性和优势。 ... [详细]
  • 深入解析 org.hibernate.event.spi.EventSource.getFactory() 方法及其应用实例 ... [详细]
  • 本文探讨了如何利用 jQuery 的 JSONP 技术实现跨域调用外部 Web 服务。通过详细解析 JSONP 的工作原理及其在 jQuery 中的应用,本文提供了实用的代码示例和最佳实践,帮助开发者解决跨域请求中的常见问题。 ... [详细]
  • 尽管我们尽最大努力,任何软件开发过程中都难免会出现缺陷。为了更有效地提升对支持部门的协助与支撑,本文探讨了多种策略和最佳实践,旨在通过改进沟通、增强培训和支持流程来减少这些缺陷的影响,并提高整体服务质量和客户满意度。 ... [详细]
author-avatar
mobiledu2502887867
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有