12(第十一章,数据仓库和商务智能)

目录

概述

目标和原则

基本概念

商务智能

数据仓库

数据仓库建设方法

数据仓库架构组件

加载处理方式

1、历史数据

2、批量变更数据捕获(CDC)

3、准实时和实时数据加载

活动

运营分析应用

方法

数据仓库构建

架构演进

数据处理过程

数据清洗

转换集成

ETL结果

数据仓库

星型模型

雪花模型

数据聚合

数据域

度量指标


概述

本文的标题中,数据仓库(Data Warehouse,DW)是后端,商务智能则是前端。

目标和原则

数据仓库的建设应该遵循如下知道原则

基本概念

商务智能

商务智能这个术语有两层含义,第一层含义是商务智能指一种理解组织诉求和寻求机会的数据分析活动。第二层含义是商务智能指支持这类数据分析活动的技术集合。

数据仓库

数据仓库有两个重要组成部分,一个集成的决策支持数据库和与之相关的用于收集、清理、转换和存储来自各种操作和外部数据源数据的软件程序。

数据仓库建设方法

Inmon 把数据仓库定义为“面向主题的、整合的、随时间变化的、相对稳定的支持管理决策的数据集合”,用规范化的关系模型来存储和管理数据。而Kimball则把数据仓库定义为“为查询和分析定制的交易数据的副本”。

虽然 Inmon 和 Kimball 提的数据仓库建设方法不同,但他们遵循的核心理念相似:

  1. 数据仓库存储的数据来自其他系统。
  2. 存储行为包括以提升数据价值的方式整合数据。
  3. 数据仓库便于数据被访问和分析使用。
  4. 组织建设数据仓库,因为他们需要让授权的利益相关方访问到可靠的、集成的数据。
  5. 数据仓库数据建设有很多目的,涵盖工作流支持、运营管理和预测分析。

数据仓库架构组件

源系统,即数据源。

数据集成ETL。

数据存储区域。数据存储区域又包括多个不同用途的存储区域:暂存区、参考数据和主数据一致性维度、中央数据仓库、操作性数据存储(ODS)、数据集市、数据立方体(Cubes)。

加载处理方式

数据仓库涉及两种主要的数据集成处理类型:历史数据加载和持续不断的数据更新。历史数据通常只需要加载一次,或者为了处理数据问题加载有限的几次,然后再也不会加载。

1、历史数据

2、批量变更数据捕获(CDC)

3、准实时和实时数据加载

活动

运营分析应用

三种经典的OLAP实现方法:

  1. 关系型联机分析处理(ROLAP)。ROLAP 通过在关系数据库 (RDBMS) 的二维表中使用多维技术来支持 OLAP。星型架构是 ROLAP 环境中常用的数据库设计技术。
  2. 多维矩阵型联机分析处理(MOLAP)。MOLAP 通过使用专门的多维数据库技术支持 OLAP
  3. 混合型联机分析处理 (HOLAP)。它是 RLAP 和 MOLAP 的结合。HOLAP 实现允许部分数据以MOLAP 形式存储,而另一部分数据存储在 ROLAP 中。控件的实现方式各不相同,设计师对分区的组合也各有不同。

方法

书上写的偏概念,可能重点比较少,这里我举一个简单的例子,以后有事件,单独搞一个相关的规范分享,项目上实际的构建过程。

数据仓库构建

架构演进

数据处理过程

数据清洗

转换集成

ETL结果

数据仓库

星型模型

雪花模型

数据聚合

数据域

度量指标

  • 使用指标
  • 主题域覆盖率
  • 响应事件和性能指标

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/574342.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python+Selenium基于PO模式的Web自动化测试框架

🍅 视频学习:文末有免费的配套视频可观看 🍅 点击文末小卡片 ,免费获取软件测试全套资料,资料在手,涨薪更快 一、什么是Selenium? Selenium是一个基于浏览器的自动化测试工具,它提供…

pytest教程-30-测试数据管理插件-pytest-datadir

领取资料,咨询答疑,请➕wei: June__Go 上一小节我们学习了pytest重复执行用例插件pytest-repeat,本小节我们讲解一下测试数据管理插件-pytest-datadir。 在软件测试中,有效管理测试数据对于编写全面的测试用例至关重要。Pytest…

Allure精通指南(04)静态和动态生成报告标记

文章目录 Allure 静态定制报告标记Allure 动态生成报告标记Allure 实现方式选择Allure 分类执行运行epic相关运行feature相关运行story相关运行story相关运行feature和多个story相关(取并集) Allure 静态定制报告标记 定义和用法: Decorators…

Learn ComputeShader 01 First Computer Shader

使用Unity版本:2019.4.12f1 整体流程: 1添加一个quad object并添加一个无光照材质 2.相机投影模式设置为正交 3.调整quad使其完全显示在相机内 4.创建脚本并且使用计算着色器覆盖quad的纹理 5.创建一个compute shader 前三步完成以后结果应该是这…

深入了解计算机系统——利用循环展开对程序的优化

系列文章: 操作系统详解(1)——操作系统的作用 操作系统详解(2)——异常处理(Exception) 操作系统详解(3)——进程、并发和并行 操作系统详解(4)——进程控制(fork, waitpid, sleep, execve) 操作系统详解(5)——信号(Signal) 文章目录 一些概念CPE 初步优化消除不必…

Mysql基础篇

1 数据库的三大范式 第一范式:强调的是列的原子性,即数据库表的每一列都是不可分割的原子数据项。 第二范式:在第一范式的基础上,消除非主属性对主属性的部分函数依赖。要求实体的非主键完全依赖于主键。所谓完全依赖是指不能存…

Linux进程间通讯

文章目录 Linux进程间通讯1、进程间通信介绍1.1、进程间通信目的1.2、进程间通信发展1.3、进程间通信分类 2、管道2.1、什么是管道2.2、匿名管道2.2.1、标准输入stdin和标准输出stdout通信2.2.2、父子进程通信2.2.3、父子进程通信现象2.2.4、父子进程通信特性2.2.5、进程池 2.3…

【window环境、Linux环境、QT三种方法实现TCP通信】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、Windows环境下实现TCP通信1.服务器2.客户端3.运行 二、Linux环境下实现TCP通信1.服务端2.客户端 三、Qt实现TCP通信1.服务端1.客户端 总结 前言 大多数项目…

RAG文本解析工具open-parse

简介 对于RAG来说,将文本有效的分块(chucking)是很重要的一件事,open-parse是一个用来分块pdf的开源工具,它主要基于视觉驱动(Visually-Driven)的方式来将文档分块,也就是说它不仅仅是按照段落或者字数来对文档分块,而…

easyx 按键信息

前言 看看代码吧 ExMessage msg { 0 }; bool button(int x, int y, int w, int h, const char* text) {//绘制按钮setfillcolor(RGB(230, 231, 232));fillroundrect(x, y, x w, y h, 5, 5);if ((msg.x > x && msg.x<x w && msg.y>y && …

为什么要分库分表?(设计高并发系统的时候,数据库层面该如何设计?)

目录 1.分表 2.分库 说白了&#xff0c;分库分表是两回事儿&#xff0c;大家可别搞混了&#xff0c;可能是光分库不分表&#xff0c;也可能是光分表不分库&#xff0c;都有可能。 我先给大家抛出来一个场景。 假如我们现在是一个小创业公司(或者是一个 BAT …

java反序列化之URLDNS链学习

一、前言 近来学习java反序列化&#xff0c;听p神所说这个URLDNS利用链比较好理解&#xff0c;故决定由此进入学习的第一篇。 URLDNS是Java反序列化中比较简单的一个链&#xff0c;由于URLDNS不需要依赖第三方的包&#xff0c;同时不限制jdk的版本&#xff0c;所以通常用于检…

hertzbeat 源码阅读记录

关于自定义标签的说明 EmailValid.java HostValid PhoneNumValid 枚举值说明&#xff1a;

【OpenGL实践08】现代渲染管线在GLUT和Pygame和Qt.QOpenGLWidget上各自的实现代码

Qt.QOpenGLWidget进行现代渲染管线实验效果 一、说明 据说QOpenGLWidget是用来取代QGLWidget的继承者&#xff0c;我们试图将GLUT上的旧代码改成QOpenGLWidget&#xff0c;本以为差别不大&#xff0c;轻易搞定&#xff0c;经实践发现要付出极大努力才能完成。经多次实验发现G…

Java面试八股之Java中为什么没有全局变量

Java中为什么没有全局变量 Java中没有传统意义上的全局变量&#xff0c;这是因为Java语言设计遵循面向对象的原则&#xff0c;强调封装性和模块化&#xff0c;以及避免全局状态带来的副作用。 封装性&#xff1a; 全局变量违反了面向对象编程中的封装原则&#xff0c;即隐藏对…

【ZYNQ】zynq启动模式及程序固化

一、前言 由于zynq含有arm cpu ,其启动模式由ps主导&#xff0c;与纯逻辑的fpga不相同&#xff0c;此处做一个记录。 二、zynq启动模式 关于zynq的启动模式详细内容可以参考官方文档&#xff1a;ug585-Zynq 7000 SoC Technical Reference Manual&#xff0c;第六章。 2.1 启…

帮助中心系统搭建不再是难题,这几个工具来帮你

在面临客户服务挑战时&#xff0c;有效的帮助中心系统是提升用户满意度和解决问题效率的关键。幸运的是&#xff0c;搭建一个功能全面的帮助中心不再是什么难事。下面&#xff0c;我要为你介绍三款能够帮忙打造帮助中心的超实用工具&#xff0c;让你的客户支持体验迅速升级。 1…

网页使用之如何返回json/xml

后端返回json数据给前端进行渲染的方式比较熟悉&#xff0c;至于返回html页面&#xff0c;返回xml的方式接触逐渐减少&#xff0c;来在项目中熟悉这一点。 返回文本数据 json姿势的返回实属最简单的方式&#xff0c;在SpringBoot应用中&#xff0c;有两种简单的方式 1.直接在…

S32K的JLINK与PE接线方法与刷程序失败问题

S32K的JLINK与PE接线方法与刷程序失败问题 1、PE的接线方法2、JLINK的接线方法3、刷程序失败问题 1、PE的接线方法 2、JLINK的接线方法 3、刷程序失败问题 出现如下问题&#xff1a; Secure Debug might be enabled on this device.lf so.please unlock the device via PEmic…

一段音频驱动照片唱歌,EMO模型上线通义APP

把一段音频、一张照片输入AI模型&#xff0c;就能让图中人物开口唱歌说话&#xff0c;让奥黛丽赫本唱《上春山》、陶俑仕女说英文RAP、爱因斯坦说中文段子。不久前&#xff0c;这款名为EMO的模型因为阿里通义实验室的一篇论文火遍海内外&#xff0c;模型的产品化进程也广受关注…