欢迎来到安国润的个人网站

企业数据仓库建设流程

返回列表

企业数据仓库建设流程

企业有很多业务系统,oa erp 财务 制造业mes 有自己的数据库,数据库中数据都是隔离,各管各的,希望各管系统能互通,oa的能到erp里,员工的出差 花费多少,报销,mes希望能有财务采购的信息,不要形成数据孤岛。希望企业数据贯通,对企业产生价值,

企业就开始做业务系统改造,打通各个业务系统的开发,这就涉及到这些系统的二次开发,既标准的制订。

各个系统标准可以不一,可能存在 一物多码情况,如一个人 oa上是一个id erp上是一个id 财务上是一个id。这种情况下,业务系统的贯通就需要标准化,这样改造系统成本太高,开始早些年提出了数据总线的概念,解决标准化,在数据总线的数据是做了标准化统一的,这样各个系统的数据进过数据总线,变成标准统一的数据,就可以跟其他系统贯通。但这个数据总线也很难开发

例外一种方式,各个系统的数据统一抽取到一个叫数据仓库的地方,数据仓库有一层叫ods层,就是贴源层,所有数据抽取过来之后,可以在数仓里对数据规则进行统一的制度,ods层的数据按照数据标准进行统一的清洗,清洗完成后,,好处是不涉及原系统改造,放到dwd层 数据基础明细层,是一个明细数据,就可以用了,就可以做贯通了,多系统的贯通实现是在做数据分析,如oa与erp关联,财务与mes关联,做某个系统,哪些员工异常报销,企业财务是怎样的。这就是dws 数据公共汇总层。实际上是对dwd层的这些明细数据的进行一些公共指标的计算。一般会分主题域的 比如财务域、人资域、采购域、物流域、生产域。

因为dws是公共汇总层,会存放一些公共的指标,然后它将自己的数据分发到上层的ads层应用数据服务层的各个表里,做二次开发,这些各类bi报表,kpl,可视化都属于我们的应用,都要从ads层取数据,也就ads层对接的是我们的应用,也就一个应用可能对于ads层一张表,ads层要求就是查询效率高。

ods存储原始数据,为了溯源,不做处理,可以辅助数据质量检查,数据抽取,错误定位。

因为每天抽取业务数据,先放到ods层,就可以在ods层基础上比对一下,我们拖过来的数据有没有少

dwd层对ods层进行清洗 标准化,可以一对一切分,或按主题域区分,但并不明显 。可以使用ER关系模型建模,比如 按工艺,生产,人资,采购进行串联,这样dwd变为稳定一层,因为这些串联的关系都在。

如何更换oa系统,抽取到ods层数据也变了,如果dwd层不通过er构建就会存在,整个数仓的变动最终影响到应用。如果使用er构建 流程,把数据规端,建立关系,oa系统替换了,数据变了,只是表格式变了, 但oa系统的人资这个实体不会变,erp系统替换了,但erp中的商机实体不会变,新的erp系统中也要商机,这个时候只是说,dwd层增加一个新的关系,

比如1月1日前erp是老的,之后商机数据从新的erp系统中获取, dwd中老的数据不变,而是新的erp数据进入ods层,对新的erp数据进行清洗,清洗完成后数据还挂着商机上,我只是增加新的关系,告诉你1月1日前商机数据存放在哪个表中,1月1日后数据存储在哪个表中,

当然数据仓库有不同的建法

如数据湖,就是一个大的贴源层,数据不进数仓,数据湖可以存结构化数据,也可以是非结构化数据,使用低廉的存储,达到数据互通的效果,数据统一管理。湖上建仓,ods层就没了