• SSAS的转了别人的日记3


    上午
    1.知识回顾
     重点回顾SSAS的知识

      数据源:身份模拟的意思是什么?应该如何选择
      数据源视图:这里能做什么事情?
       命名计算,友好名称,关系。命名查询

      多维数据集中为什么要单独选择一个时间维度?如果在向导中没有选择,那么该怎么办
      层次结构为什么需要,具体做法
       方便用户导航
       提高性能
       
       做完层次结构的时候,需要做两件事情
        设置Attribute的 Visible属性为false,即让用户只能通过我们的层次结构来导航
        设置Level之间的关系


      多维数据集为什么显示有的表既是事实表又是维度表
       退化维度

      物理维度表和逻辑维度表的意思是什么
       物理维度是全局,共享的。
       逻辑维度是针对Cube的一种映射。一个物理维度可以映射多个逻辑维度。典型的情况就是时间维度。
       了解一下链接维度的意思,典型场景是就多个数据集市之间共享一些维度

      维度用法是什么意思,有哪几种用法,分别用在什么场合?
       逻辑维度与度量值组的关系。度量值组是一个新名词,SSAS2005引进,原先SSAS2000就直接叫事实表。因为SSAS 2005里面,一个CUBE里面可以有多个事实表,所以此时不可能都叫事实表。其实一个度量值组也就意味着对应一个事实表。
       常规:维度与度量值组是标准的一对多关系。最常见
       事实:退化维度与度量值组的关系
       被引用:雪花架构中会用到。需要用一个中间维度。具体化的含义,是把被引用维度与中间维度之间那种关联信息具体化下来(通过一定的数据格式保存他们之间的联系),好处是提高了性能,但是如果这种关系更新频率高的话,就不合适这么做。

       多对多:维度表无法与事实表建立一对多关系,必须通过一个中间度量值组来实现多对对关系。这里要注意,多对多之后统计的结果可能会超过总金额。

      部署和处理操作分别是什么意思?
       部署只是把定义发送给服务器。只做部署的话,其实是不能用的。
       处理是把数据从数据源(仓库)里面读取处理,然后根据我们的设计,进行聚合计算的一个过程。(这个过程可能较长)

        如果是对计算,KPI,操作,透视进行的修改,不需要处理。因为这三种情况只是一个动态的MDX语法的更新,它不涉及具体的数据。

       
      计算成员与命名计算有何区别
       命名计算是针对行集的,针对原始数据,语法是T-SQL
       计算成员则针对聚合结果的,典型的情况例如是利润率,语法是MDX表达式。返回一个值,这个值通常也是归类到Measures里面去。计算成员不可能针对维度的计算。   


      计算成员和命名集有何区别
       计算成员返回一个值,通常也是一个针对Measure的计算。
       命名集通常是针对Dimenssion的一个筛选,通常返回多个值。典型情况:我们要找到订购金额前十名的客户。有了之后,可以大大地方便后续分析。

      脚本命令用来做什么,KPI一般是做什么的
       脚本命令是一个MDX操作,可以改变分析的行为特征,或者凭空去产生一些数据处理
       KPI也是表达式,但是每个KPI都有四个表达式,而且针对这四个表达式有四个专门的函数来查询.也就是说,KPI最终的展现还是依赖于客户端


      操作用来做什么
       操作是增加一些附加性的功能.典型的例子:用户在分析销售额的时候,他可能会有兴趣知道某些汇总的值具体是怎么发生的. 这种操作我们称为钻取操作

       第二种操作是直接转向一个URL,
       报表操作是连接到报表服务器,打开一个特定的报表


      透视和翻译的作用  

     演示利用Cube反向生成数据仓库的做法

    2.SSAS的重点技术
     分区和存储设计
      如何实现多分区
       默认只有一个分区,而且是表绑定的
       要实现多分区,就首先需要将默认分区从表绑定改变成查询绑定
       分区列需要考虑一些,但是通常使用时间key作为分区列

       好处: 存储上可以优化(多个磁盘的IO), 查询引擎支持并行查询
        分区可以单独处理, 大大地缩短处理时间

      如何选择存储模式
       MOLAP:多维OLAP
        好处:速度快,因为度量值和聚合都放在了SSAS本地,MDX查询直接读取
        缺点:默认情况下它不是实时的,也无法得到更新的通知.如此仓库发生更新,则需要手动重新处理
        MOLAP有几种改良版本: 指的是自动更新或者接受通知


        监听更新是通过主动缓存来实现的.这是SQL 2005新功能.

       ROLAP: 关系OLAP
        好处: 实时,因为它的数据全部是在仓库 的. 典型场景:数据量太大,而且历史很久的,查询不是很频繁的.
        缺点:效率差(首先因为要临时聚合,其次它需要将MDX转成T-SQL)

        度量值组的数据其实就是事实表,但是聚合,它需要创建一个专门的视图,而且是一个索引视图.

       HOLAP:这是一个折中的方案,度量值数据仍然是放在仓库中,而聚合是放在多维数据库中的.   
      
      多维数据具体是怎么存储的呢
       C:/Program Files/Microsoft SQL Server/MSSQL.2/OLAP/Data

     聚合设计
      什么叫聚合?
       聚合是对度量值的一种计算.它根据维度值,进行枚举多种可能性,去计算它们交叉之后应该得到的一些汇总值.

      设计聚合的优缺点?
       优点:提高查询效率,避免临时执行MDX计算.
       缺点:占用空间,如果聚合过多,则将大大地增加处理时间,因为如果考虑所有可能性,则计算量很恐怖.而且其实维度值交叉之后可能的情况是很稀疏.所以,聚合不是越多越好

      如何设计聚合
       在设计和测试阶段,可以通过VS的一个向导来做意向性的聚合

      如何优化聚合


     安全性技术
      SSAS默认的安全性
       SSAS只支持Windows验证
       
       SSAS的安全分两个级别:服务器级别和数据库级别
        服务器级别只有一个角色,而且它就是管理员,可以做任何事情
        默认情况本地管理员组的用户会自动属于该角色,但这可以改
        
       数据库角色则用得较多
        
       
      如何设计角色
       
      如何测试角色

    下午
    3.MDX简介
     MDX的基本概念:member,set,tuple
     MDX查询和表达式的应用


    4.客户端开发(ADOMD.NET,XMLA)

     EXCEL和EXCEL SERVICE
     

     什么是XMLA
      http://www.cnblogs.com/chenxizhang/archive/2009/06/27/1512118.html
      配合tcptrace来监控看看具体内容,2383端口(xmla over tcp/ip)


     如何使用ADOMD.NET
     如何使用AMO做管理操作
     
     如何配置远程http连接
      配合fiddler来监控看看具体内容
      基本身份验证要打开,集成验证要关闭


     如何利用报表模型直接连接到SSAS,让用户可以基于SSAS做报表

  • 相关阅读:
    C/C++知识点清单01
    数独GUI程序项目实现
    第三章--Win32程序的执行单元(部分概念及代码讲解)(中-线程同步
    《JAVA程序设计与实例》记录与归纳--继承与多态
    《JAVA程序设计与实例》记录与归纳--类与对象
    C语言范例学习06-上
    单一职责原则
    牙疼真要命,牙坏真烧钱
    跳槽 & 思维导图
    成熟的 Git 分支模型
  • 原文地址:https://www.cnblogs.com/honkcal/p/2109811.html
Copyright © 2020-2023  润新知