看了这么多数仓模型的对比文章,我想把我总结的一些东西记录下来。
说到数仓建模,那么肯定离不开两种方式:范式建模(Inmon)和维度建模(kim ball)。这两种方式各有适用的地方,需要根据具体应用场景进行选择。当然还有一种独立数据集市的方法,不过这种方法容易造成很多数据烟囱以及数据孤岛(没有一致性维度和一致性事实的支持,是无法支持支持多主题区域,并且使得各个数据集市成为信息孤岛,缺乏兼容性。),无法广泛性的运用,这里就不讨论了。
Inmon
Inmon建模的方式是自下而上的,那么什么是自下而上呢?我的理解是先打好广而全的数据基础,考虑当下业务场景中的所有可能,基于范式建模的理念去设计数据仓库,然后基于各种业务场景去开发数据集市以及BI应用。
Kimball
而kimball的方式是自上而下的,这种方式就不用考虑很大的框架,针对某一个数据域或者业务进行维度建模,得到最细粒度的事实表和维度表,形成适用于某一个数据域、业务的数据集市之后,再集成各个数据集市为数据仓库。这其中的要点就是保持各集市之间的一致性维度和一致性事实,不然在集成为数据仓库的时候很麻烦,会无法确认各个集市之间的数据具有关联性、通用性。kimball的这种范式就是开发速度比较快,相