一、数据仓库设计-认识数据仓库
1、数据仓库定义
面向主题的、集成的、相对稳定的、反映数据历史变化的数据集合,用于支持决策管理。
- 面向主题: 在较高层次将企业信息系统的数据综合归并进行分析利用的抽象的概念。每个主题上基本上对应一个相应分析领域。
- 集成的: 企业级数据,同时保证数据的一致性、完整性、有效性、精确性。
- 稳定的: 从某个时间段来看是保持不变的,没有更新、删除操作,以查询分析为主。
- 变化的: 反映数据历史变化。
名称 | 定义 |
---|---|
一致性 | 例如性别编码,不同系统里面不同的编码方式,在数仓库里面统一成 M F等。 |
2、认识数据仓库
数据仓库&数据库
功能 | 数据仓库 | 数据库 |
---|---|---|
数据范围 | 存储历史的、完整的、反映历史变化的 | 当前状态数据 |
数据变化 | 可添加、无删除、无变更的、反映历史变化 | 支持频繁的增、删、改、查 |
应用场景 | 面向分析、支持战略决策 | 面向业务交易流程 |
设计理论 | 违范式、适当冗余 | 遵照范式、避免冗余 |
处理量 | 非频繁、大批量、高吞吐、有延迟 | 频繁、小批量、高并发、低延迟 |
3、数据仓库发展历程
2) 先创建公共维度仓库,单独数据集市组成数据仓库
3)CIF核心:将数据仓库划分不同的层次满足不同场景的需求,根据实际场景采用不同的建设方案。
层 | 说明 |
---|---|
ODS | E-R建模 |
DWD | E-R建模 |
DWS | 维度建模 |
DM | F-DM财务集市/Oder-DM订单集市/BI-BM指标集市 |
APP | 面向应用的,例如个性化推荐、特征工程等 |
4、基于大数据数据仓库构建特点
应用场景广泛
1、传统数仓创建周期长,需求稳定,面向DSS、CRM、BI等系统,数据时效性不高。
2、基于大数据的数据仓库建设要求快速响应需求,同时需求灵活、多变,对于时效性有不同的要求,除了BI等传统应用外,还要响应用户画像、个性化推荐、机器学习、数据分析等各种复杂的应用场景。
技术栈更全面、复杂
1、传统数仓建设更多基于成熟的商业数据集成平台,如Teradata、Oracle、Informatica等。
2、基于大数据的数仓建设一般基于开源的、非商业的技术,常见的是基于hadoop生态构建,涉及的技术较广泛、复杂,同时相对于商业产品,稳定性、服务支撑较弱,需要自己维护更多的技术框架。
所以,互联网领域,数据模型的设计更关注灵活、快速响应和应对多变的市场环境,更加以快速解决业务、运营问题为导向,快速数据接入、快速业务接入,更不存在一劳永逸
5、数据仓库应用的范围与前景
数据仓库存在的意义-- 数据治理
基于大数据的数据仓库在互联网行业的主要应用
未来更广泛的应用场景
- 数据分析、数据挖掘、人工智能、机器学期、风险控制、无人驾驶
- 数据化运营、精准运营
- 广告精准、智能投放