一 数据仓库
面向主题
- 特定的数据分析领域与目标 即 需求
集成 将多元数据,统一模板
集成需要考虑的问题
- 数据格式
- 计量单位
- 数据代码含义混乱 如国标码,“代码”a=2,a=3. a!=a
- 数据名称混乱 如中英文, 同一个网站有中英文版本,网址语言跟网站相关。
非易失
-数据仓库里的数据不可更改,改变
随时间不断变化
-跟新:数据仓库的数据必须以一定时间为单位进行统一跟新
-增加新数据
-删去旧数据
-跟新与时间有关的综合概念
数据的生命周期
-银行类 7/13 一般客户7年 交易类13个月以上
-电商 2或5年
二 数据集市
企业的引用选择
-优先使用数仓,规模庞大时再考虑集市。
分类
-数据来源分类
- 独立型 : 面向操作环境 如客户端的数据不经过数仓直接进入集市分析
- 从属型 : 面向数据仓库 即数仓的分支
与数仓的区别
-集市颗粒比较粗,用于部门的分析查询等操作,相当于数仓部分数据的抽取精炼
-数仓无法修改数据,但是储存空间与保存时间比集市庞大
集市优点:
-没有数仓数据大,可以建立多个集市,便于多元化的需求查询分析等操作
集市的缺点
-由于跨部门,数据的处理不同,会形成多元数据,不能统一合作,形成数据孤岛。
-物理孤岛 :独立存储 独立维护 即本身就不兼容
-逻辑孤岛 :集市变量的定义各自不同。无法进行兼容其他集市
数据架构
-inmon: 操作系统-》 数据过滤 ——》数仓——》 数据集市——》 结果
-kimball: 操作系统 ->数据过滤-> 数仓-> 结果
区别
-inmon :可统一性 时间多,易维护,前期成本高,多人团队,数据模型准三大范 式设计
-kimball:不可统一性 时间少,维护成本高,前期成本少,少人团队,星型结构 雪 花模型
分层的作用
分层的主要原因是在管理数据的时候,能对数据有一个更加清晰的掌控。详细来讲,主要有下面几个原因:
清晰数据结构
每一个数据分层都有它的作用域,这样我们在使用表的时候能更方便地定位和理解。
数据血缘追踪
简单来说,我们最终给业务呈现的是一个能直接使用业务表,但是它的来源有很多,如果有一张来源表出问题了,我们希望能够快速准确地定位到问题,并清楚它的危害范围。
减少重复开发
规范数据分层,开发一些通用的中间层数据,能够减少极大的重复计算。
把复杂问题简单化
将一个复杂的任务分解成多个步骤来完成,每一层只处理单一的步骤,比较简单和容易理解。而且便于维护数据的准确性,当数据出现问题之后,可以不用修复所有的数据,只需要从有问题的步骤开始修复。
屏蔽原始数据的异常
屏蔽业务的影响,不必改一次业务就需要重新接入数据
分层的价值
- 结构清晰便于维护
- 时间 集成 历史数据的价值