商务智能速成
复习目标:按照授课顺序复习商务智能。每个知识点后都附有对应往年题或老师划重点来源,方便你边学边定位考试怎么问。
01 商务智能基础
BI 定义与目标
商务智能是企业利用现代信息技术,对结构化和非结构化商务数据进行收集、管理、分析和展示,将数据转化为信息、知识和见解,从而改善信息访问、支持管理决策、提升业务流程和竞争力的能力。
目标:
- 支持决策
- 改善信息访问
对应往年题:
- 往年复习提纲:3.3 商务智能是什么?目标是什么?
- 商务智能.md:第 1、2 点整理 BI 的目标和定义
- 2015 A/B 选择题:BI 基础概念和系统组成相关判断
数据、信息、知识
| 概念 | 含义 |
|---|---|
| 数据 | 关于客观世界的事实,易于捕获和组织 |
| 信息 | 经过处理、有上下文、有目的的数据 |
| 知识 | 经过反思和综合的见识、规则和背景 |
数据 + 上下文 -> 信息;信息经过综合和反思 -> 知识。
对应往年题:
- 往年复习提纲:3.1 数据、信息与知识
- 2015 A/B 选择题:商务智能基础概念可能考数据、信息、知识关系
数据仓库关键技术
- ETL
- 存储与管理
- 数据访问与表现
- 元数据管理
元数据是关于数据的数据。它用于描述数据来源、含义、结构、转换规则、加载规则和使用方式,是数据仓库开发、维护和保证抽取质量的重要依据。
对应往年题:
- 往年复习提纲:3.11 元数据
- 老师复习语音:数据仓库关键技术包括 ETL、存储与管理、数据访问与表现、元数据管理
- 往年复习提纲:2.4 商务智能各个部件的概念
02-04 数据仓库基础
数据仓库定义与四大特征(要背)
数据仓库是一个面向主题的、集成的、非易失的、随时间不断变化的数据集合,用于支持经营管理过程中的决策制定
| 特征 | 解释 |
|---|---|
| 面向主题 | 按管理决策中的分析主题组织数据,而不是按具体业务应用组织 |
| 集成 | 来自不同部门、系统、平台、格式的数据经过 ETL 统一编码、口径、格式和单位 |
| 非易失 | 数据进入仓库后主要用于查询和分析,一般不频繁更新、删除或修改 |
| 时变 | 保存历史数据,带有时间属性,支持趋势分析和历史分析 |
对应往年题:
- 2022 回忆:简答题 1 “数据仓库四大特色”
- 往年复习提纲:1.1 “什么是数据仓库?其四大特色?”
- 老师复习语音:数据仓库基础与关键技术中强调四大特征,尤其“面向主题”
为什么传统的以数据库为核心的事务处理环境中不适宜建立DSS等分析型应用(要背)
六点:
- 性能特性不同:事务处理操作短、数据量小、频率高、并发大;分析处理运行时间长、访问数据量大、会抢占事务系统资源
- 数据集成问题:DSS 需要企业内外部多源数据,而传统事务处理环境中的数据库通常按部门和应用分散建设,口径不统一
- 动态集成问题:分析数据需要周期性刷新,传统的以数据库为核心的事务处理环境缺乏动态集成能力
- 历史数据问题:传统事务处理环境多保存当前或短期数据,分析处理需要大量历史数据
- 数据综合问题:传统事务处理环境保存细节操作数据,分析处理需要汇总和综合数据
- 数据访问问题:传统事务处理环境需要实时更新,分析处理主要查询和定时刷新,访问方式不同
对应往年题:
- 2022 回忆:简答题 2 “为什么要设置独立于操作型数据环境的数据仓库以应对分析型应用”,本质同“为什么传统事务处理环境中不适宜建立 DSS 等分析型应用”
- 往年复习提纲:1.2 “为什么在传统的以数据库为核心的事务处理环境中不适宜建立 DSS 等分析型应用?”
- 商务智能21页版:开头即整理“事务处理环境不适宜 DSS 应用的原因”六点
操作型数据 vs 分析型数据
| 特性 | 操作型数据 | 分析型数据 |
|---|---|---|
| 定位 | 面向应用的事务处理 | 面向主题的数据分析 |
| 设计 | E-R 模型 | 星型/雪花模型、数据立方体 |
| 数据 | 当前、最新 | 历史、具有时间跨度 |
| 汇总 | 原始、细节 | 集成、一致、综合 |
| 视图 | 详细、关系型 | 总体、多维 |
| 操作 | 读/写,可变 | 读为主,稳定 |
| 请求 | 可预知 | 事先未知 |
| 访问记录 | 一次少量 | 一次大量 |
| 工作单位 | 短事务 | 复杂查询 |
对应往年题:
- 往年复习提纲:3.6 操作型数据和分析型数据
- 商务智能21页版:操作型数据和分析型数据对比表
- 老师复习语音:提醒要分清 OLTP、OLAP、数据仓库几个层次
ETL(要背)
ETL 是 Extract、Transform、Load,即抽取、转换、装载。
任务:
- 数据抽取:从数据库、文件、外部数据源中抽取与主题相关的数据
- 数据转换:清洗、去重、格式转换、编码转换、单位统一、关键字解析、缺省值处理、汇总
- 数据刷新:识别变化数据,修改过时数据,保存不变数据
- 数据装载:把处理后的数据装入原子层、集成数据、数据集市、ODS 或缓冲区
对应往年题:
- 往年复习提纲:1.7 “数据仓库中 ETL 技术是什么?在数据仓库架构中 ETL 完成什么任务?”
- 老师划重点:02 数仓 p21 标注“4 种处理方式”,03 数仓也多处涉及 ETL/刷新
- 2015 A/B 选择题:出现 ETL 相关判断
数据刷新四种方法(要背)
| 方法 | 思路 | 优点 | 缺点/适用 |
|---|---|---|---|
| 时间戳 | 根据记录修改时间识别变化 | 简单 | 要求源数据有时间属性 |
| DELTA 文件 | 应用程序记录修改操作 | 避免全库扫描,效率较高 | 依赖应用生成 DELTA 文件,改造成本高 |
| 映像文件 | 两次快照对比差异 | 对源系统要求少 | 占用资源大,可能影响源系统性能 |
| 日志文件 | 利用 OLTP 数据库日志 | 效率高,不影响 OLTP,常优于 DELTA 和映像 | 依赖日志机制,遗留系统可能没有 |
对应往年题:
- 2022 回忆:简答题 5 “数据刷新的方法”
- 往年复习提纲:1.6 “简述数据仓库刷新的方法,并对每一种方法进行简单说明”
- 老师复习语音:数据刷新常见方法包括时间戳、DELTA 文件、映像文件、日志文件
数据目标和存储环境
| 名称 | 含义 |
|---|---|
| 原子层和集成数据 | 数据仓库基础层,保存经过 ETL 后的较低粒度、集成历史数据 |
| 数据集市 Data Mart | 面向部门、主题、应用或用户群的局部数据组织 |
| ODS 操作数据存储 | 支持战术决策的综合数据更新集合,当前有效、可变、详尽 |
| 缓冲区 Staging Area | ETL 中间站,用于暂存、清洗、转换、合并数据 |
对应往年题:
- 老师复习语音:要求区分 ODS、Staging Area、Data Mart 等存储环境
- 商务智能.md:第 8 点“数据目标”整理原子层和集成数据、数据集市、ODS、缓冲区
- 往年复习提纲:2.4 商务智能各个部件的概念
数据仓库与数据集市(要背)
数据仓库与数据集市类似“基表”和“视图”的关系。数据集市的数据来自数据仓库,是数据仓库数据的一部分和局部再组织。
为什么建立数据集市:
- 企业级数据仓库规模大,直接访问压力高
- 部门或主题有局部分析需求
- 提高查询效率和用户可用性
- 支持按业务单元、部门、个人、区域逐步建设
四种结构:
| 结构 | 做法 | 优点 | 缺点 |
|---|---|---|---|
| 自顶向下 | 先建企业数据仓库,再建数据集市 | 全局一致,统一清洗整合,冗余少 | 成本高、见效慢 |
| 自底向上 | 先建局部数据集市,再合并为企业仓库 | 见效快、启动资金少 | 容易蜘蛛网、数据不一致、重复清洗 |
| 总线结构 | 不先建完整中心仓库,通过共享维表和事实表连接数据集市 | 共享一致性维度和事实,支持增量建设 | 偏 OLAP,多数据源直接影响多个集市时结构不稳定 |
| 企业级数据集市 | 企业范围统一规划多个总线式数据集市 | 兼顾统一规划和独立部署 | 需要强规划和标准控制 |
对应往年题:
- 往年复习提纲:1.8 “为什么还需要建立数据集市?建立数据仓库和数据集市体系的方法主要有哪四种?请分别描述并总结优缺点”
- 老师复习语音:数据仓库与数据集市结构中比较自顶向下、自底向上、总线结构、企业级数据集市
- 2022 回忆:简答题考总线矩阵的作用和地位,与数据集市总线结构相关
粒度与多重粒度(要背)
粒度是数据仓库中数据综合程度的度量。它影响数据量,也影响能回答的查询种类。
| 粒度 | 细节程度 | 综合程度 | 查询范围 | 查询效率 |
|---|---|---|---|---|
| 小粒度 | 高 | 低 | 能回答更多细节问题 | 较低 |
| 大粒度 | 低 | 高 | 只能回答较综合问题 | 较高 |
为什么采用多重粒度:
- 不同用户和分析问题需要不同细节层次
- 大粒度数据可支持高频汇总查询,提高性能
- 小粒度数据可保留细节,支持追溯和细粒度分析
- 兼顾存储成本、访问效率和分析灵活性
例子:
库存分析中,可以同时保存每日每商品每商场库存量的周期快照、每次入库出库的事务明细,以及某批商品从入库到出库的累积快照。这样既能快速回答库存趋势问题,也能追踪具体库存变化原因。
对应往年题:
- 2022 回忆:简答题 3 “举例说明为什么要设置多重粒度”
- 往年复习提纲:1.3 “什么是数据仓库中的粒度?为何要在数据仓库中采用多重粒度?试举例说明”
- 老师复习语音:维度建模中强调粒度关键,同一事实表度量值粒度必须一致
历史完整性与渐变维(要背)
历史完整性指维度属性随时间变化时,不能简单覆盖旧值,否则会丢失历史分析口径。
常见处理:
| 方法 | 含义 | 优缺点 |
|---|---|---|
| 改写属性值 | 直接覆盖旧值 | 简单,但不能维护历史 |
| 添加维度行 | 属性变化时新增一行,可加生效/截止日期 | 最常用,能准确跟踪历史,但维表膨胀 |
| 添加维度列 | 用新列保存旧属性值 | 只适合少量变化,不适合频繁变化 |
| 微型维度 | 把变化快或分析频繁的属性拆成独立小维表 | 减少复制大维表成本 |
| 预设波段 | 把连续变化值离散化成区间 | 减少维度取值数量 |
对应往年题:
- 往年复习提纲:1.5 “数据仓库中的历史完整性/一致性?为保持历史完整性/一致性,采用哪些方式?试举例说明”
- 往年复习提纲:3.28 客户关系管理中涉及维度支架、快变维度和历史完整性
- 老师复习语音:CRM 案例强调客户维度集成、客户分类和客户行为分析
数据仓库数据组织形式
| 形式 | 含义 |
|---|---|
| 简单堆积文件 | 从数据库提取加工后直接按时间堆积存储 |
| 轮转综合文件 | 按时间段逐级汇总,越久远越综合 |
| 简化直接文件 | 按时间间隔做数据库快照 |
| 连续文件 | 在快照基础上保存差异增量 |
对应往年题:
- 往年复习提纲:3.10 数据仓库的数据组织形式
- 商务智能21页版:列出简单堆积文件、轮转综合文件、简化直接文件、连续文件
数据仓库间接访问
操作型系统一般不应直接实时访问庞大的数据仓库。间接访问的思想是后台程序周期性分析数据仓库,生成小型、在线、预分析文件,操作型环境访问这个小文件。
在线预分析文件特点:
- 每个数据单元只包含少量数据
- 准确包含在线处理人员需要的内容
- 不被在线修改
- 批量周期性更新
- 访问效率高,适合访问单个数据单元
对应往年题:
- 老师划重点:04 数仓 p30 与数据仓库间接访问相关
- 商务智能.md:第 12 点“间接访问的基本思想”整理航空公司佣金计算和零售个性化例子
- 往年复习提纲:数据仓库应用和访问方式相关选择题
05 OLAP 与多维分析
OLAP 定义
OLAP 是联机分析处理。它通过专门的数据综合引擎和直观的数据访问界面,使非数据处理专业人员能在较短时间内完成复杂查询和多维分析。
答题句:
OLAP 面向分析型处理,以数据仓库为基础,通过多维视图组织数据,使管理人员能够从时间、商品、地区等多个维度观察销售额、利润、库存等度量值,并通过切片、切块、上钻、下钻等操作支持决策分析。
对应往年题:
- 老师划重点:一道大题是 OLAP 及相关概念,要求会说相关操作、维度是什么、层次是什么
- 2022 回忆:问答题同 2015 A 卷第一题,考矩阵/数据立方体中的切片、切块、上钻、下钻
- 往年复习提纲:2.1-2.3 要求给出数据立方体例子,并介绍 OLAP 中维、层和基本操作
OLAP vs OLTP
| 比较项 | OLAP | OLTP |
|---|---|---|
| 应用基础 | 数据仓库 | 操作型数据库 DBMS |
| 用户 | 决策者、高级管理人员 | 操作员、业务人员 |
| 目的 | 支持决策和管理分析 | 支持日常业务运行 |
| 数据 | 导出数据、历史数据 | 原始数据、当前数据 |
| 细节程度 | 综合性数据,细节程度较低 | 细节程度高 |
| 更新 | 周期性刷新 | 实时更新 |
| 操作 | 复杂查询、统计、分析 | 简单事务、增删改查 |
| 一次访问数据量 | 大 | 小 |
| 性能关注 | 可接受响应和交互分析 | 高并发、短响应时间、完整性 |
对应往年题:
- 2015 A/B 选择题:出现 OLAP、OLTP、ROLAP、MOLAP 相关判断
- 往年复习提纲:3.12 专列 OLAP & OLTP;“其他知识点补充”要求掌握二者区别
- 老师复习语音:强调 OLTP 面向日常事务处理,OLAP 面向分析决策,考试要能判断
维、层、维成员、度量值、数据单元(要背)
| 概念 | 含义 | 例子 |
|---|---|---|
| 度量值 Measure | 分析对象,通常是数值 | 销售额、销售量、成本、利润、库存量 |
| 维 Dimension | 观察度量值的角度 | 时间维、商品维、地域维、商店维 |
| 层 Layer | 维内部的分析深度 | 时间维:日、月、季度、年;地域维:市、省、国 |
| 维成员 | 某一维上的一个取值 | 2026 年、6 月、南京、电视机 |
| 数据单元 | 每个维选定一个维成员后唯一确定的度量值 | (2026 年 6 月,电视机,南京店,销售额 50000) |
默写模板:
维是观察分析对象的角度,层表示一个维内部不同的概念层次或观察深度,维成员是某个维上的具体取值。当一个多维数组的每一维都选定一个维成员时,就可以唯一确定一个数据单元,数据单元中保存销售额、库存量等度量值。
对应往年题:
- 老师划重点:OLAP 大题明确点名“维度是什么,层次是什么”
- 2022 回忆:问答题考数据立方体和 OLAP 操作,必须先说明维、层、维成员
- 往年复习提纲:2.2 要求“以该数据立方体为例介绍 OLAP 中的维和层的概念”
数据立方体例子(要背)
可以固定背这个例子,考试几乎都能套:
分析对象:销售额
维度:产品 Product、商店 Store、日期 Date
度量值:销售额 Sales Amount
数据单元:(电视机,南京店,2026-06-25,销售额 50000 元)
星型表可写为:
销售事实表(产品ID,商店ID,日期ID,销售额,销售量,成本额,毛利润)
产品维表(产品ID,产品名称,SKU,小类,大类,部门,包装类型)
商店维表(商店ID,商店名称,城市,省份,国家,销售面积)
日期维表(日期ID,日,周,月,季度,年,是否节假日)
对应往年题:
- 2022 回忆:问答题要求以数据立方体说明切片、切块、上钻、下钻
- 往年复习提纲:2.1 要求“给出一个具体的数据立方体模型的例子(绘图说明)”
- 老师划重点:05 OLAP p52 标注“分辨哪里是维度,哪里是度量值”
OLAP 基本操作(要背)
| 操作 | 含义 | 销售立方体例子 |
|---|---|---|
| 切片 Slice | 固定某一维的一个维成员,观察剩余维度的数据 | 固定日期为 2026 年 6 月,只分析各产品在各商店的销售额 |
| 切块 Dice | 限定一个或多个维度的取值范围 | 选择 2026 年 1-6 月、南京/上海门店、电视/冰箱两类商品 |
| 旋转 Pivot / Rotate | 调整维度显示顺序,改变观察角度 | 把报表行列从“商品 x 地区”换成“地区 x 商品” |
| 上钻 Roll-up | 从低层次汇总到高层次 | 日期从日汇总到月、季度、年;城市汇总到省份 |
| 下钻 Drill-down | 从高层次细化到低层次 | 年销售额下钻到季度、月、日;商品大类下钻到具体 SKU |
| 跨钻 Drill across | 在多个事实表之间按一致维度分析 | 销售事实和库存事实按日期、产品一起分析 |
| 钻透 Drill through | 从立方体最低层继续到关系表细节 | 从月销售额下钻到具体 POS 交易明细 |
对应往年题:
- 老师划重点:05 OLAP p68 后面的多维数据分析都重要
- 2022 回忆:问答题考矩阵切片、切块、上钻、下钻
- 往年复习提纲:2.3 要求举例说明 slice、dice、roll-up、drill-down
OLAP 大题模板
以商品销售为例,可以建立一个由产品维、商店维、日期维和销售额度量值构成的数据立方体。
产品、商店、日期是观察销售额的三个维度;日期维可以有日、月、季度、年等层次,商店维可以有门店、城市、省份、国家等层次;每个维上的具体取值称为维成员。
切片是固定某一维上的一个维成员,例如固定日期为 2026 年 6 月,只观察该月不同商品和商店的销售额。
切块是在一个或多个维度上限定取值范围,例如选择 2026 年上半年、南京和上海门店、电视和冰箱商品进行分析。
上钻是把维成员提升到更高概念层次,例如从日汇总到月、从城市汇总到省份。
下钻是把维成员降低到更细概念层次,例如从年细化到季度、月、日。
旋转是调整维度在报表中的排列顺序,从不同视角观察同一批数据。
对应往年题:
- 2022 回忆:问答题 1 为 OLAP 操作大题,和 2015 A 卷问答题第一题相同
- 往年复习提纲:2.3 明确列出切片、切块、数据概括、数据细化操作
Codd 的 OLAP 评价准则
选择题高频,能识别即可:
- 多维概念视图
- 透明性准则
- 存取能力准则
- 稳定的报表功能
- 客户/服务器体系结构
- 维的同等性原则
- 动态稀疏矩阵处理准则
- 多用户支持能力准则
- 非受限的跨维操作
- 直观的数据操作
- 灵活的报表生成
- 不受限维与聚集层次
FASMI:
Fast、Analysis、Shared、Multidimensional、Information
快速、分析、共享、多维、信息。
对应往年题:
- 老师划重点:05 OLAP p7 标注“12 条评价考选择”
- 往年复习提纲:3.13 列出 Codd 对 OLAP 的 12 条评价原则
- 2015 A/B 选择题:OLAP 相关选择题涉及评价原则和 OLAP 基本特征
MOLAP、ROLAP、HOLAP
| 类型 | 存储方式 | 优点 | 缺点 | 适用 |
|---|---|---|---|---|
| MOLAP | 专门多维数据库,多维数组 | 汇总和查询速度快 | 预计算可能数据爆炸,维度动态变化弱 | 汇总多、响应要求高、数据量可控 |
| ROLAP | 关系数据库,星型/雪花二维表 | 适合大规模数据,利用 RDBMS 能力 | 多表连接多,性能依赖优化 | 数据量大、维度多、细节数据多 |
| HOLAP | 高层汇总用多维库,细节用关系库 | 兼顾速度和规模 | 系统复杂 | 既要快速汇总又要保留大量明细 |
ROLAP 优化手段:
- 物化视图
- 特殊索引与集簇,加速星型模式表连接
- 并行操作
- 查询优化技术,如共享排序
- 增量更新,保留不变数据,只更新变动数据
对应往年题:
- 老师划重点:05 OLAP p23、p28、p29 涉及 OLAP 数据构造方式;p33 标注星型/雪花
- 2015 A/B 选择题:多次出现 ROLAP、MOLAP、OLAP 相关判断
- 往年复习提纲:3.14 MOLAP & ROLAP;3.15 ROLAP 优化手段;3.16 物化视图
星型模型
星型模型是一种多维表结构,一般由一个事实表和多个维表组成。事实表位于中心,存放度量值和连接各维表的外键;维表围绕事实表,存放维成员及其描述属性。
结构示意:
产品维表
|
日期维表 -- 销售事实表 -- 商店维表
|
促销维表
优点:
- 结构简单,容易理解
- 事实表直接连接维表,连接路径短
- 查询效率高,适合 OLAP
- 报表和多维分析直观
缺点:
- 维表通常反规范化,会存在冗余
- 维度层次复杂或维表很大时,存储空间可能浪费
对应往年题:
- 老师划重点:05 OLAP p33 标注“星形(更喜欢)”
- 2022 回忆:问答题要求以教务处为主题设计星型模型
- 往年复习提纲:1.11 要求说明星型模型和雪花模型各自优缺点
雪花模型
雪花模型是星型模型的扩展,它把星型模型中的维表进一步层次化和规范化,使一个维表拆成多个具有层次关系的小表。
例子:
星型:
产品维表(产品ID,产品名称,小类,大类,部门)
雪花:
产品表(产品ID,产品名称,小类ID)
小类表(小类ID,小类名称,大类ID)
大类表(大类ID,大类名称,部门ID)
部门表(部门ID,部门名称)
优点:
- 维表规范化,减少冗余
- 节省存储空间
- 层次关系清楚
- 适合维度很大、层次复杂、属性重复多的场景
缺点:
- 表更多,连接更多
- 查询路径变长,可能影响 OLAP 性能
- 用户理解和使用成本更高
对应往年题:
- 老师划重点:05 OLAP p33 标注“雪花:维度很大的时候可以节约空间;星形变雪花可以增加关系之间的联系”
- 2022 回忆:问答题要求把星型模型转化为雪花模型,并区分“多级体系划分属性”和“其他描述性属性”
- 往年复习提纲:1.11 要求说明星型模型和雪花模型各自优缺点
星型 vs 雪花(要背)
| 比较项 | 星型模型 | 雪花模型 |
|---|---|---|
| 结构 | 一个事实表直接连多个维表 | 维表继续拆分成层次表 |
| 规范化 | 低,常反规范化 | 高,维表规范化 |
| 冗余 | 较多 | 较少 |
| 查询性能 | 通常更快 | 连接多,可能更慢 |
| 存储空间 | 可能浪费 | 更节省 |
| 易理解性 | 强 | 较弱 |
| 适用 | 常规 OLAP、查询频繁、追求性能 | 维度很大、层次复杂、需要节省空间 |
答题句:
在 OLAP 中通常更偏好星型模型,因为它连接少、查询快、用户容易理解。当维度表很大、维层次复杂、维属性重复多,或存储空间压力较大时,可以把星型模型转为雪花模型,以牺牲一定查询性能换取更好的规范化和空间节省。
对应往年题:
- 2022 回忆:星型模型和雪花模型的优缺点,什么时候用雪花模型比较好
- 往年复习提纲:1.11 星型模型和雪花模型各自有什么优缺点
- 老师划重点:05 OLAP p33 对星型/雪花优缺点做了特别标注
06 数据仓库设计
设计原则
| 原则 | 含义 |
|---|---|
| 面向主题原则 | 从管理决策需要和分析主题出发组织数据 |
| 数据驱动原则 | 从已有操作型数据源出发,抽取、综合和集成已有数据 |
| 原型法设计原则 | 需求不完全明确时,先建原型,再根据用户反馈迭代完善 |
对应往年题:
- 老师划重点:06 设计 p6 标注“原则”
- 往年复习提纲:3.18 数据仓库的设计原则
- 老师复习语音:数据仓库设计原则包括面向主题、数据驱动、原型法
三级数据模型
| 模型 | 内容 | 关键词 |
|---|---|---|
| 概念模型 | 确定系统边界、主要主题及内容、OLAP 分析应用 | E-R 法、主题、边界 |
| 逻辑模型 | 将概念模型转成关系表或维度模型,定义数据源、抽取规则、粒度、分割 | 表结构、粒度、数据源 |
| 物理模型 | 确定存储结构、索引、分区、存放位置、加载策略和优化技术 | 性能、索引、冗余、分割 |
对应往年题:
- 老师划重点:06 设计 p26 标注“三级模型”
- 往年复习提纲:3.19 数据仓库设计的三级数据模型
- 老师复习语音:概念模型、逻辑模型、物理模型是数据仓库设计常考框架
设计步骤
- 系统规划:明确主题,进行技术准备
- 概念设计:确定系统边界、主要主题及内容、OLAP 等分析应用
- 逻辑设计:转换数据模型,定义数据源和抽取规则,考虑粒度和数据分割
- 物理设计:确定存储结构、索引、分区、冗余、物理优化
- 数据仓库生成
- 数据仓库运行与维护
对应往年题:
- 往年复习提纲:3.20 数据仓库的设计步骤
- 老师复习语音:设计步骤包括系统规划、概念设计、逻辑设计、物理设计、生成、运行维护
- 老师划重点:06 设计 p11 企业级数据模型、p26 三级模型,常与设计步骤一起考
物理模型设计优化(要背)
| 技术 | 说明 |
|---|---|
| 合并表 | 把常一起连接访问的表混合存放,减少多表连接 I/O 开销 |
| 建立数据序列 | 按周期性分析应用的访问顺序维护冗余序列,提高顺序访问效率 |
| 引入冗余 | 把常用属性复制到多个主题表,减少分析时访问表数量 |
| 表的物理分割 | 按访问频率和稳定性分割表,便于索引、存储和更新管理 |
| 生成导出数据 | 预先计算统计或派生数据,减少分析时重复计算 |
| 建立广义索引 | 保存与“最值”等统计结果相关的小型索引,避免全仓库扫描 |
答题口诀:
合并表、建序列、引冗余、做分割、导出数据、广义索引。
对应往年题:
- 2022 回忆:简答题 4 “物理模型设计的优化方法(写 3 个)”
- 往年复习提纲:1.4 “数据仓库的物理模型设计优化技术有哪些?对这些技术进行简要说明”
- 老师划重点:06 设计 p26 标注三级模型,物理模型设计与优化相关
07-10 维度建模
基本概念
| 概念 | 含义 | 考试注意 |
|---|---|---|
| 事实表 | 维度建模的核心,记录维度值与度量值之间的关系 | 包含维度外键和度量值 |
| 维度表 | 事实表的入口,保存描述性属性 | 用于查询条件、报表列、分组分析 |
| 粒度 | 事实表一行代表什么 | 最关键,同一事实表度量值必须粒度一致 |
| 度量值 | 要分析的数值 | 销售额、销售量、成本、利润、库存 |
| 一致性维度 | 被多个事实表/数据集市共享的公共维度 | 总线结构基础 |
| 退化维度 | 没有独立维表,维度值直接放在事实表中 | 订单号、发票号、POS 事务号 |
对应往年题:
- 老师复习语音:维度建模是复习重点,基本概念包括事实表、维表、事实与维度融合、星型模型、雪花模型和数据立方体
- 往年复习提纲:3.21 维度建模设计过程;3.25 零售营销中出现退化维度、代理关键字等
维度建模四步法
- 选择业务处理过程
- 声明粒度
- 选择维度
- 确定事实或度量值
零售营销例子:
业务过程:POS 商品销售。
粒度:一张 POS 小票中的一个商品条目。
维度:日期、商场、产品、促销。
事实:销售量、销售额、成本额、毛利润金额。
对应往年题:
- 老师复习语音:强调维度建模四步法,且“粒度很关键”
- 往年复习提纲:3.21 明确列出维度建模设计过程四步
- 2022 回忆:教务处主题星型模型设计,本质就是考四步法
度量值可加性
| 类型 | 含义 | 例子 | 注意 |
|---|---|---|---|
| 可加事实 | 可以沿所有维度求和 | 销售额、销售量 | 最适合放入事实表 |
| 半加事实 | 只能沿部分维度求和 | 库存量、账户余额 | 通常不能简单跨日期相加 |
| 非加事实 | 不能直接求和 | 单价、比率、毛利率 | 应由分析工具按正确口径计算 |
答题句:
事实表中的度量值通常应尽量选择可加事实。库存量属于半加型事实,可以按产品或商场求和,但不能把不同日期的库存余额简单相加。毛利率、单价等比率型指标属于非加事实,通常不应直接汇总。
对应往年题:
- 老师复习语音:事实表中的度量值要特别关注可加性,库存量是半加事实
- 往年复习提纲:3.21 提到可加性度量值应物理存储,非加性计算结果由工具访问时计算
- 往年复习提纲:3.26 库存管理中强调半加型事实
三类事实表
| 类型 | 粒度 | 特点 | 例子 |
|---|---|---|---|
| 事务事实表 | 每个业务事件一行 | 最原子、稀疏、增量更新 | 销售交易、入库、出库、转账 |
| 周期快照事实表 | 每个固定周期一行 | 稠密,哪怕无事件也可能有记录 | 每日库存、每月账单、账户余额 |
| 累积快照事实表 | 一个生命周期一行 | 随流程推进不断更新,有多个日期字段 | 订单履行、发货、收货、发票流程 |
库存管理常用例子:
库存事务事实表:记录每次入库、出库、调拨。
库存周期快照事实表:记录每天每个商场每种商品的库存数量。
库存累积快照事实表:记录某批商品从入库、分发到离开仓库的完整生命周期。
对应往年题:
- 老师划重点:07 多维建模点名“周期、事务、累积(对事实表建模的三种方式)”
- 往年复习提纲:3.24 粒度划分模型:事务、周期快照、累积快照
- 老师复习语音:库存管理案例强调周期快照、事务、累积快照三种模型
总线矩阵与一致性维度(要背)
总线矩阵用“业务过程 x 公共维度”的矩阵描述企业数据仓库结构。行是业务过程或事实表,列是一致性维度。
作用:
- 帮助规划企业级数据仓库和数据集市
- 找出多个业务过程共享的公共维度
- 保证不同数据集市口径一致
- 支持增量建设,避免孤立数据集市
一致性维度要求:
- 一致的维度关键字
- 一致的属性列名
- 一致的属性定义
- 一致的属性值
示例:
| 业务过程 | 日期 | 产品 | 商场 | 客户 | 促销 |
|---|---|---|---|---|---|
| 销售 | Y | Y | Y | Y | Y |
| 库存 | Y | Y | Y | ||
| 订单 | Y | Y | Y | ||
| 客户关系 | Y | Y |
对应往年题:
- 2022 回忆:简答题考“总线矩阵的作用和地位”
- 老师复习语音:数据仓库总线结构与矩阵是重点,一致性维度和一致性事实用于连接多个业务过程
- 往年复习提纲:3.26 强调一致性维度是进一步开发总线结构数据仓库系统的基础
建模大题模板
题目如果说“以教务处为主题,按事务粒度设计星型模型”,可以这样套:
业务过程:学生选课/考试安排/成绩记录。
粒度:一名学生选择一门课程的一次事务,或一名学生参加一门课程考试的一条记录。
事实表:选课事实表(学生ID,课程ID,教师ID,院系ID,日期ID,选课人数,成绩,学分,评价分数)
维度:学生维、课程维、教师维、院系维、日期维。
度量值:选课人数、课程学分、成绩、评价分数等。
星型模型:
选课事实表(学生ID,课程ID,教师ID,院系ID,日期ID,成绩,学分,评价分数)
学生维表(学生ID,学号,姓名,性别,年级,专业,院系名称)
课程维表(课程ID,课程名,课程类型,学分,课程大类)
教师维表(教师ID,教师名,职称,所属院系)
院系维表(院系ID,院系名称,专业名称)
日期维表(日期ID,日,月,季度,年,学期)
转雪花模型:
学生维表拆为:学生表、专业表、院系表。
课程维表拆为:课程表、课程类型表、课程大类表。
教师维表拆为:教师表、职称表、院系表。
日期维表可拆为:日期表、月份表、学期表、年份表。
最后写比较:
星型模型优点是连接少、结构简单、查询快,适合 OLAP 高频查询;缺点是维表反规范化,存在冗余。
雪花模型优点是减少维表冗余、节省空间、层次清楚;缺点是连接多、查询性能可能下降。
当维度表很大、层次属性复杂、重复数据较多、存储空间更重要时,适合使用雪花模型。
对应往年题:
- 2022 回忆:以教务处为主题,以事务粒度进行星型模型设计;再将星型模型转化为雪花模型;最后比较二者优缺点
- 数据仓库设计.pdf:给出教务/食堂/财务主题的维度建模示例,可作为建模题参考
- 老师划重点:07 多维建模标注“最后一道大题:数据挖掘并优化”,并强调事务、周期、累积三种事实表建模方式
11 数据挖掘
定义与地位(要背)
数据挖掘又称 KDD,即数据库中的知识发现。它是从大量、完整的数据中发现隐含的、未知的、非平凡的、有潜在应用价值的模式或规则。
关键词:
- 大量数据:以数据库、数据仓库或其他数据源为基础
- 隐含:规律不是直接写在数据表里的
- 未知:以前没有被发现
- 非平凡:不是简单查询、统计平均数这种确定计算
- 有潜在应用价值:能辅助决策或产生业务价值
数据仓库中的数据已经经过抽取、清洗、集成和预处理,因此数据挖掘可以在数据仓库上直接运行,比在零散操作型数据库上更方便。
对应往年题:
- 往年复习提纲:1.9 “数据仓库应用中数据挖掘在什么地位?和其他方式有什么差异?”
- 老师划重点:11 数据挖掘 p3、p7、p9、p19、p20、p25 等为复习页
- 老师复习语音:数据挖掘定义要记住本源是大量完整数据,结果是知识或规则,过程具有隐含性和发现性
数据挖掘 vs OLAP(要背)
| 比较项 | OLAP | 数据挖掘 |
|---|---|---|
| 主导 | 分析人员主导 | 算法/模型主导 |
| 方式 | 上卷、下钻、切片、切块等交互分析 | 自动或半自动发现模式和规则 |
| 目标 | 验证、观察、汇总已有数据 | 发现未知、非平凡、有用规律 |
| 结果 | 报表、统计、趋势 | 规则、分类模型、聚类、关联关系 |
| 知识性质 | 多为确定性汇总 | 带统计规律和不确定性 |
答题句:
OLAP 更偏人工交互分析,分析人员通过多维操作观察数据;数据挖掘更偏算法发现,通过分类、聚类、关联规则等方法自动发现隐藏模式。二者都可以基于数据仓库,但任务和方法不同。
对应往年题:
- 往年复习提纲:1.9 要求说明数据挖掘在数据仓库应用中的地位,以及和其他方式的差异
- 老师复习语音:明确要求会判断数据挖掘与 OLAP 的区别
- 往年复习提纲:3.29 数据资源利用方式中把 OLAP 归为演绎/分析,把数据挖掘归为归纳
常见数据挖掘方法(要背)
| 方法 | 解决的问题 | 例子 |
|---|---|---|
| 特征规则挖掘 | 描述一类对象的普遍特征 | 高价值客户通常具有哪些属性 |
| 区分规则挖掘 | 描述不同类别对象之间的差异 | 流失客户和未流失客户有什么区别 |
| 关联规则挖掘 | 发现项与项之间经常同时出现的关系 | 买尿布的人也买啤酒 |
| 序列模式分析 | 发现事件之间的前后时序关系 | 先购买手机,后购买耳机 |
| 分类分析 | 用带类标号训练样本建立模型,对未知数据分类 | 判断信用等级、是否流失 |
| 聚类分析 | 对无类别标记数据按相似性自动分组 | 客户分群 |
| 异常分析 | 发现偏离正常模式的对象 | 信用卡欺诈、大额异常消费 |
对应往年题:
- 往年复习提纲:1.10 “各种数据挖掘方法用来解决什么问题?”
- 老师复习语音:常用方法包括特征规则、区分规则、关联规则、序列模式、分类、聚类
- 老师划重点:11 数据挖掘 p7 标注“选择”,p25 标注“数据预处理”
关联规则
关联规则形式:
A -> B
含义:出现 A 的事务中,经常也出现 B。
核心指标:
| 指标 | 含义 |
|---|---|
| 支持度 Support | A 和 B 同时出现的频繁程度 |
| 置信度 Confidence | 出现 A 时也出现 B 的概率 |
| 频繁项集 | 支持度不低于最小支持度的项集 |
| 强规则 | 同时满足最小支持度和最小置信度的规则 |
Apriori 基本思想:
频繁项集的任一子集也必须是频繁的。
如果一个项集不是频繁的,那么它的任何超集也不可能是频繁的。
对应往年题:
- 老师复习语音:关联规则要理解支持度、置信度、频繁项集、强规则和 Apriori 基本思想
- 往年复习提纲:1.10 中“关联规则挖掘”说明 Apriori 算法本质是在数据库中寻找频繁项集
- 2015 A/B 选择题:数据挖掘方法相关判断可能涉及关联规则
分类分析
分类分析是有监督学习。它先用带类标号的训练样本建立模型,再用模型对未知样本分类和预测。
步骤:
- 建立模型:用训练数据构造分类模型
- 使用模型:评估准确性,并对未知类别数据分类
常见方法:
- 决策树
- 贝叶斯方法
- 人工神经网络
- 约略集
- 遗传算法
决策树:
内部结点表示属性测试,边表示测试结果,叶结点表示类别或类别分布。
对应往年题:
- 老师复习语音:分类分析是有监督学习,常见方法包括决策树、贝叶斯、神经网络、粗糙集、遗传算法
- 往年复习提纲:1.10 分类分析要求说明用于什么问题,并举信用等级、购买预测等例子
- 老师划重点:11 数据挖掘 p65、p72、p78 为后续分类/聚类等页码
聚类分析
聚类分析是无监督学习。输入数据没有预先给定类别标记,系统根据距离或相似性自动把记录划分为若干簇。
常见方法:
- 划分方法
- 层次方法
- 基于密度的方法
- 基于网格的方法
- 基于模型的方法
分类 vs 聚类:
分类是先有类别,再学习规则,用规则预测未知对象,属于有监督学习。
聚类是事先没有类别,由系统根据相似性自动形成类别,属于无监督学习。
对应往年题:
- 往年复习提纲:1.10 聚类分析要求说明输入是没有被标记的记录,系统按规则划分记录集合
- 老师复习语音:分类分析是有监督学习,聚类分析是无监督学习
- 2015 A/B 选择题:数据挖掘方法适用场景相关判断
考前串讲版(按授课顺序)
1. 数据仓库
数据仓库是面向主题的、集成的、非易失的、时变的数据集合,用于支持经营管理决策。
传统的以数据库为核心的事务处理环境不适合直接建立 DSS 等分析型应用,因为性能特性、数据集成、动态集成、历史数据、数据综合和访问方式都不同。
ETL 是抽取、转换、装载,负责把多源异构数据清洗、转换、集成后装入仓库。
刷新方法有时间戳、DELTA 文件、映像文件、日志文件。
对应往年题:
- 2022 回忆:数据仓库四大特征、独立建数仓、数据刷新方法
- 往年复习提纲:1.1、1.2、1.6、1.7
2. OLAP
OLAP 面向分析决策,以数据仓库为基础,通过多维视图支持切片、切块、旋转、上钻、下钻等操作。
维是观察角度,层是观察深度,维成员是维的取值,数据单元是每个维都选定一个成员后确定的度量值。
切片固定一个维成员,切块限定一个或多个维的范围,上钻变概括,下钻变细节,旋转换观察角度。
对应往年题:
- 老师划重点:一道大题是 OLAP 及相关概念,重点是维度、层次和操作
- 2022 回忆:问答题同 2015 A 卷 OLAP 操作大题
- 往年复习提纲:2.1-2.3
3. 星型/雪花
星型模型由一个事实表和多个维表组成,事实表存放度量值和维度外键,维表存放描述性属性。优点是结构简单、连接少、查询快,缺点是冗余较多。
雪花模型把维表进一步规范化和层次化,优点是减少冗余、节省空间,缺点是连接多、查询慢。维度很大或层次复杂时可用雪花。
对应往年题:
- 2022 回忆:教务处主题星型模型设计、星型转雪花、二者优缺点
- 老师划重点:05 OLAP p33 星型/雪花;07 多维建模最后大题
- 往年复习提纲:1.11
4. 维度建模
维度建模四步法:选择业务处理过程,声明粒度,选择维度,确定事实。
粒度最关键,同一事实表中的度量值必须粒度一致。
事务事实表一事件一行;周期快照按固定周期记录状态;累积快照记录一个生命周期并随流程更新。
可加事实可沿所有维度求和,半加事实只能沿部分维度求和,非加事实不能直接求和。
对应往年题:
- 老师复习语音:维度建模是复习重点,粒度、一致性、事实表类型和可加性都被强调
- 老师划重点:07 多维建模点名事务、周期、累积三种事实表
- 往年复习提纲:3.21、3.24-3.28
5. 数据挖掘
数据挖掘是从大量数据中提取蕴含的、未知的、非平凡的、有潜在应用价值的模式或规则。
关联规则发现 A -> B,核心指标是支持度和置信度,Apriori 利用频繁项集子集也频繁的性质。
分类是有监督学习,用带类标号样本训练模型;聚类是无监督学习,根据相似性自动分组。
OLAP 是人工交互式多维分析,数据挖掘是算法驱动的模式发现。
对应往年题:
- 往年复习提纲:1.9、1.10 考数据挖掘地位、差异和各种方法解决什么问题
- 老师划重点:11 数据挖掘 p3、p7、p19、p20、p25、p54、p65、p72、p78
- 老师复习语音:强调数据挖掘定义、OLAP 区别、关联规则、分类和聚类