ODS层(Operational Data Store,操作数据存储层)
ODS层用于存储直接从业务系统(如SAP-HCM)抽取的数据,通常不做或仅做简单的清洗和转换,碰到的情况,比如组清洗织名称中存在特殊字符、不可见字符等。
以SAP为例,通常包括薪酬相关的RT表、人员的PA表,组织的HRP表,以及域值表、自定义PICKLIST等等
DWD层(Data Warehouse Detail,数据仓库明细层)
这一层通常是做数据清洗和维度退化
清洗包括,维度有一些存储成码值-描述的,需要进行分离。另外对于一些无效数据进行删除,比如系统里会有一些垃圾数据。
这一层主要还是要围绕事实表(如RT表),按照逻辑进行维度退化。
比如员工薪酬,是按照工号+工资项+金额按行存储的,需要转换成年度+月度+工号+姓名+组织+基本工资+补贴+奖金+其他维度这样的存储方式,方便后续的分析。
有一点需要注意的是单位的上下级关系。因为一般比如一个单位的员工,是挂在下属很多个层级的组织上的。这样就有两种处理方式,一是行拓展,二是列拓展,这个在后面详细说明。
DWS层(Data Warehouse Summary,数据仓库汇总层)
DWS层通常是按照主题汇总的数据,这个就和分析息息相关了,但是一般会在这之前建一个中间层,以指标的形式来存储汇总结果。
指标就是范围+维度+聚合字段+聚合方式,比如各月份各组织下职业经理人参与中长期激励的人数,范围就是职业经理人+参与中长期激励,维度就是月份+组织(组织一般是默认维度),聚合字段是人员明细,聚合方式是计数(如果一个员工,单月在不同组织发薪,不能简单求和,需要不重复计数)。我们可以给这个指标定义一个编码,比如ZGRS001,最终指标就以时间期间+组织+指标结果的方式落地存储。指标的范围一般在计算过程中体现
在数仓建设中有一点很重要,就是相同的字段,一定要用相同的字段名称
没有评论