4、多维数据模型

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

• 用户开始某个特定的任务通常不需要看到完整的模型。为 了避免绝大多数用户使用规模庞大的模型,我们需要定义 一个视图来显示模型的子集 • 立方体提供了这样的视图,称为透视。一个立方体可以有 很多透视,每一个透视只会包含模型中和特定的一组用户 相关的特定的子集 (度量值,维度,属性等等) 。每一个 透视可以和定义好的用户安全角色关联,来设置谁被允许 查看这个透视
• 定义属性关系 • 创建用户层次结构
层次结构设计
属性层次结构
用户层次结构
用户层次结构
设置键列及名称列
设置排序
• 按键值排序 • 按名称排序 • 按属性排序
离散化

属性关系设计器
– 为查看和修改属性关系提供的新 的设计器 – 为优化维度设计内置大量验证规 则

维度向导
– 减少向导的步骤和分支 – 更为强大
SSAS开发与管理
• 性能问题
– 大量的Join和Group by操作,报表响应时间很 长
• 只有数据模型,无业务模型
– 无法将模型直接提交给业务人员,只能通过开 发报表进行数据展现
• 复杂的计算很难实现
• 架构中的语义层,用业务语言及逻辑构建 的模型,能够更加准确地描述业务场景 • 来自于数据集市 • 提供基于分析的查询和函数 • 利用聚合提供更强的性能
– 维度中的数据从大到小,从宏观到具体的级别 结构。
• Level 级别
– 维度中某个程度的细节。
• Member 成员
– 在一个级别下的具体数据。
Dimension
Time
Hierarchy
{
1999
• All Time •• Year
Levels
••• Quarter
•••• Month
(Member at Year Level)
• •
一个数据库分区是一个独立的子数据库,其中包含自己的数据,索引,配置文件,以 及事务日志 一个分区组是一个或多个数据库分区的逻辑组,通过它可以控制数据库分区内表空间 和缓冲池的安置
• 立方体提供了基于角色的安全性。可以可 以自定义并且可以授权给角色
管理权限可以独立于数据访问权限单独授予。另 外,在读取对象的元数据和读写访问数据的权限 可以单独定义 • 数据的安全粒度可以到特定的维度成员,甚至单 元格 • 角色中的用户只能是域用户
• 自动创建父子属性 • 可以分辨成员属性 • 更加可靠的错误配置设定

维度编辑器
– 优化的界面 – 设置主键列的新对话框 – 属性表格支持编辑主键列
• • • • • • • • •
创建计算 创建KPI 创建动作 设计存储 设计聚合 设计分区 设计安全 创建透视 创建翻译
• 计算成员是根据Cube数据、算术操作符、常数、函数计 算出来的度量值或者维度成员。例如,您可以创建一个计 算成员用来计算立方体中两个物理度量值的总和。
wk.baidu.com •
为新立方体定义数据源,使用以下步骤: 在解决方案资源管理器中右击数据源文件夹,选择新建数据源。
• •
要创建一个新数据源视图,使用以下步骤: 解决方案资源管理器中右击数据源视图文件夹,选择新建数据源视图。
• BIDS 会自动显示数据源视图的架构
• 创建属性层次结构 • 设置属性
– 键列 – 名称列 – 排序 – 空处理
分析计算
Basic Analytics Advanced Analytics Integration with Data Mining
Basic Analytics
Advanced Analytics
账务智能 --时期数与时点数
时期数:表示一段时期的状态,可以在时 间上进行累计,例如:收入、费 用等。 时点数:表示一个时间点的状态,不可以 在时间上进行累计,例如:资产、 负债等。

一个向导
– – – – 初始化聚合 基于使用的聚合设计 新增的按查询设计 优化输入算法

算法改进
– 改进聚合的初始设计 – 优化基于使用的聚合 – 支持新旧聚合设计的合并

专用设计器
– 查看聚合设计及聚合 – 手动修改/创建/删除聚合 – 大量内置的验证规则用于支持设 计优化
• 微软提供了一个友好的向导在度量值组和分区上生成汇总 数据
• 立方体支持动作和在基础数据上的动作
– URL: 跳转到一个特定的URL。这种类型的动作支持指导用户到一些网址获得更多信息,并且 可以指导用户到一些基于Web的应用程序以允许运行新的任务。 • 例如: 对于一个产品,跳转到描述该产品的公司网站上
• •
报表
– 执行一个特定的报表。例如:对于一个给定的产品代码,通过动作可以执行一个参数化的报表 来提供产品描述和当前订单状态。 用户可以钻取到最明细的数据。
– 混合 OLAP (HOLAP)
HOLAP 存储模式结合了 MOLAP 和 ROLAP 二者的 特性。
• 主动缓存的目标是提供传统 MOLAP 所具有的性 能,并同时保持使用 ROLAP 进行管理所具有的 方便和快捷。 • 最小化滞后时间
– 数据源发生更改后,可以删除已缓存的 MOLAP 对象 ,并当 MOLAP 对象在缓存中重新生成期间将查询切 换到 ROLAP 存储。 在 MOLAP 对象重新生成和处理 完毕之后,查询会自动切换到 MOLAP 存储。
分区的聚合及其源数据副本将存储在 Analysis Services 内的多维结构中。 此 MOLAP 结构在得到 高度优化后,可以最大程度地提高查询性能。
– 关系 OLAP (ROLAP)
分区的聚合将存储在关系数据库(在分区数据源中指 定)的索引视图中。ROLAP 存储的查询响应速度通 常比使用 MOLAP 或 HOLAP 存储模式更慢。
Web多维分析 CRM
ETL监控
客户端分析
量度 度量值组 分区 计算成员 KPI
维度用法
存储设计 聚合设计
多维数据 集
透视
操作
多维数据 库
维度 主键层次 结构
维度
层次结构
属性层次 结构
用户层次 结构
非主键层 次结构
• Dimension 维度
– 在Cube中,数据分类的目录。
• Hierarchy 层次
钻取

• 最重要的方面是动作(Action)可以在立方体里 面钻取返回最明细的数据 • 目标可以是立方体,维度,层次结构,级别, 维度成员,层次结构成员,级别成员,单元格 等。使用MDX表达式可以限制目标单元格将 来可以执行的动作到子立方体
• 分区包括三种基本存储模式:
– 多维 OLAP (MOLAP)
时期数
小明: 1月份发工资100元 2月份发工资100元 3月份发工资100元 问:小明一季度一共发了多少钱? 答:应该是300元
时点数
小明: 1月份有100元 2月份有80元(100+100-120=80) 3月份有120元(80+100-60=120) 问:小明一季度一共有多少钱?
答:300元???× 应该是120元
半累加性--帐户智能
未应用帐户智能--不正确的:
应用帐户智能--正确的:
时间智能
时间智能增强功能是一项多维数据集增 强功能,它可以将时间计算(或时间视图) 添加到所选层次结构中。此增强功能支持以 下计算类别:
• • • • 到现在为止时间段。 逐时间段增长。 移动平均。 并行时间段比较。
数据定义语言(DDL):创建、删除、管理多维对象 数据操作语言(DML):从多维对象中获取数据 MDX脚本:范围、上下文、流控制 函数和操作的集合:函数、方法 应用自定义函数扩展:
• • • • •
KPIs或关键绩效指标在推动业务决策上是最重要的一个实体。它可以定义量化的测量 值来测量组织在达成业务目标中的进展 SQL Server 分析服务允许在立方体内创建KPI KPI 衡量一个业务的健康度 KPI 使用图形来显示状态和趋势,例如:信号灯 KPI 为性能指标定义了4个表达式 • 实际值(-1 to 1) • 目标值 • 状态 (-1 to 1) • 趋势(-1 to 1)
• • • • • •
建立工程 建立数据源 建立数据源视图 建立维度 建立多维数据集 部署、处理、浏览
建立工程:
• 从程序菜单选择 Microsoft SQL Server 2008 R2 ,然后选择 SQL Server Business Intelligence Development Studio
BI门户 Excel 报告 Reporting Services 报告 Dashboard 财务
数据挖掘 Excel
Reporting Services
数据订阅 SSIS DW DM SSAS 定义化报表 报表分发 我的报表 数据查询 SQL Report ETL监控 主数据管理 数据权限 管理
ERP
与SQL相比较
(2005年,消费品,销售额)
(2006年,食品,销售额)
(Products.Clothing , Measures.Units ,Time. 98) (Products.Clothing , Measures.Sales ,Time. 97) (Products.Groceries , Measures.Cost ,Time.Year. 95)
• 值 – 值是一个用来返回KPI实际值的MDX表达式 • 目标 – 目标是一个用来返回KPI目标值的MDX表达式 • 状态 – 状态的理想值最大是1(好),最小值是-1(差),0表示自然状 态 • 状态信号灯 – 状态信号灯是一个视觉元素,用来展现KPI当前的状态。例如:仪 表,交通灯或笑脸。 • 趋势 – 趋势是一个MDX表达式,用来评估在不同时间KPI的值。利用这 一点,企业用户将能够确定KPI的值随着时间已如何进展。 • 趋势信号灯 – 趋势信号灯是一个视觉元素,用来展现KPI的趋势。
• 国际用户经常需要使用其本地语言查看数据。为了解决这 个问题,立方体能够翻译元数据到任何一种语言。一个使 用某个特定区域设置的客户端应用程序连接将得到适当语 言的所有数据。 • 该模型还可以提供翻译的数据。一个属性可以映射到数据 源中不同的元素,并提供翻译这些元素到不同的语言。

从一台语言设置为法语的客户端计算机,可以看到立方体和查询结构都显示为法语
• 最大化性能
– 无需删除当前 MOLAP 对象。 在数据读入新缓存并在 其中处理时,继续对 MOLAP 对象进行查询。 该方法 可提供更好的性能,但是会导致在生成新缓存时查询 返回旧数据。
时效性—实时的数据分析
更新
MOLAP cache
新版本
Data
RDBMS
SQL Events
UDM 分析服务
Members
Q1-99 (Member at Quarter Level)
Jan-99 (Member at Month Level)
• 量度是我们需要分析的值(通常是数字类型 的值) • 量度往往是企业的KPI(key performance indicators) • 在典型问题中,代表“分析什么”?
MDX

• • •
聚合提供了性能方面的改进,它通过微软SQL Server分析服务直接从立方体 存储中来获取预先计算好的汇总,而不是为每一个查询从基础数据源重新计 算汇总数据 聚合设计向导采用了先进的算法来为预先计算选择聚合,从而使其他聚合可 以利用预先计算好的值快速完成计算 这个技术节约了处理时间和减少了存储需求,并使得对查询响应时间影响最 小化 在聚合创建以后,如果立方体的结构发生了改变或增加了数据,又或者立方 体中的源数据表改变了,有必要重新查看审阅一下立方体的聚合并重新处理 立方体
– 我希望基于时间和产品分析销售额
• 量度一般都是可以进行汇总、平均等计算的。
• 量度组是量度的集合 • 一个量度对应一个事实表中的一列;一个量 度组对应一个事实表 • 一个Cube包含一个或多个量度组
• SQL Server分析服务(SSAS)使用了一种叫做多维表达式 (MDX) 的查询语言用于查询多维数据 • MDX 在表面上和关系数据库使用的SQL语法在很多方面都相似。但 是,MDX 并不是SQL语言的扩展,并且在很多方面和SQL不同 • 基本的 MDX 查询语言:
各种帐户类型的聚合特性
帐户类型 统计 负债 特征 无 时点数 聚合 None LastNonEmpty 说明 不累加 最后一个成员 最后一个成员
资产 余额 流量 费用 收益
时点数 时点数 时期数 时期数 时期数
LastNonEmpty LastNonEmpty Sum Sum Sum
最后一个成员 累加 累加 累加
相关文档
最新文档