当前位置: 首页 > news >正文

数据仓库中的指标体系模型介绍

数据仓库中的指标体系介绍


文章目录

  • 数据仓库中的指标体系介绍
  • 前言
  • 什么是指标体系
  • 指标体系设计有哪些模型?
    • 1. 指标分层模型
    • 2. 维度模型
    • 3. 指标树模型
    • 4. KPI(关键绩效指标)模型
    • 5. 主题域模型
    • 6.平衡计分卡(BSC)模型
    • 7.数据指标框架模型(Metrics Framework)
    • 8.时间序列模型
    • 9.分层分级指标模型
    • 10. Objective-Strategy-Metrics(OSM)模型
    • 11. UJM 模型(User Journey Metrics 模型)
  • 总结


前言

数据仓库的指标体系(或指标体系设计)通常属于 数据建模阶段 的一部分。具体来说,它属于数据仓库构建的以下步骤:

需求分析阶段–>指标体系设计–>数据建模阶段–>数据加载与计算–>数据展示与分析

什么是指标体系

指标体系

在这里插入图片描述

指标体系设计有哪些模型?

我基于 Oracle 11g 数据库中 SCOTT 用户 的表(如 EMP、DEPT、SALGRADE 等),针对每种指标体系拆解模型举的具体实例:

1. 指标分层模型

应用场景: 构建企业组织中的分层指标体系。
案例:
战略层: 提升公司总薪资水平(如平均薪资增长 10%)。
战术层: 按部门分析各部门平均薪资的增长(DEPT 表中的部门)。
运营层: 按员工分析个人薪资的增长(EMP 表中的员工薪资)

-- 查询战略层(全公司平均薪资)
SELECT AVG(SAL) AS AVG_SAL FROM EMP;-- 查询战术层(按部门分层)
SELECT DNAME, AVG(SAL) AS AVG_SAL FROM EMP E JOIN DEPT D ON E.DEPTNO = D.DEPTNO GROUP BY DNAME;-- 查询运营层(每位员工的薪资)
SELECT EMPNO, ENAME, SAL FROM EMP;

2. 维度模型

应用场景: 通过事实表和维度表分析员工薪资。
案例:
事实表: EMP 表中的薪资(SAL)。
维度表:
部门维度:DEPT 表(部门编号、部门名称、部门位置)。
时间维度:假设有 HIREDATE(入职时间)。

-- 部门维度分析:按部门统计薪资总和
SELECT D.DNAME, SUM(E.SAL) AS TOTAL_SAL 
FROM EMP E 
JOIN DEPT D ON E.DEPTNO = D.DEPTNO 
GROUP BY D.DNAME;-- 时间维度分析:按年份统计薪资总和
SELECT TO_CHAR(HIREDATE, 'YYYY') AS YEAR, SUM(SAL) AS TOTAL_SAL 
FROM EMP 
GROUP BY TO_CHAR(HIREDATE, 'YYYY');

3. 指标树模型

应用场景: 分解总薪资指标。
案例:
顶层指标: 全公司薪资总额。
中间层: 部门薪资总额。
底层指标: 员工个人薪资。

-- 顶层指标
SELECT SUM(SAL) AS TOTAL_SAL FROM EMP;-- 中间层指标
SELECT DNAME, SUM(SAL) AS DEPT_TOTAL_SAL 
FROM EMP E JOIN DEPT D ON E.DEPTNO = D.DEPTNO 
GROUP BY DNAME;-- 底层指标
SELECT EMPNO, ENAME, SAL FROM EMP;

4. KPI(关键绩效指标)模型

应用场景: 绩效考核中使用的核心指标。
案例:
目标: 提升员工工作效率。
KPI:
员工平均薪资。
工资高于 3000 的员工占比。

-- KPI 1: 员工平均薪资
SELECT AVG(SAL) AS AVG_SAL FROM EMP;-- KPI 2: 工资高于 3000 的员工占比
SELECT ROUND(COUNT(CASE WHEN SAL > 3000 THEN 1 END) * 100 / COUNT(*), 2) AS PERCENTAGE 
FROM EMP;

5. 主题域模型

应用场景: 按主题域分类管理指标。
案例:
薪资域: 薪资总额、平均薪资。
部门域: 每个部门的员工人数、部门平均薪资。
时间域: 员工入职年份分布。

-- 薪资域:总薪资、平均薪资
SELECT SUM(SAL) AS TOTAL_SAL, AVG(SAL) AS AVG_SAL FROM EMP;-- 部门域:每部门员工人数和平均薪资
SELECT DNAME, COUNT(*) AS EMP_COUNT, AVG(SAL) AS AVG_SAL 
FROM EMP E JOIN DEPT D ON E.DEPTNO = D.DEPTNO 
GROUP BY DNAME;-- 时间域:按入职年份统计员工人数
SELECT TO_CHAR(HIREDATE, 'YYYY') AS YEAR, COUNT(*) AS EMP_COUNT 
FROM EMP 
GROUP BY TO_CHAR(HIREDATE, 'YYYY');

6.平衡计分卡(BSC)模型

应用场景: 全面衡量企业运营的多个维度。
案例:
财务视角: 全公司薪资总额。
客户视角: 每部门员工人数(部门为“客户”)。
内部流程视角: 员工工龄分布。
学习与成长视角: 员工平均奖金(COMM 字段)。

-- 财务视角:薪资总额
SELECT SUM(SAL) AS TOTAL_SAL FROM EMP;-- 客户视角:每部门员工人数
SELECT DNAME, COUNT(*) AS EMP_COUNT 
FROM EMP E JOIN DEPT D ON E.DEPTNO = D.DEPTNO 
GROUP BY DNAME;-- 内部流程视角:员工工龄分布
SELECT FLOOR(MONTHS_BETWEEN(SYSDATE, HIREDATE)/12) AS YEARS_OF_SERVICE, COUNT(*) AS EMP_COUNT 
FROM EMP 
GROUP BY FLOOR(MONTHS_BETWEEN(SYSDATE, HIREDATE)/12);-- 学习与成长视角:员工平均奖金
SELECT AVG(COMM) AS AVG_COMM FROM EMP WHERE COMM IS NOT NULL;

7.数据指标框架模型(Metrics Framework)

应用场景: 指标从基础到聚合的层级。
案例:
原子指标: 每个员工的薪资。
衍生指标: 平均薪资。
聚合指标: 全公司薪资总额。

-- 原子指标
SELECT EMPNO, ENAME, SAL FROM EMP;-- 衍生指标
SELECT AVG(SAL) AS AVG_SAL FROM EMP;-- 聚合指标
SELECT SUM(SAL) AS TOTAL_SAL FROM EMP;

8.时间序列模型

应用场景: 按时间分析员工薪资的变化。
案例:
按年份统计入职员工的薪资总额和平均薪资。

SELECT TO_CHAR(HIREDATE, 'YYYY') AS YEAR, SUM(SAL) AS TOTAL_SAL, AVG(SAL) AS AVG_SAL 
FROM EMP 
GROUP BY TO_CHAR(HIREDATE, 'YYYY');

9.分层分级指标模型

应用场景: 按组织层级分解指标。
案例:
公司总薪资目标分为各部门目标,再分为员工目标

-- 公司总薪资
SELECT SUM(SAL) AS TOTAL_SAL FROM EMP;-- 部门薪资
SELECT DNAME, SUM(SAL) AS DEPT_TOTAL_SAL 
FROM EMP E JOIN DEPT D ON E.DEPTNO = D.DEPTNO 
GROUP BY DNAME;-- 员工薪资
SELECT EMPNO, ENAME, SAL FROM EMP;

10. Objective-Strategy-Metrics(OSM)模型

应用场景: 提升员工收入。
案例:
Objective(目标): 提高公司员工平均薪资。
Strategy(战略): 提高每部门的平均薪资。
Metrics(指标): 员工平均薪资、部门平均薪资

-- 公司平均薪资
SELECT AVG(SAL) AS AVG_SAL FROM EMP;-- 部门平均薪资
SELECT DNAME, AVG(SAL) AS DEPT_AVG_SAL 
FROM EMP E JOIN DEPT D ON E.DEPTNO = D.DEPTNO 
GROUP BY DNAME;

11. UJM 模型(User Journey Metrics 模型)

应用场景: 员工招聘和发展过程的分析。
案例:
旅程阶段:
吸引: 招聘的候选人数。
转化: 入职员工人数。
留存: 员工工作年限。
扩展: 员工晋升比例。

-- 吸引阶段:假设有招聘数据表
SELECT COUNT(*) AS CANDIDATE_COUNT FROM CANDIDATES;-- 转化阶段:入职人数
SELECT COUNT(*) AS HIRED_COUNT FROM EMP;-- 留存阶段:按工龄统计员工人数
SELECT FLOOR(MONTHS_BETWEEN(SYSDATE, HIREDATE)/12) AS YEARS_OF_SERVICE, COUNT(*) AS EMP_COUNT 
FROM EMP 
GROUP BY FLOOR(MONTHS_BETWEEN(SYSDATE, HIREDATE)/12);-- 扩展阶段:晋升员工人数占比(假设 `JOB` 字段中有 "MANAGER" 表示晋升)
SELECT ROUND(COUNT(CASE WHEN JOB = 'MANAGER' THEN 1 END) * 100 / COUNT(*), 2) AS PROMOTION_RATE 
FROM EMP;

总结

一、模型使用场景

模型名称主要使用场景
1. 指标分层模型适用于多层次管理场景,如公司战略目标、部门目标、运营目标逐级分解的场景。
2. 维度模型数据仓库或 BI 分析中,用于从多维角度(如时间、部门、员工)分析数据。
3. 指标树模型指标的层级分解与依赖分析,如总收入拆解为部门收入和区域收入。
4. KPI 模型关键绩效指标监控场景,如企业绩效考核或某项目的核心指标监控。
5. 主题域模型适合大型企业按业务主题划分指标体系,如财务、销售、客户、运营等。
6. 平衡计分卡(BSC)模型战略管理和全面绩效评估,如从财务、客户、流程、学习等多个视角评估企业绩效。
7. 数据指标框架模型复杂数据体系的指标标准化和全生命周期管理,用于企业建立统一的指标管理平台。
8. 时间序列模型动态分析指标随时间变化的趋势,适用于业务监控、预警系统、趋势预测场景。
9. 分层分级指标模型适按企业组织架构进行指标分层,如总部到区域分部到门店逐级分解指标。
10. Objective-Strategy-Metrics(OSM)模型从目标、战略、指标三个层次设计方案,适用于目标导向的战略管理场景。
11. UJM 模型用户行为分析场景,如互联网产品用户生命周期(吸引 → 转化 → 留存 → 扩展)相关指标分析。

二、模型的相同点

  • 目标明确性:

所有模型都以解决某一明确的业务问题为核心,如绩效提升、趋势分析、用户行为优化等。
例如:KPI 模型、OSM 模型、分层模型等都围绕目标进行分解或监控。

  • 数据指标化:

各模型都强调通过定量化指标(如薪资总额、留存率)来衡量目标和执行效果。
数据是模型的基础,通过清晰的指标定义和逻辑支持分析与评估。

  • 逻辑层次性:

多数模型具备层次性结构,比如指标分层模型、指标树模型、OSM 模型都强调指标的上下级关系。

  • 可监控与评估:

模型通过定义具体的衡量标准,便于对业务的执行过程进行持续监控与优化。

三、模型名称 特点(差异点)

模型名称特点(差异点)
1. 指标分层模型强调从战略层到运营层的指标逐级分解,适用于多层级的企业管理场景,特别是需要明确责任和目标的场景。
2. 维度模型侧重于从多个分析维度(如时间、部门、区域等)对数据进行统计分析,是数据仓库和 BI 分析的重要工具。
3. 指标树模型强调指标的分解路径和层级依赖关系,适合复杂业务场景中逐级分解目标和追溯来源。
4. KPI 模型聚焦于核心绩效指标,强调关键目标的少量指标监控,适用于简单、直接的目标评估场景。
5. 主题域模型按业务主题划分指标,适合大型企业或复杂组织按功能划分数据分析指标(如销售、财务等领域)。
6. 平衡计分卡(BSC)模型从多个视角(财务、客户、流程、学习)衡量目标完成情况,适用于全面绩效评估,适用场景较广但设计复杂度较高。
7. 数据指标框架模型强调指标的全生命周期管理(定义、使用、更新、维护),适合数据治理和标准化管理。
8. 时间序列模型侧重分析指标随时间的变化趋势,适合业务动态监控和预测,突出指标的时间维度。
9. 分层分级指标模型从组织架构分层和分级角度设计指标,适合跨层级、多级分支的企业环境。
10. OSM 模型从目标到战略再到指标逐层设计,逻辑递进清晰,适合目标导向型的企业战略管理场景。
11. UJM 模型基于用户旅程设计指标,突出用户行为分析和生命周期价值(如互联网行业中的用户留存和转化场景)。

四、总结

  • 相同点:

这些模型的核心思想都是为了更好地管理和分析数据,以支持业务目标的达成。
它们都通过指标的设计和分析,为业务提供决策支持。

  • 不同点:

视角不同:

如 平衡计分卡模型 是从多个维度综合评估,维度模型 则强调多维度数据的分析。 UJM 模型 从用户行为出发,而 分层模型
则更注重企业内部目标分解。

适用场景不同: 时间序列模型 适合时间动态监控场景,而 指标树模型 适合分解复杂指标。

复杂度不同: 简单模型如 KPI 模型 适合直接监控核心目标; 复杂模型如 数据指标框架模型 和 OSM 模型
需要全面的设计和较高的实现成本。

使用建议:

单独使用: 对于小型业务,建议采用如 KPI 模型 或 分层模型 等简单的模型。
结合使用: 对于复杂场景,可以结合多个模型使用,如用OSM 模型 制定战略目标,结合 KPI 模型 和 时间序列模型 监控关键指标,辅以 维度模型 和 指标树模型 支持多维分析。


http://www.mrgr.cn/news/82196.html

相关文章:

  • Git revert回滚
  • Linux(centos)安装 MySQL 8 数据库(图文详细教程)
  • 一文读懂 Linux 目录切换
  • vue3+Echarts+ts实现甘特图
  • 考试座位号(PTA)C语言
  • 基于动力学的MPC控制器设计盲点解析
  • Frontend - 分页(针对 python / Django )
  • 用Python操作字节流中的Excel工作簿
  • SpringCloud源码分析-Ribbon与LoadBalancer
  • python实现自动登录12306抢票 -- selenium
  • Yolo11改进策略:注意力改进|Neck层改进|SCSA,探索空间与通道注意力之间的协同效应|即插即用
  • 【Rust自学】9.2. Result枚举与可恢复的错误 Pt.1:match、expect和unwrap处理错误
  • 【Rust自学】9.1. 不可恢复的错误以及panic!
  • 【Rust自学】8.6. HashMap Pt.2:更新HashMap
  • 深入探讨服务器虚拟化:架构、技术与应用
  • 我们能否使用 ANSYS SPEOS 测量水质?
  • Unity3D仿星露谷物语开发14之Custom Property Attribute
  • 偏移类窗口函数—— LAG()、LEAD()用法详解
  • 【Kafka 消息队列深度解析与应用】
  • 【Rust自学】8.5. HashMap Pt.1:HashMap的定义、创建、合并与访问
  • 【分布式缓存中间件Memcached原理与应用】
  • 面试题汇总
  • GXUOJ-算法-第四次作业(圆排列、连续邮资、n皇后、符号三角形)
  • 【非关系型数据库Redis 】 入门
  • primevue的<Menu>组件
  • 基于 Node.js 的 ORM(对象关系映射)工具——Sequelize介绍与使用,并举案例分析