公司之前的数据都是直接传到Hdfs上进行操作,没有一个数据仓库,趁着最近空出几台服务器,搭了个简陋的数据仓库,这里记录一下数据仓库的一些知识。涉及的主要内容有:
1. 什么是数据仓库
1.1 数据仓库的概念
官方定义
数据仓库是一个面向主题的、集成的、随时间变化的、但信息本身相对稳定的数据集合,用于对管理决策过程的支持。
这个定义的确官方,但是却指出了数据仓库的四个特点。
特点
面向主题:数据仓库都是基于某个明确主题,仅需要与该主题相关的数据,其他的无关细节数据将被排除掉
集成的:从不同的数据源采集数据到同一个数据源,此过程会有一些ETL操作
随时间变化:关键数据隐式或显式的基于时间变化
信息本身相对稳定:数据装入以后一般只进行查询操作,没有传统数据库的增删改操作
个人理解
数据仓库就是整合多个数据源的历史数据进行细粒度的、多维的分析,帮助高层管理者或者业务分析人员做出商业战略决策或商业报表。
1.2 数据仓库的用途
- 整合公司所有业务数据,建立统一的数据中心
- 产生业务报表,用于作出决策
- 为网站运营提供运营上的数据支持
- 可以作为各个业务的数据源,形成业务数据互相反馈的良性循环
- 分析用户行为数据,通过数据挖掘来降低投入成本,提高投入效果
- 开发数据产品,直接或间接地为公司盈利
- …
1.3 数据库和数据仓库的区别
差异项 | 数据库 | 数据仓库 |
---|---|---|
特征 | 操作处理 | 信息处理 |
面向 | 事务 | 分析 |
用户 | DBA、开发 | 经理、主管、分析人员 |
功能 | 日常操作 | 长期信息需求、决策支持 |
DB设计 | 基于ER模型,面向应用 | 星形/雪花模型,面向主题 |
数据 | 当前的、最新的 | 历史的、跨时间维护 |