DW Basic Knowledge2
DW的元数据是指除去数据本身之外的所有信息。
围绕DBMS方面的元数据可以描述为表定义,分区设置,索引视图定义,以及DBMS级安全方面的特权
与授权等内容。
在任何场合下,ODS要么是一个处在OLTP和DW之间的第三方物理系统,要么是DW的一个专门管理
的热区(用于支持实时交互操作,数据查询具有固定的结构形式)?
事实表的一行对应一个度量值,一个度量值就是事实表的一行,事实表的所有度量值必须具有相同的
粒度。
可加性事实:销售额
半可加性事实:库存 余额(除时间之外的维度可以用于聚合)
非可加性事实:比率
度量事实理论上讲可以是文本形式的,但这种情况很少出现,设计者应该尽可能地把
文本度量值转成维度,原因在于维度能够于其他文本维度属性更有效地关联起来,并且消耗
少得多的空间。
不能将冗余的文本信息存储在事实表内,除非文本对于事实表的每行都是唯一的。
所有事实表粒度都归属于三类之一:事务、周期快照与累积快照。
事实表本身通常也有由外关键字子集组成自己的主关键字,这个关键字通常称作复合或
者连接关键字。换句话说,在维度模型中每个表示多对多关系的表都是事实表,而所有其他的表
都是维度表。
通常情况下,只需要事实表复合关键字组成部分的一个字集,就可以确保行具有唯一。
所以,在事实表中引入一个唯一的rowid关键字作为主键关键字并无什么优点可言,这样只会
让事实表更大,当然,特别情况下的业务需求有需要时除外,(需要加载相同中记录到这样的表,
譬如把Fact表做成TYPE2时)
维度属性是查询约束条件、成组与报表标签生成的基本来源。
最好的属性是文本的和离散的,属性应该是真正的文字而不应是一些编码简写符号。
有时候,从数据生产源分析一个数字型的字段应该是作为事实还是维度属性来看,通常可以这样做
出决定 ,即看字段是否包含许多的取值并参与运算,(当成事实看待)还是一个变化不多并参与约束
条件的离散取值的描述(当维度属性看待)。
例如,一个产品的标准成本看起来是不变的属性,但由于经常改变,每一次交易都可能是不同的值,因而
最终应该当作度量值来处理。
维度表通常描述业务中的层次关系,譬如产品包含商标和分类,员工有所属的部门信息等。存放层次描述信息显得
很冗余,但是这样容易使用。
对于维度模型来说,是开放的设计,可以加入新的维度,只要其值对于现有的事实行存 在唯一性的定义就行,同样的,
可以向事实表中加入新的事实,只要其粒度和现有的事实表相一致即可。
DW Basic Knowledge2的更多相关文章
- DW Basic Knowledge1
以下内容,常读常新,每次都有新的感悟和认识. 数据仓库必须使组织机构的信息变得容易存取. 数据仓库的内容需要是容易理解的,数据对业务人员也必定是直观的,明显的. 数据仓库重新组织了原来OLTP数据库的 ...
- Atitit HTTP 认证机制基本验证 (Basic Authentication) 和摘要验证 (Digest Authentication)attilax总结
Atitit HTTP认证机制基本验证 (Basic Authentication) 和摘要验证 (Digest Authentication)attilax总结 1.1. 最广泛使用的是基本验证 ( ...
- Basic Tutorials of Redis(9) -First Edition RedisHelper
After learning the basic opreation of Redis,we should take some time to summarize the usage. And I w ...
- Basic Tutorials of Redis(8) -Transaction
Data play an important part in our project,how can we ensure correctness of the data and prevent the ...
- Basic Tutorials of Redis(7) -Publish and Subscribe
This post is mainly about the publishment and subscription in Redis.I think you may subscribe some o ...
- Basic Tutorials of Redis(6) - List
Redis's List is different from C#'s List,but similar with C#'s LinkedList.Sometimes I confuse with t ...
- Basic Tutorials of Redis(5) - Sorted Set
The last post is mainly about the unsorted set,in this post I will show you the sorted set playing a ...
- Basic Tutorials of Redis(4) -Set
This post will introduce you to some usages of Set in Redis.The Set is a unordered set,it means that ...
- Basic Tutorials of Redis(3) -Hash
When you first saw the name of Hash,what do you think?HashSet,HashTable or other data structs of C#? ...
随机推荐
- vs2012 编译运行报 项目程序包Dsp.Bds.dll还原失败,找不到版本xxxxxx的程序包问题的解决方法
原先vs2012程序运行项目是可以了,不会出现程序包Dsp.Bds.dll还原失败,找不到版本未2.0.1.0的程序包问题, 但是项目可以正常运行,每次调试看到下面一片红感觉不舒服 原因:可能当时我看 ...
- C# ICSharpCode.SharpZipLib.dll文件压缩和解压功能类整理,上传文件或下载文件很常用
工作中我们很多时候需要进行对文件进行压缩,比较通用的压缩的dll就是ICSharpCode.SharpZipLib.dll,废话不多了,网上也有很多的资料,我将其最常用的两个函数整理了一下,提供了一个 ...
- 创建WCF服务自我寄宿
WCF服务的寄宿方式 WCF寄宿方式是一种非常灵活的操作,可以寄宿在各种进程之中,常见的寄宿有: IIS服务.Windows服务.Winform程序.控制台程序中进行寄宿,从而实现WCF服务的运行,为 ...
- Java synchronized关键字用法(清晰易懂)
本篇随笔主要介绍 java 中 synchronized 关键字常用法,主要有以下四个方面: 1.实例方法同步 2.静态方法同步 3.实例方法中同步块 4.静态方法中同步块 我觉得在学习synchro ...
- Linux Shell系列教程之(十三)Shell分支语句case … esac教程
本文是Linux Shell系列教程的第(十三)篇,更多Linux Shell教程请看:Linux Shell系列教程 分支语句非常实用,基本上高级语言都支持分支语句(python 没有),大多数都使 ...
- 由简入繁实现Jquery树状结构
在项目中,我们经常会需要一些树状结构的样式来显示层级结构等,比如下图的样式,之前在学.net的时候可以直接拖个服务端控件过来直接使用非常方便.但是利用Jquery的一些插件,也是可以实现这些效果的,比 ...
- T-SQL的回车和换行符(SQL)
T-SQL的回车和换行符(SQL) sql server中的回车换行字符是 char(13)+char(10) 回车:char(13) 换行:char(10) 实例1: DECLARE @c NVA ...
- ahjesus用forever管理nodejs服务
全局安装forever npm install -g forever 查看帮助 forever -h 查看安装位置 whereis forever 编写自己的sh文件 forever -p web文件 ...
- Android5.0新特性——兼容性(support)
兼容性 虽然Material Design新增了许多新特性,但是并不是所有新内容对对下保持了兼容. 使用v7包 v7 support libraries r21 及更高版本包含了以下Material ...
- SharePoint 2013 排错之"Code blocks are not allowed in this file"
今天,设置页面布局的自定义母版页时,设置完了以后保存,然后预览报错,错误如下截图:删掉自定义母版页的MasterPageFile属性,页面依然报错:感觉甚是奇怪,因为有版本控制,还原为最初的版本,依然 ...