维度建模就是:按照事实表,维度表来构建数据仓库,数据集市。这种方法的最被人广泛知晓的名字就是星型模式(Star-schema)、雪花模型(Snow-schema)。
优点:
a) 维度建模是可预测的标准框架。允许数据库系统和最终用户查询工具在数据方面生成强大的假设条件,这些数据主要在表现和性能方面起作用。——后期数据产品性能好
b) 星型连接模式的可预测框架能够忍受不可预知的用户行为变化。——切换使用不同的维度查询很方便
c) 具有非常好的可扩展性,以便容纳不可预知的新数据源和新的设计决策。可以很方便在不改变模型粒度情况下,增加新的分析维度和事实,不需要重载数据,也不需要为了适应新的改变而重新编码。较好的扩展性意味着以前的所有应用都可以继续运行,并不会产生不同的结果。——扩展性好
缺点:
由于在构建星型模式之前需要进行大量的数据预处理,因此会导致大量的数据处理工作。而且,当业务发生变化,需要重新进行维度的定义时,往往需要重新进行维度数据的预处理。而在这些与处理过程中,往往会导致大量的数据冗余。——数据预处理开销和数据冗余
另外一个维度建模法的缺点就是,如果只是依靠单纯的维度建模,不能保证数据来源的一致性和准确性,而且在数据仓库的底层,不是特别适用于维度建模的方法。(个人没太理解这一条,个人理解:数据分层处理,可能会导致数据处理丢失或者异常,影响了后面数据的一致性和准确性。但是后面说数据仓库底层不是特别适用维度建模方法,不理解这句话的意思,希望大神看到能解答一下,感谢)