集市与商城的评价体系有什么区别,数据仓库和数据集市:ODS、DW、DWD、DWM、DWS、ADS
@TOC
数据流
应用示例
什么是数据仓库 DW
数据仓库(可缩写为DW或DWH)数据仓库是在已经大量存在数据库的情况下,包括etl、调度、建模等完整的理论体系。
构建数据仓库解决方案的目的是为前端查询和分析提供依据。主要用于OLAP(on-line Analytical Processing),支持复杂的分析操作,专注于决策支持,提供直观易懂的查询结果。目前业界比较流行的有:AWS Redshift、Greenplum、Hive等。
数据仓库不是数据的最终归宿,而是为数据归宿的准备工作,这些准备工作包括:清洗、转义、分类、重组、合并、拆分、统计等。
主要特性 集成 不可修改 与数据库特性的时间相关比较 数据仓库 事务数据库
合适的工作量
分析、报告、大数据
事务处理
数据源
从多个来源收集和规范化的数据
从单一来源(例如事务系统)捕获的数据
数据抓取
批量写入操作按照预定的批处理调度执行
随着新数据最大化事务吞吐量,针对顺序写入操作进行了优化
数据归一化
非标准化模式,例如星型模式或雪花模式
高度标准化的静态模式
数据存储
使用列存储进行了优化,便于访问和高速查询性能
针对单行物理块中的高吞吐量写入操作进行了优化
数据访问
优化以最小化 I/O 并最大化数据吞吐量
大量的小型读取操作
为什么分层
数据仓库涉及的问题:
为什么要做数据仓库?为什么要做数据质量管理?为什么要做元数据管理?数据仓库分层中每一层的作用是什么?…
在实际工作中,我们都希望我们的数据能够有条不紊地流动,设计者和用户能够清楚的知道数据的整个申报周期,如下图左图。
然而,在实践中,我们面临的数据情况很可能是高度复杂和混乱的。我们可以创建一个混沌表依赖结构和循环依赖的数据系统,如下图右图。.
为了解决我们可能面临的问题,我们需要一套有效的数据组织、管理和处理方法,使我们的数据系统更加有序,这就是数据分层。数据分层的好处:
数据分层
每个公司的业务可以根据自己的业务需求进行不同层次的分层;目前成熟的数据分层:数据运营层ODS、数据仓库层DW、数据服务层ADS(APP)。
数据操作层ODS
数据操作层:Operation Data Store数据准备区,也称为源层。数据源中的数据经过提取、清洗、传输后进入这一层,即ETL过程。该层的主要功能:
当源数据加载到这一层时,比如去噪(比如一段数据中一个人的年龄是300岁,属于异常数据,需要提前做一些处理),去重(比如个人数据表中),同一个ID有两条重复数据,访问时需要进行一步去重)、字段命名规范等一系列操作。
但是为了考虑后续可能需要追踪的数据问题,不建议对这一层做过多的数据清理工作。也可以按原样访问原始数据,根据具体业务层的需要来做。
这层数据是后续数据仓库处理数据的来源。获取数据的方法:
埋入式日志消息队列:来自ActiveMQ、Kafka等数据仓库层的数据
数据仓库层从上到下可分为三层:数据明细层DWD、数据中间层DWM、数据服务层DWS。
数据细节层 DWD
数据明细层:数据仓库明细,DWD(数据清洗/DWI)
该层是业务层和数据仓库之间的隔离层,保持与ODS层相同的数据粒度;它主要对ODS数据层进行一些数据清洗和规范化操作,比如去除空数据、脏数据、异常值等。
为了提高数据明细层的可用性,该层通常采用一些维度退化的方法集市与商城的评价体系有什么区别,将维度退化为事实表,减少事实表与维度表之间的关联。
数据中间层 DWM
数据中间层:Data Warehouse Middle、DWM
该层基于DWD层的数据,对数据进行一些轻微的聚合操作,生成部分列的中间结果表,提高公共指标的复用性,减少重复处理的工作。
简而言之,将一般核心维度进行汇总,计算出相应的统计指标
数据服务层 DWS
数据服务层:Data Warehouse Service、DWS(宽表-用户行为、轻聚合)
该层以DWM上的基础数据为基础,集成聚合为分析某一学科领域的数据服务层。一般为宽表,用于提供后续业务查询、OLAP分析、数据分发等。
一般来说,这一层的数据表会比较少;一张表将涵盖更多的业务内容。由于字段较多,所以这一层的表一般称为宽表。
数据应用层 ADS
数据应用层:Application Data Service,ADS(APP/DAL/DF)——报告结果
该层主要用于数据产品和数据分析。在线系统一般存储在ES、Redis、PostgreSql等系统中;它也可以存储在 hive 或 Druid 中,用于数据分析和数据挖掘。例如,这里有常用的数据报告。
事实表
事实表是指存储事实记录的表,比如系统日志、销售记录等。事实表的记录是不断增长的集市与商城的评价体系有什么区别,比如电商产品订单表,就是类似的情况,所以事实表的体积通常远大于其他表的体积。
尺寸 表面尺寸 (DIM)
Dimension Table或维度表,有时也称为Lookup Table,是对应于事实表的表;它存储维度的属性值,并且可以关联到事实表,相当于将事实表中频繁出现的属性提取出来,并通过一张表进行标准化管理。维度表主要由两部分组成:
临时表 TMP
每一层计算都会有很多临时表,专门设计了一个DWTMP层来存放我们数据仓库的临时表
数据库
窄 ADS 层;泛指hadoop从DWD DWS ADS同步到RDS的数据
数据集市,又称数据市场,是为了满足特定部门或用户的需求,以多维度的方式存储,包括定义维度、待计算指标、维度级别等,生成决策-面向分析需求的数据立方体。
在范围方面,数据是从企业范围的数据库、数据仓库或更专业的数据仓库中提取的。数据中心的重点在于它满足专业用户群体在分析、内容、性能和易用性方面的特定需求。数据中心的用户希望数据以他们熟悉的术语来表示。
具有数据集市的数据仓库结构
差异数据仓库
数据集市是企业级数据仓库的子集,主要面向部门级业务,只面向特定主题。为了解决灵活性和性能之间的矛盾,数据集市是添加到数据仓库架构中的小型部门或工作组级别的数据仓库。数据集市为特定用户存储预先计算的数据,以满足用户的性能需求。数据集市可以在一定程度上缓解访问数据仓库的瓶颈。
理论上应该有一个通用的数据仓库概念,然后是数据集市。在实际建立数据集市时,在中国很少这样做。在国内,我们一般先从数据集市入手,针对特定主题(比如企业的客户信息)搭建数据集市,然后再搭建数据仓库。数据仓库和数据集市的建立顺序与设计方法密切相关。作为一门工程学科,数据仓库没有对错之分。
就数据结构而言集市与商城的评价体系有什么区别,数据仓库和数据集市:ODS、DW、DWD、DWM、DWS、ADS,数据仓库是面向主题的、集成的数据集合。数据集市通常被定义为星型结构或雪花型数据结构。数据集市一般由一个事实表和几个维度表组成。
问题总结 ODS 和 DWD 有什么区别?
**问:** 我还是不明白 ods 和 dwd 层的区别。有了ods层后,感觉dwd没用了。
**答案:** 嗯,这就是我的理解。从理想的角度来看,如果ods层的数据非常规整,基本可以满足我们大部分的需求,当然是好的。这时候dwd层并不是真正需要的。然而集市与商城的评价体系有什么区别,数据仓库和数据集市:ODS、DW、DWD、DWM、DWS、ADS,在现实中,很难保证 ods 层的数据质量。毕竟数据的来源是多种多样的,推送者也会有自己的推送逻辑。在这种情况下,我们需要额外传递一层 dwd。掩盖一些低层次的差异。
**Q:**我大概明白了,是不是说dwd主要对ods层做一些数据清洗和归一化操作,dws主要是对ods层数据做一些轻量级的总结?
**答案:** 是的,大致可以这样理解。
APP层是做什么的?
Q3:app层是做什么的?
**Q:**你觉得DWS层没地方放,每个业务的DWS表应该在DWD还是在app里?
**答案:** 这个问题不好回答。我认为主要是澄清 DWS 层的作用。如果你的 DWS 层包含一些业务端可以使用的宽表,就放在 app 层。如果说你说的数据集市是一个比较笼统的概念,那么其实dws、dwd、app都是数据集市的内容。
**Q:** Redis 和 ES 中存储的数据是否算应用层?
**回答:** 是的,我个人的理解是,app层主要存放一些比较成熟的表,业务方可以使用。这些表可以在 Hive 中,也可以从 Hive 导入到 Redis 或 ES 中,这是一个查询性能更好的系统。
附录 ETL
ETL:Extract-Transform-Load,用于描述数据从源端提取、转换、加载到目的端的过程。
宽表和宽表的设计广泛用于数据挖掘模型训练前的数据准备。通过将相关字段放在同一张表中,可以极大地解决数据挖掘模型训练过程中迭代计算的消息问题。主题
它是对企业信息系统中的数据进行更高层次的综合、分类和分析的抽象概念,每个学科基本对应一个宏观分析领域。从逻辑上讲,它对应于企业中一个宏观分析领域所涉及的分析对象。比如“销售分析”就是一个分析领域,那么这个数据仓库应用的主题就是“销售分析”。
参考:
…
/pmdream/艺术…
百度百科
本文由多帖子博客平台 OpenWrite 发布!
评论前必须登录!
注册