数据仓库基础内容
一.数据仓库概念
将多数据源中的数据整合一起,进行数据分析,此时数据仓库对多种业务数据进行筛选和整合,可以用于数据分析、数据挖掘、数据报表。时效性T+1.
二.数据仓库的特点
- 主题性:数据仓库是针对某个主题来进行组织,比如滴滴出行,司机行为分析就是一个主题,所以可以将多种不同的数据源进行整合。而传统的数据库主要针对某个项目而言,数据相对分散和孤立。
- 集成性:数据仓库需要将多个数据源的数据存到一起,但是这些数据以前的存储方式不同,所以需要经过抽取、清洗、转换的过程
- 稳定性:保存的数据是一系列历史快照,不允许修改,只能分析。
- 时变性:会定期接收到新的数据,反应出最新的数据变化。
三. 数据中心整体架构
四.名称解析
DB:各种数据源,如mysql,mongodb等数据库
ETL: 抽取(extract)、交互转换(transform)、加载(load)的过程。操作工具可以简单的编写程序操作,或者是用kettle工具。
ODS:操作型数据仓库。
ods:操作性数据仓库ods的应用场景
- 在业务系统和数据仓库之间形成一个隔离,ods直接存放从业务系统抽取过来的数据,这些数据从结构和数据上与业务系统保持一致,降低了数据抽取的复杂性。
- 转移一部分业务系统的细节查询功能,因为ods存放的数据与业务系统相同,原来有业务系统产生的报表,现在可以从ods中产生了。
- 完成数据仓库中不能完成的功能。ods存放的是明细数据,数据仓库dw或dm都存放的是汇聚数据,ods提供查询明细功能。
个人理解:
- ods提供了数据冗余备份,它的存在可以避免数据仓库直接调用业务系统的数据。
- 数据抽取到ods中只需要将业务系统的数据原封不动的拷贝过去,可以忽略业务上的规则。
- ods数据只能增加不能修改,而且数据都是从业务系统的原样拷贝,所以可能存在数据冲突的可能,解决办法是为每一条数据增加一个时间版本来区分相同的数据。
DW: 数据仓库,是一个面向主题的(Subject Oriented)、集成的(Integrated)、相对稳定的(Non-Volatile)、反映历史变化(Time Variant)的数据集合,用于支持管理决策
- 效率足够高,要对进入的数据快速处理。
- 数据质量,数据仓库是提供很多决策系统的支撑数据,所以数据准确非常重要。
- 扩展性,企业业务扩展和降低企业建设数据仓库的成本考虑。
- 面向主题,数据仓库中的数据是按照一定的主题域进行组织的,每一个主题对应一个宏观的分析领域,数据仓库排除对决策无用的数据,提供特定主题的简明视图。
dw理解:
- dw主要提供查询服务,并且需要查询能够及时响应。
- 进入dw的数据应该是能唯一的具有权威性的数据,企业的系统只能使用从dw提供的被认可的数据,所以预先做好企业的元数据建立非常必要。
- 定期需要对dw里面的数据进行质量检查,保证dw里面的数据唯一、权威、准确。
- dw的数据也是只允许增加不允许删除和修改,数据仓库主要是提供查询服务,删除和修改在分布式系统中会消耗大量的性能资源。
DM:数据即视层,以某个业务应用为出发点而建设的局部dw,dw只关心自己需要的数据,不会全盘考虑企业整体的数据架构和应用。每个应用有自己的dm
dm理解:
- dm结构清晰、针对性强、扩展性好,因为dm仅仅是单对某一个领域而建立,容易维护和修改。
- dm建设任务繁重,公司有众多业务每一个业务单独加建立工作量集合增加啊。
- dm的建立消耗更多存储空间,单独一个dm可能数据量不大,但是企业所有领域都建立dm数据量就会增加很多倍。
五. 大数据下的数据仓库模型
数据模型
底层模型: