

为啥会有这个问题?
乍一眼看上去,这哥们是不是干活干傻了?BI(商务智能)的概念里本来就包含数据仓库的,BI的建模和数仓的建模有啥区别?不是一个东西么?你莫不是新新新新新新来的吧?嗯,没错,BI的确包含数仓,但是BI产品就不含数仓了。数仓负责建模,BI产品则提供固定报表、多维分析、驾驶舱等应用。我15年前刚工作的时候,就是这个逻辑了。那时候的BI产品,除了数据库,其他的功能都自带的,连ETL工具都自带。
不过那时候数据仓库的产品不多,当时如日中天的是Teradata,巨贵无比。反而是BI产品大行其道,为了抢占市场,各大BI厂商不断增强自己的能力,ETL、任务调度、建Cube、做报表、数据展示能做的都做了。所以在绝大多数BI产品中,都设置了“主题建模”的功能,尽量减少数仓层面的依赖。15年后的今天,得益于开源理念,很多数据仓库产品不但免费,功能也不断强大。比如咱中国人开发并开源的Apache顶级项目-Kylin,就自带Cube。这个时候你就会发现,原来的Teradata就慢慢的没落了。
所以,如果你现在去做BI项目的开发,就会发现很奇怪的事情:数仓这边要建模,这个毋容置疑。但是BI产品里,也会有一个“建模”。这不就让人头大了么?嘿嘿,开头这哥们说的其实就是BI产品里的“建模”模块和数仓中的“建模”工作之间的联系与区别。
数据仓库建什么模?
我之前写过好多数仓建模的文章,这里就偷个懒,复制几张图过来。数据仓库建模分为4个阶段:业务建模、领域建模、逻辑建模和物理建模。通常意义上来说,我们说的建模狭义上指的是“逻辑建模”。业务建模和领域建模跟业务关系比较紧密,通常会在最开始就完成了。而物理建模就是执行一下脚本,分分钟就搞定了,比业务建模和领域建模还快呢。



BI建什么模?
前面说了,此BI非彼BI。群里提问的哥们问的不是“商业智能”那个BI,而是BI产品的“BI”。你想想,我们在数仓里建好模型了,不管是维度模型,还是宽表模型,还是Cube,然后呢?
当然是得有一个地方把这些数据展示出来了,要不放在那里生崽儿么?这时候就轮到BI产品出马了。BI产品一端连着用户,另一端连着数据仓库。所以BI产品有一个巨大的任务,就是做业务和数据之间的翻译。这个时候就又轮到“建模”哥们出马了,在BI产品中,它是这个德行:



总结
唉,不管是啥工作,都是一脑门子的官司,深究下去无穷无尽。数据仓库的建模,目的是把数据整理好,所以重点在于实体与实体之间的关系。按照组织关系分类,自然就有星型、雪花型、星座等模型,也有为了加速存在的Cube和大数据环境特有的宽表模型。BI产品的建模,目的是进行业务与数据之间的翻译。所以重点在于如何用现有数据满足业务的需求。于是就有了选择数据源、表间关联、传参、过滤、确定维度、确定度量、新增维度、新增度量等乱七八糟的操作。这两个“建模”本来就是一件事情,只不过一个侧重数据的逻辑建模,一个侧重于数据的业务建模;一个是在数据仓库阶段,一个是在数据业务输出阶段;一个目的是为了数据组织和存储,一个目的是为了数据的业务表达。
扩展阅读:《永洪BI产品说明书+Quick产品说明书》下载方式:关注本公众号“大数据架构师”,后台回复“BI建模”即可直接下载。
你也可以加我微信:shirenpengwh,随时聊啊~
配合以下文章享受更佳
【附下载】实时数仓架构设计与选型
干货 |一口气讲完数据仓库建模方法
干货 | 如何搭建一个数据仓库
【资料包】 实时数仓架构选型资料包
【实战】 手摸手搭建一个实时数据仓库
【干货】 数仓到底要分多少层?
我需要你的转发,小小的满足一下我的虚荣心

原文链接:http://www.qisoo.cn/zhuti/123477.html,转载和复制请保留此链接。
以上就是关于数仓的建模和BI的建模有啥区别?by彭文华礁石艾青全部的内容,关注我们,带您了解更多相关内容。
以上就是关于数仓的建模和BI的建模有啥区别?by彭文华礁石艾青全部的内容,关注我们,带您了解更多相关内容。