对于上次问的两个问题,原问题:http://www.cnitblog.com/liuhongtao/archive/2006/12/05/20075.html 
经过对MSTR的工程的回答进行验证,发现,对于MSTR中的表,在MSTR的Desktop中是不能进行编辑,对表的操作可以建立“创建表别名”,这个在以后继续探索。

经过ELT过程进行表的复制,虽然已经解决了问题,但是这种解决问题的方法比较局限,通过对数据仓库特点的分析,目前又有一种方法能够解决这种问题。

数据库设计是尽量避免冗余,一般采用符合范式的规则来设计,数据仓库在设计是有意引入冗余,采用反范式的方式来设计。

所以经过讨论最终决定,不采用复制表的模式,而是采用数据字段冗余的方法来解决此问题,就是将Dim_A的表结构调整为:

A_ID

D_1_NAME

D_2_NAME

1

A

C

2

B

E

3

D

F


咋看上去好像没有什么变化,但是当D的属性有多个时就能够很清晰的表示出这种结构的特点。
此方法有一个很大的优点,就是当数据量非常大时,数据库检索能够比第一种很大程度上节省效率。

如果还有其他的解决方法,可以一起讨论。