什么是数据仓库
- 面向主题的
- 集成的
- 非易失的
- 随时间变化的
- 支持管理人员决策的
- 数据集合
数据仓库的几个概念
- OLAP&OLTP
- ODS&数据集市
- 维度粒度
- 立方体及其操作
- 星形模型 雪花模型 事实星座
数据仓库与数据库
对比内容 | 数据库 | 数据仓库 |
数据内容 | 当前值 | 历史的、存档的、归纳的、计算的数据 |
数据目标 | 面向业务操作程序,重复处理 | 面向主题域、分析应用、支持决策 |
数据特性 | 动态变化,按字段更新 | 静态、不能直接更新、只能定时添加、刷新 |
数据结构 | 高度结构化、复杂、适合操作计算 | 简单 、适合分析 |
使用频率 | 高 | 中到低 |
数据访问量 | 每个事务只访问少量记录 | 有的事务可能需要访问大量记录 |
对响应时间的要求 | 以秒为单位计算 | 以秒、分钟、甚至小时为及计算dan'wei |
数据仓库的功能层次
三部分:
- 数据获取
- 数据处理及存储 ——————>管控运维
- 数据应用
数仓架构
源系统
结构化数据:CRM数据、客户服务数据、客户账务数据、其他数据
非结构化数据:网站浏览、Web Log、行为数据、其他数据
实时交易数据
数仓架构
元数据管理系统
结构化数据———>ETL ——>ODS——>ETL——>数据仓库(客户数据、订单数据、产品数据、网站流量、日志数据、)
——>数据集市 (客户视图、产品分析、流量分析……)
——>数据挖掘(FRM模型 流失预警 产品营销) ——>数据应用(决策分析报表、OLAP结构化分析、
大数据非结构化分析、实时监测)
——>日志转换、流处理——>格式化大数据文件、流数据
数据仓库的作用
数据仓库是将随着时间发生变化的数据集成到面向主题的平台,代表的是一种对数据的管理和使用方式,其目的是分析数据、为企业提供决策依据。数据仓库系统的数据来源于业务系统,客观上承载了业务系统数据查询、分析的功能,缓解了业务系统的压力。
- 通过面向主题的数据处理,形成基于优化查询的组织形式,有效提高数据获取、统计和分析的效率;
- 海量数据的关联查询和复杂查询、多维分析、数据挖掘
- 通过数据集成,实现各种不同数据的关联并使多维分析更加方便,为从多角度多层次地数据分析和决策制定提供可能;
- 为历史数据分析历史数据应用提供保障
- 为企业统一的数据应用和数据管理数据资产化数据运营奠定了基础;
数仓常见的应用方式
- 数据提取
- 数据分析报表
- 机器学习
- 数据挖掘分析
数据仓库设计原则
- 稳定:架构相对稳定
- 统一:一个系统、统一的数据处理
- 安全:系统安全、数据安全
- 开放:支持对外开放
- 实用:满足不同层次人员需求
- 易用:支持多种手段应用
- 灵活:结构灵活扩展、适用变化
数据仓库系统设计
数据获取——>数据存储——>数据处理——>数据应用——>运维管控
产品+需求+技术
数据仓库构建模式
结合使用+混合结构
自顶向下(集线器结构):根据企业的业务建模、设计数据仓库、然后再具体业务应用
自下向上(总线结构):根据用户的需求通过螺旋发展的过程来设计数据仓库
构建模式比较
先建仓库
周期长、前期成本高、基础好、再建集市方便 不能解决当前的问题,长远目标
先建集市 周期短、见效快、基础不牢固、再建数据仓库还需要较大成本能解决当前问题,近期目标
数据仓库系统设计任务
- 规划与需求确定
- 概念与逻辑模型
- 体系架构设计
- 元数据架构设计
- 物理模型设计
- 数据仓库生成
- 数据仓库应用
- 数据仓库运行维护
星形模型
星形模型通过使用一个包含主题的事实表和多个维度表来支持各种决策查询
事实表:主要包含各种商业事件的数据,即某些特定商业事件的度量值不允许修改,新的数据只是简单地添加进事实表中。
维度表:主要包含了存储在事实表中的数据的特征数据 每个维度表利用维度关键字通过事实表中的外键约束于事实表中的某一行 要求事实表的外键不能为空,这与一般数据库中外键允许为空是不同的
y:多个事实表共用一
个或多个维度表
雪花模型:在星星模型基础上做了拓展,对每个维度表都连接了一个明细表星星模型:一个事实表连接多个维度表
物理模型设计
数据仓库的物理数据模型就是逻辑数据模型在数据仓库的实现:
全量采集ETL
增量采集ETL 部分采集