在数据仓库的设计过程中,数据分层是一种重要的组织方式,能够提高数据处理效率和数据质量。数据分层通常包括原始数据(Operational Data Store,ODS)、明细数据(Data Warehouse,DW)和汇总数据(Data Mart,DM)三个层级。下面将详细介绍这三个层级的作用以及如何优雅地设计它们。

一、原始数据层(ODS)

原始数据层是数据仓库的第一层,也是最基础的一层。它主要存储从各个业务系统抽取出来的原始数据,这些数据通常是实时的、未经过处理的。在 ODS 层中,我们需要重点关注以下几个方面:

  • 数据实时性:确保 ODS 层中的数据能够实时地反映业务系统的最新状态。
  • 数据一致性:确保 ODS 层中的数据与业务系统中的数据一致。
  • 数据冗余:由于 ODS 层中的数据直接来自于业务系统,因此可能存在大量的数据冗余。我们需要对数据进行去重或者采用其他方式来减少冗余。

二、明细数据层(DW)

明细数据层是数据仓库的第二层,它从 ODS 层中抽取数据,并进行清洗、转换和整合。DW 层中的数据通常是以日、周、月等时间粒度进行汇总的。在 DW 层中,我们需要重点关注以下几个方面:

  • 数据清洗:对 ODS 层中的数据进行清洗,去除异常值、缺失值等不良数据。
  • 数据转换:对 ODS 层中的数据进行转换,将业务系统的数据转换为适合数据分析的形式。
  • 数据整合:将 ODS 层中的数据进行整合,将分散的数据整合为完整的数据。

三、汇总数据层(DM)

汇总数据层是数据仓库的第三层,它从 DW 层中抽取数据,并进行汇总和分析。DM 层中的数据通常是按照分析需求进行汇总的数据,例如按照地区、时间等维度进行汇总。在 DM 层中,我们需要重点关注以下几个方面:

  • 数据汇总:按照分析需求对 DW 层中的数据进行汇总。
  • 数据挖掘:在 DM 层中进行数据挖掘和分析,发现数据中的规律和趋势。
  • 数据可视化:将 DM 层中的数据进行可视化处理,以便于决策者进行决策。

总结

优雅地设计数据分层 ODS DW DM层级是构建高效、高质量的数据仓库的关键之一。在设计过程中,我们需要关注数据的实时性、一致性、冗余、清洗、转换、整合、汇总和分析等方面,确保每一层的数据都能够满足其对应的需求。同时,我们还需要考虑如何优化数据的存储和访问方式,以提高数据处理效率和数据质量。

数据分层 ODS DW DM层级的更多相关文章

  1. 【漫谈数据仓库】 如何优雅地设计数据分层 ODS DW DM层级

    转载http://bigdata.51cto.com/art/201710/554810.htm 一.文章主题 本文主要讲解数据仓库的一个重要环节:如何设计数据分层!其它关于数据仓库的内容可参考之前的 ...

  2. 数据仓库分层ODS DW DM 主题 标签

    数据仓库知识之ODS/DW/DM - xingchaojun的专栏 - CSDN博客 数据仓库为什么要分层 - 晨柳溪 - 博客园 数据仓库的架构与设计 - Trigl的博客 - CSDN博客 数据仓 ...

  3. 对数据仓库ODS DW DM的理解

    原文链接:https://www.jianshu.com/p/72e395d8cb33 今天看了一些专业的解释,还是对ODS.DW和DM认识不深刻,下班后花时间分别查了查它们的概念. ODS——操作性 ...

  4. DW,DM,ODS的区别

    数据仓库的重要应用是将不同来源的数据和异构数据通过ETL整合在一起,为决策分析提供支撑,若在同一个数据库中分不同用户,此意义不大:假设所有有用户都在一个数据库里,如果因为某个原因数据库重启,那么会影响 ...

  5. 数据仓库DW、ODS、DM概念及其区别

    整体结构 在具体分析数据仓库之前先看下一下数据中心的整体架构以及数据流向   数据中心整体架构.png DB 是现有的数据来源,可以为mysql.SQLserver.文件日志等,为数据仓库提供数据来源 ...

  6. 数仓1.1 分层| ODS& DWD层

    数仓分层 ODS:Operation Data Store原始数据 DWD(数据清洗/DWI) data warehouse detail数据明细详情,去除空值,脏数据,超过极限范围的明细解析具体表 ...

  7. GIS案例学习笔记-CAD数据分层导入现有模板实例教程

    GIS案例学习笔记-CAD数据分层导入现有模板实例教程 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 1. 原始数据: CAD数据 目标模板 2. 任务:分5个图层 ...

  8. hdfs冷热数据分层存储

    hdfs如何让某些数据查询快,某些数据查询慢? hdfs冷热数据分层存储 本质: 不同路径制定不同的存储策略. hdfs存储策略 hdfs的存储策略 依赖于底层的存储介质. hdfs支持的存储介质: ...

  9. ODS ,EDW,DM

    ODS: 操作数据存储ODS(Operational Data Store),操作型数据仓库,最早的数据仓库模型,是数据仓库体系结构中的一个可选部分,ODS具备数据仓库的部分特征和OLTP系统的部分特 ...

  10. 路径字符串数据转化为树型层级对象,path to json tree

    由于项目中使用了react 及 ant-design ,在使用tree树型控件时,需要 类似下面的数据, const treeData = [{ title: '0-0', key: '0-0', c ...

随机推荐

  1. 学好QT框架之后可以做什么工作?QT技术框架现代化行业大型复杂应用的经典成功案例

    简介 本文粗略的介绍了QT框架的软件开发技术生态体系的全球影响力:QT框架在文字办公领域.CAD三维图形领域.Linux操作系统领域.物联网领域.汽车电子领域以及数字医疗领域等现代化行业的大型复杂应用 ...

  2. 还在苦于密码太弱?教你3招用Linux生成高强度密码

    各位好啊,我是会编程的蜗牛,作为java开发者,我们平常肯定会接触Linux操作系统,其实除了一般的部署应用外,它还可以帮助我们生成密码.解决我们平常自己想各种复杂密码的烦恼,以后我会讲一讲如何安全地 ...

  3. C++ 学习路线图

    基础阶段 学习重点: 基本语法:掌握 C++ 的变量.数据类型(如整型.浮点型.字符型等).运算符.控制流语句(条件判断if-else.循环for.while.do-while等).这是编写 C++ ...

  4. Android Qcom USB Driver学习(四)

    VID/PID识别USB设备 CDC-ACM驱动介绍 CDC-ACM(Communication Device Class--Abstract Control Model)驱动实现以USB设备驱动和t ...

  5. Nuxt.js 应用中的 page:transition:finish 钩子详解

    title: Nuxt.js 应用中的 page:transition:finish 钩子详解 date: 2024/10/10 updated: 2024/10/10 author: cmdrago ...

  6. 02-react中jsx的基本使用

    // 使用 createElement太繁琐 不直观 不优雅开发体验不好 代码维护不行 // jsx 不是 js 而是 js的扩展语法 // jsx 是react的核心内容 // react项目中已经 ...

  7. 谈一谈你对vue指令的理解

    vue指令的本质是给 html 标签新增一些属性 : vue的指令可以分为 3 中类型 : 1. 用于渲染数据的指令,比如 v-for ,v-if ,v-show : 2. 用来交互的指令 ,v-on ...

  8. .NET高级调试 - 3.7对象检查

    简介 在大多数调试会话中,首先需要检查的项目就是分析应用程序的状态.在确认程序的问题是某种无效状态造成的,我们便需要分析程序是如何变成无效状态的.那么在分析过程中,需要为我们深入了解对象的各种审查方法 ...

  9. 最详细CentOS7.6安装openGauss5.0.3教程

    一.环境准备 1.1 主机信息 项目 内容 操作系统 CentOS7.6 IP 192.168.4.201 主机名 opgs201 CPU 8core 内存 16GB 磁盘1 100GB 1.2 操作 ...

  10. KubeSphere 3.2.0 发布:带来面向 AI 场景的 GPU 调度与更灵活的网关

    现如今最热门的服务器端技术是什么?答案大概就是云原生!KubeSphere 作为一个以 Kubernetes 为内核的云原生分布式操作系统,也是这如火如荼的云原生热潮中的一份子.KubeSphere ...