ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

数据仓库概述

2021-10-20 21:00:04  阅读:536  来源: 互联网

标签:数据库 主题 数据仓库 分层 概述 维度 数据


数据仓库概述

数据仓库(Data Warehouse),简称DW或DWH,是一个面向主题的(Subject Oriented)、集成的(Integrate)、相对稳定的(Non-Volatile)、反应历史变化(Time Variant)的数据集合,用于支持管理、运营决策。

  • 面对主题的:数据仓库里的数据面向主题作为大分类,例如用户分析主题、流量分析主题等等。这种主题往往也是我们处理数据的目的。
  • 集成的:数据仓库的数据不只是通常数据库表里写下的业务数据,也记录下了用户行为相关的埋点数据等,例如用户访问的日志数据等。数据仓库的数据是由多种不同形式的数据整合而成的。
  • 相对稳定的:数据仓库里的数据并不进行频繁修改,而是定期拉取数据后进行分析用。即使业务数据的状态发生了更新,也只是得到更新前后的两种数据,而不是修改数据仓库的数据。
  • 反映历史变化的:正如第三条所述,数据若在不同时间发生变化,数据仓库并不会跟着一起变化,而是会记录不同时间的两条数据,这可以反映某种业务的变化。例如,订单从已发货到已接收,数据仓库就会把这两条数据都放到里面,并且可以根据时间看出他们的历史变化。

数据库和数据仓库

1. 数据库

数据库一般是指一些数据库软件,如mysql, oracle等。这种数据库的普遍使用场景就是联机事务处理(OLTP, OnLine Transaction Processing)。简单来说,OLTP可以完成以下工作:

  • 时刻保持联机在线状态,并且可以进行实时数据的增删改查以及响应。
  • 可以实现强大的事务控制。

2. 数据仓库

随着业务运行时长增长,会出现以下两个问题:

  • OLTP的速度由于数据量的增长会越来越慢
  • 对越来越大的数据量进行分析会耗费很多运算和IO资源,导致影响正常的OLTP操作

所以,我们将OLTP的数据定期导入到其他的数据库,并且对该数据库专门用于长时间跨度数据的数据分析与统计。这就是数据仓库。

数据仓库的主题

数据仓库的主题,指的是数据根据业务围绕着的主题进行的逻辑分类。

例如,对于电商来说,大概有以下主题:总体运营指标分析、网站流量指标分析、客户价值指标分析等等。各种形式的数据根据业务主题逻辑分类,进行进一步的数据分析和统计。

更简单来说,数据仓库的主题就是数据的总体用处和目的逻辑分类。

数据仓库的分层

数据仓库主要是分层进行管理的。一般来说,分为以下几层:
在这里插入图片描述
(图片来源:https://blog.csdn.net/BeiisBei/article/details/105723188)

当然,我们也可以将以上分层以理论汇总为三层,即应用数据层(ADS)、数据仓库层(DW)和操作数据层(ODS)。

1. 操作数据层(ODS)

“面向主题的”,数据运营层,也叫ODS层,是最接近数据源中数据的一层,数据源中的数据,经过抽取、洗净、传输,也就说传说中的 ETL 之后,装入本层。

本层的数据,总体上大多是按照源头业务系统的分类方式而分类的。但是,这一层面的数据却不等同于原始数据。在源数据装入这一层时,要进行诸如去噪、去重、字段命名规范等一系列操作。

2. 数据仓库层(DW/CDM)

这是数据仓库的主体。在这里,从 ODS 层中获得的数据按照主题建立各种数据模型,在这一层和维度建模会有比较深的联系。

3. 数据产品/集市层(APP/ADS)

这一层是提供为数据产品使用的结果数据。在这里,主要是提供给数据产品和数据分析使用的数据,一般会存放在 ES、MySQL等系统中供线上系统使用,也可能会存在 Hive 或者 Druid 中供数据分析和数据挖掘使用。如我们经常说的报表数据,或者说那种大宽表,一般就放在这里。

另外,我们在实际分层过程中,也可以根据我们的实际数据处理的流程进行分层。

数据分层的原因

  1. 空间换时间。通过建设多层数据,前端可以直接用应用数据层的数据进行展示,省下很多统计时间。
  2. 将一个数据分析或者统计的问题进行分层,便于理解和维护。
  3. 有利于解耦,当底层业务发生变化时,只需要修改底层数据处理方法即可,上层不受影响。

事实表与维度表

事实指的是已发生的某件事。维度指的是衡量事实的一个角度。

事实表:记录事实的表。比如,订单表、注册表、浏览日志表等。
维度表:对该维度的详细描述信息。比如,地域维表、品类维表、时间维表等。

一个事实表可以和多个维度表进行关联,就像一个事件可以通过多个维度看待。例如,订单表就可以根据地域维表的维度查看某地的订单数据分布,品类统计,以及时间集中趋势等。

参考:https://blog.csdn.net/BeiisBei/article/details/105723188

标签:数据库,主题,数据仓库,分层,概述,维度,数据
来源: https://blog.csdn.net/weixin_41812379/article/details/120873130

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有