数据仓库为什么要分层

  1. 如何分层
    • 结合Inmon和Kimball的集线器式和总线式的数据仓库的优点,分层为ODS-DW-DM-OLAP/OLAM/app
    • ODS层是将OLTP数据通过ETL同步到数据仓库来作为数据仓库最基础的数据来源。在这个过程中,数据经过了一定的清洗,比如字段的统一,脏数据的去除等,但是数据的粒度是不会变化的。ODS层的数据可以只保留一定的时间。
    • DW层是采用Inmon集线器架构的方式,针对某一主题subject area,通过使用范式建模的方法,构建EDW层数据。当然跟操作型数据库的范式建模也不太一样,数据仓库是允许有冗余的,因为当数据量很大的时候,增加冗余可以减少表之间的关联次数,可以一定的提高效率。
    • DM层是采用Kimball的总线式的数据仓库架构,针对部门(比如财务部门)或者某一主题(比如商户、用户),通过维度建模(推荐星型模型),构建一致性维度,经过一定的汇总,建设数据集市模型。数据集市可以为OLAP提供服务。
  2. 为什么要分层
    • 空间换时间。通过建设多层次的数据模型供用户使用,避免用户直接使用操作型数据,可以更高效的访问数据。
    • 把复杂问题简单化。讲一个复杂的任务分解成多个步骤来完成,每一层只处理单一的步骤,比较简单和容易理解。而且便于维护数据的准确性,当数据出现问题之后,可以不用修复所有的数据,只需要从有问题的步骤开始修复。
    • 便于处理业务的变化。随着业务的变化,只需要调整底层的数据,对应用层对业务的调整零感知.
  3. 分层的价值
    • 高效的数据组织形式【易维护
      面向主题的特性决定了数据仓库拥有业务数据库所无法拥有的高效的数据组织形式,更加完整的数据体系,清晰的数据分类和分层机制。因为所有数据在进入数据仓库之前都经过清洗和过滤,使原始数据不再杂乱无章,基于优化查询的组织形式,有效提高数据获取、统计和分析的效率。
    • 时间价值【高性能】
      数据仓库的构建将大大缩短获取信息的时间,数据仓库作为数据的集合,所有的信息都可以从数据仓库直接获取,数据仓库的最大优势在于一旦底层从各类数据源到数据仓库的ETL流程构建成型,那么每天就会有来自各方面的信息通过自动任务调度的形式流入数据仓库,从而使一切基于这些底层信息的数据获取的效率达到迅速提升。
      从应用来看,使用数据仓库可以大大提高数据的查询效率,尤其对于海量数据的关联查询和复杂查询,所以数据仓库有利于实现复杂的统计需求,提高数据统计的效率。
    • 集成价值【简单化】
      数据仓库是所有数据的集合,包括日志信息、数据库数据、文本数据、外部数据等都集成在数据仓库中,对于应用来说,实现各种不同数据的关联并使多维分析更加方便,为从多角度多层次地数据分析和决策制定提供的可能。
    • 历史数据【历史性】
      记录历史是数据仓库的特性之一,数据仓库能够还原历史时间点上的产品状态、用户状态、用户行为等,以便于能更好的回溯历史,分析历史,跟踪用户的历史行为,更好地比较历史和总结历史,同时根据历史预测未来。
时间: 2024-11-03 17:31:12

数据仓库为什么要分层的相关文章

BI数据仓库数据分层

为什么要对数据仓库分层? 用空间换时间,通过大量的预处理来提升应用系统的用户体验(效率),因此数据仓库会存在大量冗余的数据: 如果不分层的话,如果源业务系统的业务规则发生变化将会影响整个数据清洗过程,工作量巨大 通过数据分层管理可以简化数据清洗的过程,因为把原来一步的工作分到了多个步骤去完成,相当于把一个复杂的工作拆成了多个简单的工作,把一个大的黑盒变成了一个白盒,每一层的处理逻辑都相对简单和容易理解,这样我们比较容易保证每一个步骤的正确性,当数据发生错误的时候,往往我们只需要局部调整某个步骤即

数据仓库规范

一. 数据仓库层次结构规范 1.1 基本分层结构 系统的信息模型从存储的内容方面可以分为,STAGE接口信息模型.ODS/DWD信息模型,MID信息模型.DM信息模型.元数据信息模型. 在各个信息模型中存储的内容如下描述: 1)        SRC接口层信息模型:提供业务系统数据文件的临时存储,数据稽核,数据质量保证,屏蔽对业务系统的干扰,对于主动数据采集方式,以文件的方式描述系统与各个专业子系统之间数据接口的内容.格式等信息.与该模型对应的数据是各个专业系统按照该模型的定义传送来的数据文件.

【阿里在线技术峰会】李金波:企业大数据平台仓库架构建设思路

摘要: 在阿里巴巴在线在线技术峰会上的第三天,来自阿里云高级技术专家李金波为大家题为<企业大数据平台仓库架构建设思路>.本次分享中,李金波主要从总体思路.模型设计.数加架构.数据治理四个方面介绍了如何利用大数据平台的特性,构建更贴合大数据应用的数据仓库. 本文根据阿里云高级技术专家李金波在首届阿里巴巴在线峰会的<企业大数据平台仓库架构建设思路>的分享整理而成.随着互联网规模不断的扩大,数据也在爆炸式地增长,各种结构化.半结构化.非结构化数据的产生,越来越多的企业开始在大数据平台下进

北大深度学习讲座(14-12-14)

周日在北大理教听了余凯和漆远关于深度学习的讲座,这个讲座是北大机器学习研究会办的,不是学术性质,是有点科普性质的一个对话,雷鸣做现场主持. 刚开始余凯说了一下什么是大数据,他提到除了数据源.数据仓库,还有分层的概念,是分层学习的意思吗?存疑:漆远提到一本大数据的入门书,introduction to AI,是伯克利的老师写的.关于机器学习,漆远还提到不确定性的概念,就是除了最优化误差外,得到的最优结果的不确定性是多少,对于某些问题,这也是很重要的.他提到曾经在华尔街工作,如果你算得一个股票能收益

用SparkSQL构建用户画像

用SparkSQL构建用户画像 二.  前言 大数据时代已经到来,企业迫切希望从已经积累的数据中分析出有价值的东西,而用户行为的分析尤为重要. 利用大数据来分析用户的行为与消费习惯,可以预测商品的发展的趋势,提高产品质量,同时提高用户满意度. 三.  初识用户画像 右边是一个人的基本属性,通过一个人的基本属性我们可以了解到这个人的基本信息,左边上图是通过消费购物信息来描述一个人特征,左边下图是通过交际圈信息来描述一个人特征,通过不同的维度,去描述一个人,认识一个人,了解一个人.这就是我们今天所要

大数据模块开发----ETL

ETL工作的实质就是从各个数据源提取数据,对数据进行转换,并最终加载填充数据到数据仓库维度建模后的表中.只有当这些维度/事实表被填充好,ETL工作才算完成. 本项目的数据分析过程在hadoop集群上实现,主要应用hive数据仓库工具,因此,采集并经过预处理后的数据,需要加载到hive数据仓库中,以进行后续的分析过程. 1.?创建ODS层数据表1.1.?原始日志数据表 drop table if exists ods_weblog_origin; create table ods_weblog_o

数据仓库架构分层

数据仓库简介:有些人不理解数据仓库,认为数据仓库就是获取数据,只要会使用hadoop.spark等大数据工具就懂数据仓库,这样的认识太片面.如果要从海量数据中总结出一个报表或者是多个报表,大数据工程师足以:如果在有限的资源动态的数据情况下,向前可历史追溯,向后对不断增加的报表实现兼容,这就需要一套科学的数据管理方法.数据仓库是一门数据管理的科学,数据仓库的核心就是计算.存储和维护之间的博弈. 标准的数据仓库分层:sd(源数据层),ods(中间存储层),dw(多维数据层),dm(数据集市层),ap

数据仓库分层

数据仓库分层 1.介绍 数据仓库更多代表的是一种对数据的管理和使用的方式,它是一整套包括了etl.调度.建模在内的完整的理论体系.现在所谓的大数据更多的是一种数据量级的增大和工具的上的更新. 两者并无冲突,相反,而是一种更好的结合.数据仓库在构建过程中通常都需要进行分层处理.业务不同,分层的技术处理手段也不同. 2.为什么要分层 分层的主要原因是在管理数据的时候,能对数据有一个更加清晰的掌控,详细来讲,主要有下面几个原因: 清晰数据结构 每一个数据分层都有它的作用域,这样我们在使用表的时候能更方

数据仓库的多维数据模型

可能很多人理解的数据仓库就是基于多维数据模型构建,用于OLAP的数据平台,通过上一篇文章——数据仓库的基本架构,我们已经看到数据仓库的应用可能远不止这些.但不得不承认多维数据模型是数据仓库的一大特点,也是数据仓库应用和实现的一个重要的方面,通过在数据的组织和存储上的优化,使其更适用于分析型的数据查询和获取. 多维数据模型的定义和作用 多维数据模型是为了满足用户从多角度多层次进行数据查询和分析的需要而建立起来的基于事实和维的数据库模型,其基本的应用是为了实现OLAP(Online Analytic