多维模型中的维表包含用来描述事实表中行记录的属性。维表的属性一些提供描述性信息,其他的属性可以规定事实表数据的汇总方法并帮助分析师来理解汇总的数据。维表还包含属性的层次结构来对数据进行分层汇总。维表一般较小,一些代码表经非正规化处理后重复保存在维表中来避免需要关联多个维表和代码表来提高信息查询的性能。
根据IBM多维模型设计方法和生命周期,维表的设计要经过以下的步骤:
1. 确定维表 在已确认的业务过程以及其度量的粒度的基础,确认所有的维表以及其粒度
2. 确定退化维表在已确认的业务粒度上找到一个或多个退化维
3. 确定公共维表 确认在这个模型可以多个星型结构共享的公共维表
4. 确定维表的属性和维表的层次结构 确定每个维表的属性和层级,以及层级结构是否平衡和一致,以及相应的设计方法
5. 确定日期与时间维粒度通常情况下,这类维度将主要影响维度模型的粒度与大小
6. 确定缓慢变化维 确认那些维表是缓慢变化维,以及需要记录变化的属性和自然键
7. 确认快速变化维 确认那些具有快速变化维特征的维表,并确定用一个或多个迷你维来处理这些快速变化属性。
8. 确认雪花型维表 确认那些需要用雪花型来处理的维表
9. 确认其他要特殊处理的情形 包括garbage维,多值属性维,多重角色维,和热交换维表。