阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

数据仓库分层原理

282次阅读
没有评论

共计 2347 个字符,预计需要花费 6 分钟才能阅读完成。

导读 数据仓库是一个面向主题的、集成的、随时间变化的、但信息本身相对稳定的数据集合,用于对管理决策过程的支持。互联网时代, 由于上网用户剧增,特别是移动互联网时代, 海量的网络设备,导致了海量的数据产生,企业需要也希望从这些海量数据中挖掘有效信息,如行为日志数据,业务数据, 爬虫数据等等中提炼出有价值信息。现代大数据技术应运而生。而数仓就是做这些海量数据存储的地方。
数据仓库简介

数据仓库是一个面向主题的、集成的、随时间变化的、但信息本身相对稳定的数据集合,用于对管理决策过程的支持。

互联网时代, 由于上网用户剧增,特别是移动互联网时代, 海量的网络设备,导致了海量的数据产生,企业需要也希望从这些海量数据中挖掘有效信息,如行为日志数据,业务数据, 爬虫数据等等中提炼出有价值信息。但传统的关系型数据库由于本身技术限制,无法很好承担这么大数据量存储和分析的任务,现代大数据技术应运而生。而数仓就是做这些海量数据存储的地方。

数据仓库分层原理

数据仓库分层

数仓数据分层,就跟代码分层一样。如果所有数据都放在一层,就跟代码都放在一个文件,肯定是可以运行的,但带来的问题就是阅读性差,复用性和维护性降低。
数仓的分层的每一层都有自己的职责,同时都是基于下一层或者下面多层做数据处理之后的结果。
使用数据分层机制,相当于提炼黄金的流程, 逐步逐步将有价值信息进行汇总聚合。这样就跟分步操作一样,最终提炼出想要的结果. 同时就算原始数据丢失了,只要中间结果还在,依然可以保证最上层数据的稳定性,类似加了一层缓冲一样。

模型设计
1. ODS 层

数据仓库分层原理

数据仓库分层——DWD DWS ADS 傻傻分不清楚 - 鸿蒙 HarmonyOS 技术社区
这一层又叫做贴源层,就是接近数据源的一层,需要存储的数据量是最大的,存储的数据也是最原始,最真实未经过太多处理的数据。
ODS 层数据还起到一个数据备份作用,如果是比较特殊行业,在 ODS 层的数据会保留一年甚至多年具体还看数据量和存储压力以及存储预算决定。
一个很经典的模型,就是外部往 Kafka 推送数据,然后使用 Flume 把数据落盘到 HDFS 上。
一般 ODS 都是原始数据,而原始数据因为种种原因会有很多问题,比如:

  • 字段缺失
  • 数据字段不统一
  • 格式错误
  • 关键信息丢失等等
  • 数据来源混杂
  • 数据类型不一, 例如 json,xml,text,csv 的, 压缩了的, 没有压缩
  • 这些问题可以在 ODS 落盘时进行处理,也可以放到下一层,也就是 DWD 层进行处理,这个可以根据具体业务进行判断。
    ODS 层建立表时, 如果使用 hive 进行处理, 一般建立外部表,外部表的特点除了文件地址可以指定外,删表时数据不会被删除。

    create external table xxx()

    数据量很大时,就需要考虑区分存储,比如 HIVE 表的按天分区等。
    ODS 是可能是整个数据仓库中最占用空间的层级,因此对该层的数据优化需要持续关注

    2. DWD 层

    数据仓库分层原理

    数据仓库分层——DWD DWS ADS 傻傻分不清楚 - 鸿蒙 HarmonyOS 技术社区
    DWD 又叫做数据明细表,会有 ETL,也就是 extract transform load 提取转换加载处理,逻辑会比较复杂,这时候如果使用 hive,一般无法满足要求,这些逻辑一般都是编写代码实现,然后使用脚本进行周期性如每天调用。
    这也是离线批处理的第一步,大量的原始数据逐条筛选处理,需要处理的内容包括但不限于如下:

  • 去除废弃字段, 去除格式错误的信息
  • 去除丢失了关键字段的信息
  • 数据规范化, 因为大数据处理的数据可能来资源不同,这时候可能相同业务数据字段,数据类型,空值等都不一样,这时候需要在 DWD 层做抹平,否则后续处理使用时,会造成很大的困扰
  • 如后续有业务需要,需要对 DWD 层数据进行水平或垂直切割
  • DWD 层的数据单纯从条数上看可能和 ODS 差不多,但是经过清洗过后,占用的存储空间会小很多。

    3. DWS 层

    数据仓库分层原理

    数据仓库分层——DWD DWS ADS 傻傻分不清楚 - 鸿蒙 HarmonyOS 技术社区
    DWS 俗称的数据服务层,一般使用主题建模或维度建模等方式

      主题建模
  • 顾名思义,围绕某一个业务主体进行数据建模,将相关数据抽离提取出来
  • 将流量会话按照天、月进行聚合
  • 将每日活跃用户进行聚合
  • 将某样商品按用户或时间聚合
    • 维度建模
  • 根据业务需要,提前将后续数据查询处理需要的维度数据抽离处理出来,方便后续查询使用
  • 将运营位维度数据聚合
  • 将渠道拉新维度数据聚合
  • DWS 层一般都是存储与一定业务相关的数据,可以说是一种结果数据,建模数据,所以与 DWD 相比数据占用空间会更小。

    4. DM 层

    数据仓库分层原理

    数据仓库分层——DWD DWS ADS 傻傻分不清楚 - 鸿蒙 HarmonyOS 技术社区
    DM 层即数据集市层,是以某个业务应用为出发点而建设的局部 DW,通常是星形或雪花结构的数据。DM 只关心自己需要的数据,它需要结构清晰、针对性强。

  • 从数据粒度来说,这层的数据是轻度汇总级的数据,已经不存在明细数据了
  • 从时间上看,用户通常只需要分析近几年(如近 3 年的数据)的即可
  • DM 层已经很接近最终用户使用的数据了,所以对于该层的数据最好覆盖面越广越好,而很多时候为了减少 DM 层的工作量,会去返推 DWS 层的业务逻辑,使 DM 更多只聚焦与业务而不是逻辑或运算。

    5. ADS 层

    数据仓库分层原理

    数据仓库分层——DWD DWS ADS 傻傻分不清楚 - 鸿蒙 HarmonyOS 技术社区
    ADS 层叫应用服务层,一般就直接对接 OLAP 分析,或者业务层数据调用接口了。
    这是最顶层,一般都是结果类型数据,可以直接拿去使用或者展示的数据了,也是对数据抽离分析程度最高的一层数据。
    这一层是需求最明确的一层,根据业务需求来决定数据维度和结果分析。
    该层首要考虑的,一般是查询效率问题,所以针对不同的业务系统,需要考虑使用不同的数据库进行存储。

    阿里云 2 核 2G 服务器 3M 带宽 61 元 1 年,有高配

    腾讯云新客低至 82 元 / 年,老客户 99 元 / 年

    代金券:在阿里云专用满减优惠券

    正文完
    星哥玩云-微信公众号
    post-qrcode
     0
    星锅
    版权声明:本站原创文章,由 星锅 于2024-07-25发表,共计2347字。
    转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
    【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
    阿里云-最新活动爆款每日限量供应
    评论(没有评论)
    验证码
    【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

    星哥玩云

    星哥玩云
    星哥玩云
    分享互联网知识
    用户数
    4
    文章数
    19348
    评论数
    4
    阅读量
    7802078
    文章搜索
    热门文章
    开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

    开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南

    开发者必备神器:阿里云 Qoder CLI 全面解析与上手指南 大家好,我是星哥。之前介绍了腾讯云的 Code...
    星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

    星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

    星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
    云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

    云服务器部署服务器面板1Panel:小白轻松构建Web服务与面板加固指南

    云服务器部署服务器面板 1Panel:小白轻松构建 Web 服务与面板加固指南 哈喽,我是星哥,经常有人问我不...
    我把用了20年的360安全卫士卸载了

    我把用了20年的360安全卫士卸载了

    我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
    星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

    星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

    星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
    阿里云CDN
    阿里云CDN-提高用户访问的响应速度和成功率
    随机文章
    星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

    星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

    星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
    Python自学26 – Cookie和Session

    Python自学26 – Cookie和Session

    Python 自学 26 – Cookie 和 Session 在学习 Web 开发时,Cooki...
    150元打造低成本NAS小钢炮,捡一块3865U工控板

    150元打造低成本NAS小钢炮,捡一块3865U工控板

    150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...
    零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

    零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

    零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...
    国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

    国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

    国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...

    免费图片视频管理工具让灵感库告别混乱

    一言一句话
    -「
    手气不错
    星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

    星哥带你玩飞牛NAS-16:飞牛云NAS换桌面,fndesk图标管理神器上线!

      星哥带你玩飞牛 NAS-16:飞牛云 NAS 换桌面,fndesk 图标管理神器上线! 引言 哈...
    恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

    恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击

    恶意团伙利用 PHP-FPM 未授权访问漏洞发起大规模攻击 PHP-FPM(FastCGl Process M...
    开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

    开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

      开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...
    安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

    安装Black群晖DSM7.2系统安装教程(在Vmware虚拟机中、实体机均可)!

    安装 Black 群晖 DSM7.2 系统安装教程(在 Vmware 虚拟机中、实体机均可)! 前言 大家好,...
    还在找免费服务器?无广告免费主机,新手也能轻松上手!

    还在找免费服务器?无广告免费主机,新手也能轻松上手!

    还在找免费服务器?无广告免费主机,新手也能轻松上手! 前言 对于个人开发者、建站新手或是想搭建测试站点的从业者...