百摩网
当前位置: 首页 生活百科

数据仓库分层实战(为什么要给数据仓库分层)

时间:2023-06-07 作者: 小编 阅读量: 7 栏目名: 生活百科

此层数据通常来源与DWD和DWM层的数据。由于宽和窄的界限不易界定,也可以去掉DWM这一层,只留DWS层,将所有的数据在放在DWS亦可。数据量可能是千万级或者上亿级别。在DWM层,我们会从DWD层中选取业务关注的核心维度来做聚合操作,比如只保留人、商品、设备和页面区域维度。最后,在APP应用层,根据需求从DWS层的一张或者多张表取出数据拼接成一张应用表即可。

(1)为什么要分层

作为一名数据的规划者,我们肯定希望自己的数据能够有秩序地流转,数据的整个生命周期能够清晰明确被设计者和使用者感知到。直观来讲就是如图这般层次清晰、依赖关系直观。

但是,大多数情况下,我们完成的数据体系却是依赖复杂、层级混乱的。如下图,在不知不觉的情况下,我们可能会做出一套表依赖结构混乱,甚至出现循环依赖的数据体系。

因此,我们需要一套行之有效的数据组织和管理方法来让我们的数据体系更有序,这就是谈到的数据分层。数据分层并不能解决所有的数据问题,但是,数据分层却可以给我们带来如下的好处:

1)清晰数据结构:每一个数据分层都有它的作用域和职责,在使用表的时候能更方便地定位和理解;2)减少重复开发:规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算;3)统一数据口径:通过数据分层,提供统一的数据出口,统一对外输出的数据口径;4)复杂问题简单化:将一个复杂的任务分解成多个步骤来完成,每一层解决特定的问题。

为了满足前面提到好处,通常将数据模型分为三层:数据运营层( ODS )、数据仓库层(DW)和数据应用层(APP)。简单来讲,我们可以理解为:ODS层存放的是接入的原始数据,DW层是存放我们要重点设计的数据仓库中间层数据,APP是面向业务定制的应用数据。下面详细介绍这三层的设计。

(2)数据模型的分层

1)源数据层(ODS)此层数据无任何更改,直接沿用外围系统数据结构和数据,不对外开放;为临时存储层,是接口数据的临时存储区域,为后一步的数据处理做准备。

2)数据仓库层(DW)也称为细节层,DW 层的数据应该是一致的、准确的、干净的数据,即对源系统数据进行了清洗(去除了杂质)后的数据。

此层可以细分为三层:明细层DWD(Data Warehouse Detail):存储明细数据,此数据是最细粒度的事实数据。该层一般保持和ODS层一样的数据粒度,并且提供一定的数据质量保证。同时,为了提高数据明细层的易用性,该层会采用一些维度退化手法,将维度退化至事实表中,减少事实表和维表的关联。

中间层DWM(Data WareHouse Middle):存储中间数据,为数据统计需要创建的中间表数据,此数据一般是对多个维度的聚合数据,此层数据通常来源于DWD层的数据。

业务层DWS(Data WareHouse Service):存储宽表数据,此层数据是针对某个业务领域的聚合数据,业务层的数据通常来源与此层,为什么叫宽表,主要是为了业务层的需要在这一层将业务相关的所有数据统一汇集起来进行存储,方便业务层获取。此层数据通常来源与DWD和DWM层的数据。

在实际计算中,如果直接从DWD或者ODS计算出宽表的统计指标,会存在计算量太大并且维度太少的问题,因此一般的做法是,在DWM层先计算出多个小的中间表,然后再拼接成一张DWS的宽表。由于宽和窄的界限不易界定,也可以去掉DWM这一层,只留DWS层,将所有的数据在放在DWS亦可。

3)数据应用层(DA 或 APP)前端应用直接读取的数据源;根据报表、专题分析的需求而计算生成的数据。

4)维表层(Dimension)最后补充一个维表层,维表层主要包含两部分数据:A)高基数维度数据:一般是用户资料表、商品资料表类似的资料表。数据量可能是千万级或者上亿级别。B)低基数维度数据:一般是配置表,比如枚举值对应的中文含义,或者日期维表。数据量可能是个位数或者几千几万。

(3)问题扩展数据仓库系统架构

上图系统各部分的执行流程是:1)确定分析所依赖的源数据。2)通过ETL将源数据采集到数据仓库。3)数据按照数据仓库提供的主题结构进行存储。4)根据各部门的业务分析要求创建数据集市(数据仓库的子集)。5)决策分析、报表等应用系统从数据仓库查询数据、分析数据。6)用户通过应用系统查询分析结果、报表。

(4)结合项目中使用

电商网站的数据体系设计,这里针对用户访问日志这一部分数据进行举例说明:

在ODS层中,由于各端的开发团队不同或者各种其它问题,用户的访问日志被分成了好几张表上报到了我们的ODS层。

为了方便大家的使用,我们在DWD层做了一张用户访问行为天表,在这里,我们将PC网页、H5、小程序和原生APP访问日志汇聚到一张表里面,统一字段名,提升数据质量,这样就有了一张可供大家方便使用的明细表了。

在DWM层,我们会从DWD层中选取业务关注的核心维度来做聚合操作,比如只保留人、商品、设备和页面区域维度。类似的,我们这样做很多个DWM的中间表。

然后在DWS层,我们将一个人在整个网站中的行为数据放到一张表中,这就是我们的宽表了,有了这张表,就可以快速满足大部分的通用型业务需求了。最后,在APP应用层,根据需求从DWS层的一张或者多张表取出数据拼接成一张应用表即可。

    推荐阅读
  • 关于怪兽的电影(有哪些好看的怪兽电影)

    接下来我们就一起去研究一下吧!关于怪兽的电影怪兽类经典影片:《龙之战》、《哥斯拉》、《阿凡达》、《火龙帝国》、《史前巨鳄》、《深海之战》、《魔兽战场》、《狂蟒之灾》、《狂蟒之灾2》、《金刚》、《侏罗纪公园》、《大白鲨》、《尼斯湖怪》、《星河战队》、《环太平洋》、《迷雾》、《科洛弗档案》、《星际传奇》、《怪兽》、《狼人》、《闪灵战士》等等。

  • 绕口令怎样才能快准稳(绕口令由易到难怎么练习)

    蓝南是男篮主力,吕楠是女篮主力,吕教练在男篮训练蓝南,蓝教练在女篮训练吕楠。陈庄城进程庄人,陈庄人进程庄城。是时,适施氏适市。氏视是十狮,恃矢势,使是十狮逝世。石室湿,氏使侍拭石室。食时,始识是十狮尸,实十石狮尸。刀刀吊掉,倒掉吊刀,吊倒刀掉。柳奶奶和牛奶奶泼榴莲牛奶吓坏了刘奶奶。牛郎年年念刘娘,刘娘年年念牛郎。黑灰化肥与黑华飞与灰花飞之间的关系要认清!

  • 一生相识早安心语(早安晨语余生就和有眼缘的人在一起)

    有眼缘是相互的,不是单相思,不再为不喜欢自己的人,做任何卑微的纠缠,爱情没必要,友情就更没有必要了。和有眼缘的人在一起,能够放下心理戒备,有话就说,袒露心声,有酒就喝,可以随心所欲,有说有笑,释放内心的压力,真诚地给与鼓励、支持和帮助,能够展现出来真实的自我。

  • 游戏攻略江南百景图(游戏最强攻略)

    游戏攻略江南百景图?下面更多详细答案一起来看看吧!游戏攻略江南百景图游戏丹药获取方法。玩家们应天府想要升级,最后一个材料就是需要用到丹药,很多玩家们如果没有达到一定的等级是看不到丹药的,丹药需要玩家们升级到二十八级的时候会解锁的一个建筑,这个丹药就是仙丹,玩家们想要升级应天府七级就需要用到这个哦。

  • 修复磁盘为什么会丢失数据(一个命令挽回80G数据)

    近日,收到一块移动硬盘,客户描述有轻微异响,两三分钟过后,才能出现盘符,但是显示为0字节,拿Finaldata扫描磁盘,想要恢复文件,搜索了两三个小时后,发现有部分需要的文件无法恢复!就算是已经恢复的文件,WORD、EXCEL文件打不开,照片文件的话,就显示黑屏!那不是等于没有恢复嘛。客户不敢再动了,快递给我们,最坏打算是无尘环境开盘恢复。)再然后就是修复一堆孤立文件、更正主文件表镜像错误、更正卷位图文件。。。

  • 虎皮花生做法图解(最好吃的下酒小吃)

    虎皮花生做法图解花生米洗洗用一个碗送装水浸泡五分钟。浸泡过后的碗花生米沥干水再晾一会让它水份风干。倒入花生米搅拌,如果感觉太湿了可以再添加一点面粉再拌一拌使每一颗花生米都裹上面糊,不要太湿,要把稍微干一点才好炸。

  • 温馨花艺七夕花束预定中(花艺奇思妙想vol.47)

    photoby小红书@简花花艺马卡龙色系的气球总让人觉得清新可爱,小熊与小花的造型,着实给这个花束增添了童真童趣。photoby小红书@Magic-Decor同样的五瓣花加上小熊气球,粉色与黑色的碰撞,炫酷和甜美兼得。气球花艺在最近几年大热,因其有着色彩鲜明、价格低廉,容易出效果而被大受追捧。photoby小红书@UNPREDKTBLE变花莫测第二步,打一个其他颜色的圆球,适当大小。

  • 我和我的家乡几个系列(分别是什么)

    跟着小编一起来看一看吧!我和我的家乡几个系列《我和我的家乡》有五个系列。分别是陈思诚执导的《天上掉下个UFO》单元,由黄渤、王宝强、刘昊然主演;宁浩执导的《北京好人》单元,由葛优、刘敏涛主演;徐峥执导的《最后一课》单元,由范伟、张译、韩昊霖主演;邓超&俞白眉执导的《回乡之路》单元,由邓超、闫妮主演;闫非&彭大魔执导的《神笔马亮》单元,由沈腾、马丽主演。

  • 女生翻唱回到过去比原唱还好听(雷婷再回到从前太好听的女声翻唱)

    如果再回到从前所有一切重演我是否会明白生活重点不怕措折打击没有空虚埋怨让我看得更远如果再回到从前还是与你相恋你是否会在乎永不永远还是热恋以后简短说声再见给我一点空间我不再轻许诺言不再为谁而把自己改变历经生活试验爱情措折难免我依然期待明天如果再回到从前还是与你相恋你是否会在乎永不永远还是热恋以后简短说声再见给我一点空间我不再轻许诺言不再为谁而把自己改变历经生活试验爱情措折难免我依然期待明天如果再回到

  • 在哪些条件下容易发霉(什么情况下容易发霉)

    霉菌可以在0℃~40℃的温度范同内生长,而22℃~35℃被认为是霉菌生长的最佳温度。如黄曲霉的最低繁殖温度范围是6-8℃,最高繁殖温度是44~46℃,最适生长温度37℃左右。但产毒温度则不一样,略低于生长最适温度,如黄曲霉的最适产毒温度为28-32℃。现已有很多关于霉菌对无机类建筑材料侵蚀的报告。当环境温度在5℃~5O℃,相对湿度总是在80%以上,数周或数月通常就能引发霉菌生长。