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

数据挖掘(7.1)--数据仓库

目录

引言

一、数据库

1.简介

2.数据库管理系统(DBMS)

二、数据仓库

数据仓库特征

数据仓库作用

数据仓库和DBMS对比

分离数据仓库和数据库


引言

数据仓库的历史可以追溯到20世纪60年代,当时计算机领域的主要工作是创建运行在主文件上的单个应用,这些应用以报表处理和程序为特征,一般使用早期的程序设计语言如Fortran或COBOL编写。主文件存储在廉价的磁带上面,其缺点是只能顺序访问。到了20世纪70年代,随着计算机技术的发展,数据库管理系统(DBMS)开始出现,用于管理数据和改善访问效率。
1975年,Sperry Univac推出了MAPPER,这是一个数据库管理和报告系统,其中包括世界上第一个专为建设信息中心而设计的平台4GL,这是当代数据仓库技术的先驱。到了20世纪80年代,随着个人计算机(PC)和第四代编程语言(4GL)等更为新颖的技术出现,数据仓库的概念开始出现。

一、数据库

1.简介

数据库因数据处理的需要而产生。例如,在20世纪60年代后期,美国为了战争的需要,将各种情报收集在一起,存储隐藏在计算机内,这就是数据库的起源。随着计算机技术的发展,数据库从文件系统阶段发展为数据库阶段,再到高级数据库阶段。现在,数据库已经广泛应用于实际应用、计算机技术和网络技术中,如分布式数据库、面向对象数据库和网络数据库等。

数据:数据库中存储的基本对象,用于描述事物的符号记录

数据库:以一种结构化的方式存储数据的文件系统

数据库由表组成,表由记录组成,记录由字段组成

①:域

②:记录

③:数据

2.数据库管理系统(DBMS)

使用户可以定义,创建和维护数据库并且提供数据库受控访问的一个软件系统。

例如:DB2, Oracle, MS SQL Server, MySQL, MS Access

DBMS的重要功能:

数据存储, 检索 (SQL), 和更新(创建/插入,读取,更新,删除)

事务支持,确保对应一个给定的事务所有更新都做了或者都没

并发控制服务,确保当多个用户同时更新数据库时,数据库正确更新

二、数据仓库

数据仓库是一种语义上一致的仓库,可作为一个决策支持数据模型的物理实现,存储企业作出的战略决策所需要的信息。数据仓库被看做是一个建筑,通过整合来自多个异构数据源而构建,用来支持结构或即席查询,分析报告和做出决策.

数据仓库特征

数据仓库是一个面向主题的、集成的、时变的、非易失的数据集合,支持管理部门的决策过程。

面向主题的

(1)围绕重要的课题或主题,如顾客.产品和销售。
(2)着眼于决策者的数据建模和分析,而不是日常对数据的操作或事务处理。
(3)通过排除对决策支持过程中无用的数据,提供一个围绕特定主题的简明的意见。

集成的

(1) 数据仓库的建立是通过集成和整合多个不同的异构数据源,数据源包括关系型数据库、数据文件和联机事务记录等。
(2)在数据仓库的建立过程中,数据清洗和数据集成技术得到应用。其目的是为了保证在集成不同数据源时,保证数据在命名规则、编码结构和属性度量等方面的一致性。此外,当数据被放人数据仓库时,数据往往经过了一定的转换。

时变的

(1)在时间层面上数据仓库中的数据明显地比操作性数据库中的数据存储时间要长,其表现为操作性数据库中的数据往往存储的是当前的数据,而数据仓库是从历史数据的角度提供数据。例如,数据仓库中存储的是5~10年之间的数据,而操作性数据库中存储的是当前时间段的数据。
(2)在数据仓库中,关键结构都显式或者隐式地包含时间元素。与之不同的是,在操作性数据库中,关键结构不一定包含时间元素。

非易失的

(1)数据仓库物理地分开存放数据,而这些数据都来源于操作性数据库,最极端的情况下,如果数据仓库中的数据被损坏了,还可以通过操作性数据库中的数据信息进行恢复。
(2)在数据仓库中,通常的操作行为如更新数据不会发生。此外,数据仓库并不需要事务处理、恢复、并发控制机制等操作。数据仓库中只有两种类型的数据操作方式:初始化装载数据和访问数据。

数据仓库作用

提升客户关注度

  • 购买模式、购买偏好

微调生产策略

  • 重新配置产品和管理产品组合

分析业务操作和寻找利润来源

管理客户关系

数据仓库和DBMS对比

OLTP (On-Line Transaction Processing,联机事务处理):传统相关DBMS的主要任务。日常运作:购买、库存、金融、生产制造、工资单、登记、会计等

OLAP (On-Line Analytical Processing,联机分析处理):数据仓库系统的主要任务、数据分析和决策

OLTP和OLAP的主要区别

(1)处理对象:

  • OLTP是面向顾客的,为顾客提供事务处理和查询处理等操作;
  • OLAP是面向市场的,为数据分析人员提供数据分析的支持。

(2)数据内容:

  • OLTP处理的数据是当前详细的数据;
  • OLAP处理的数据是历史的数据,合并集成统一后的数据。

(3)数据库的设计:

  • OLTP系统是采用“实体关系"模型,也就是ER图的数据模型和面向应用的数据设计;
  • OLAP往往采用星型模式和面向主题的数据库设计。

(4)视图:

  • OLTP关注的是当前和本地的数据,而不去关注历史的数据信息;
  • OLAP关注的数据是不同演变和不同数据源集成过来的数据信息。

(5)访问模式:

  • OLTP中访问模式包括对数据的更新、查询等操作,这种操作需要并行化的控制和恢复机制;
  • OLAP的数据访问模式主要是只读操作,而且这种读操作大部分是比较复杂的查询操作。

分离数据仓库和数据库

提高两个系统的高性能

  • DBMS ——OLTP(查询、并发控制、恢复)
  • 数据仓库——OLAP (复杂的OLAP查询)

不同功能和不同数据

  • 决策支持需要历史数据,而业务数据库并没有保存

相关文章:

数据挖掘(7.1)--数据仓库

目录 引言 一、数据库 1.简介 2.数据库管理系统(DBMS) 二、数据仓库 数据仓库特征 数据仓库作用 数据仓库和DBMS对比 分离数据仓库和数据库 引言 数据仓库的历史可以追溯到20世纪60年代,当时计算机领域的主要工作是创建运行在主文件上的单个应用&#xff0…...

Vue3问题:如何实现密码加密登录?前后端!

前端功能问题系列文章,点击上方合集↑ 序言 大家好,我是大澈! 本文约3400字,整篇阅读大约需要6分钟。 本文主要内容分三部分,第一部分是需求分析,第二部分是实现步骤,第三部分是问题详解。 …...

【爬虫】python打包可执行程序(ui界面制作完成后)

1.安装pyinstaller pip install pyinstaller可能出现连接超时安装不上的情况,可以切换源进行下载 pip install -i http://pypi.douban.com/simple/ pyinstaller2.打包程序 pyinstaller xxxxx.py --noconsole --hidden-import PySide6.QtXml...

取Dataset子集(pytorch)

取Dataset子集--pytorch 1. why2. how3. example 1. why 我们在调试深度学习代码时,常常会遇到数据集太大,导致调试浪费时间的情况,这种情况下,将数据集中的一个子集拿出来用于调试代码,调试成功在用完整的数据集运行…...

如何选择消息队列

作为一个程序员&#xff0c;我们必须要认识到&#xff0c;软件工程中是不存在”银弹“的。<!--more--> 在消息队列的选型问题上&#xff0c;也是同样的道理。并不存在哪个消息队列就是最好的&#xff0c;能够解决所有的问题。常用的消息队列有好几个&#xff0c;每一种都…...

读取mysql数据库表结构生成接口文档

1、引入依赖 <!-- 导出word --><dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.30</version></dependency><!-- https://mvnrepository.com/artifact/e-iceblue/s…...

【MySQL索引与优化篇】InnoDB数据存储结构

文章目录 1. 数据库的存储结构:页1.1 磁盘与内存交互基本单位:页1.2 页结构概述1.3 页的上层结构 2. 页的内部结构3. InnoDB行格式(或记录格式)3.1 Compact行格式3.2 Dynamic和Compressed行格式3.3 Redundant行格式 4. 区、段与碎片区4.1 为什么要有区&#xff1f;4.2 为什么要…...

Go学习第十二章——Go反射与TCP编程

Go反射与TCP编程 1 反射1.1 基本介绍1.2 快速入门1.3 注意事项和细节说明1.4 最佳实践 2 Tcp Socket编程2.1 基本介绍2.2 入门案例2.3 服务器监听2.4 服务器接受客户端消息 1 反射 1.1 基本介绍 **反射&#xff1a;**在编译时静态类型语言中实现动态特性的一种机制。 Go语言…...

uniapp编译微信小程序富文本rich-text的图片样式不生效原因

this.detail.contents this.detail.contents.replace(/\<img/gi, <img style"display:block;max-width:90%;height:auto;border:2px solid #eee;box-shadow:5px 5px 5px rgba(100,100,100,0.8);margin-bottom:10px;text-align:center;" );开始采用这个replace…...

Django实战项目-学习任务系统-任务管理

接着上期代码框架&#xff0c;开发第3个功能&#xff0c;任务管理&#xff0c;再增加一个学习任务表&#xff0c;用来记录发布的学习任务的标题和内容&#xff0c;预计完成天数&#xff0c;奖励积分和任务状态等信息。 第一步&#xff1a;编写第三个功能-任务管理 1&#xff0…...

ubuntu18.04设置开机自动启动脚本(以自动启动odoo命令行为例讲解)

简介 ubuntu作为服务器使用时&#xff0c;常常需要在机器重启时能自动启动我们开发的服务。 Ubuntu 16.10开始不再使用initd管理系统&#xff0c;改用systemd&#xff0c;包括用systemctl命令来替换了service和chkconfig的功能。 systemd 默认读取 /etc/systemd/system 下的配…...

golang工程——grpc-gateway 转发http header中自定义字段到grpc上下文元数据

http header 转发到 grpc上下文 grpc网关可以将请求体内容转发到grpc对应消息中。那如何获取http header头中的信息&#xff0c;本文将介绍如何将http header转发到grpc上下文并采用拦截器&#xff0c;获取http header中的内容。 有些http header中的内置字段是会转发的比如Au…...

CPU眼里的C/C++: 1.3 汇编级单步调试函数执行过程

1. 目的 2. 基于 GDB 的汇编级单步调试 原始代码 #include <stdio.h>long test() {long a 1;a 2;return a; }int main() {int ret test();printf("test return %d\n", ret);return 0; }关键 gdb 命令 si 指令执行汇编级的单步调试info registers 读取寄…...

数据结构时间复杂度(补充)和空间复杂度

Hello&#xff0c;今天事10月27日&#xff0c;距离刚开始写博客已经过去挺久了&#xff0c;我也不知道是什么让我坚持这么久&#xff0c;但是学校的课真的很多&#xff0c;很少有时间多出来再学习&#xff0c;有些科目马上要考试了&#xff0c;我还不知道我呢不能过哈哈哈&…...

Mac-postman存储文件目录

今天postman弹窗要求登录账号才可访问之前的API文档数据。 但是这postman的账号又是前同事的账号&#xff0c;我没有他的账号和密码啊。 登录了我自己的postman账号后&#xff0c;所有的api文档都不见了....我服了。 首先去屏幕左上角---> 前往 --->个人 然后键盘按显…...

JAVA面试题简单整理

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、重载和重写的区别一、&和&&的区别一、get和post请求的区别 delete、put一、cookie和session的区别一、Autowired和Resource区别一、”和equals…...

dd命令用法学习,是一个功能强大的工具

dd 命令是一个功能强大的工具&#xff0c;它有许多参数可以用来控制其行为。以下是 dd 命令中常用的一些参数&#xff1a; - ifinputfile&#xff1a;指定输入文件的路径。 - ofoutputfile&#xff1a;指定输出文件的路径。 - bssize&#xff1a;设置每个块的大小。可以使用不同…...

Games104现代游戏引擎笔记 网络游戏进阶架构

Character Movement Replication 角色位移同步 玩家2的视角看玩家1的移动是起伏一截一截&#xff0c;并且滞后的 interpolation&#xff1a;内插值&#xff0c;在两个旧的但已知的状态计算 extrapolation&#xff1a;外插值&#xff0c;本质是预测 内插值&#xff1a;但网络随着…...

Apollo 快速上手指南:打造自动驾驶解决方案

快速上手 概述云端体验登录云端仿真环境 打开DreamView播放离线数据包PNC Monitor 内置的数据监视器cyber_monitor 实时通道信息视图福利活动 主页传送门&#xff1a;&#x1f4c0; 传送 概述 Apollo 开放平台是一个开放的、完整的、安全的平台&#xff0c;将帮助汽车行业及自…...

C现代方法(第14章)笔记——预处理器

文章目录 第14章 预处理器14.1 预处理器的工作原理14.2 预处理指令14.3 宏定义14.3.1 简单的宏14.3.2 带参数的宏14.3.3 #运算符14.3.4 ##运算符14.3.5 宏的通用属性14.3.6 宏定义中的圆括号14.3.7 创建较长的宏14.3.8 预定义宏14.3.9 C99中新增的预定义宏14.3.10 空的宏参数(C…...

QEi编码器接口原理与工业级抗干扰实战指南

1. 编码器&#xff08;Encoder&#xff09;QEi模块技术深度解析1.1 概述&#xff1a;为何QEi是嵌入式运动控制的底层基石在电机驱动、机器人关节反馈、精密定位平台等实时运动控制系统中&#xff0c;正交编码器&#xff08;Quadrature Encoder&#xff09;是最核心的位置与速度…...

ESP32硬件PWM控制库PWMOutESP32实战指南

1. PWMOutESP32 库深度解析&#xff1a;面向嵌入式工程师的 ESP32 PWM 控制实践指南 1.1 库定位与工程价值 PWMOutESP32 是一个专为 ESP32 系列微控制器设计的轻量级 PWM 输出控制库&#xff0c;其核心目标是提供 Arduino 风格的 pwm.analogWrite(pin, value) 接口&#xff…...

为什么选择Titanium SDK?5大优势让你告别原生开发复杂性

为什么选择Titanium SDK&#xff1f;5大优势让你告别原生开发复杂性 【免费下载链接】titanium-sdk &#x1f680; Native iOS and Android Apps with JavaScript 项目地址: https://gitcode.com/gh_mirrors/ti/titanium-sdk 在移动应用开发领域&#xff0c;Titanium SD…...

Redis 全量主从同步和增量主从同步详解

Redis 主从同步:全量同步与增量同步详解 Redis 主从复制是实现高可用、读写分离和数据冗余的基础。复制过程分为全量同步和增量同步两种模式。理解它们的工作原理、触发条件及配置优化,是系统分析师设计高可用 Redis 架构的关键。 📌 一、主从复制基本概念 主节点(Master…...

4 大类别 22 个高效的 Agentic Skills | 适用于 Claude、GPT

增强各类 AI 模型的能力&#xff0c;帮助你在写作、内容生产、研究分析、视觉表达、自动化执行等方面提升效率。 这些技能以 .md 格式编写&#xff0c;虽然这是 Claude 常用的技能格式&#xff0c;但你同样可以将内容复制到 ChatGPT 中使用。 Claude 如何创建 skill 国内用户…...

HC32F460 BootLoader实战:从串口接收、Flash烧录到安全跳转的完整实现

1. HC32F460 BootLoader开发全景指南 第一次接触BootLoader开发时&#xff0c;我也被各种专业术语绕得头晕。直到真正用HC32F460做完项目才明白&#xff0c;它本质上就是个"固件快递员"——负责把新程序安全送到Flash仓库&#xff0c;还能在关键时刻带路跳转到新程序…...

ICRA 2025自动叉车顶会论文拆解:ADAPT如何在真实复杂场景完成托盘搬运?

ICRA 2025 最新AGV顶会论文拆解&#xff1a;ADAPT自动叉车系统&#xff0c;如何在真实复杂户外场景完成托盘搬运&#xff1f;如果说仓库 AGV 研究已经逐渐成熟&#xff0c;那么真正更难的&#xff0c;其实是户外、非结构化、天气变化大、障碍物复杂的施工场地搬运。 这篇来自 A…...

WarcraftHelper:让经典魔兽争霸3在现代电脑上完美运行的终极解决方案

WarcraftHelper&#xff1a;让经典魔兽争霸3在现代电脑上完美运行的终极解决方案 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 你是否还在为魔兽争霸…...

从“链表长度”到“游戏对象池”:用C++ std::list的size()函数设计一个简单的内存管理Demo

从链表长度到游戏对象池&#xff1a;用C std::list设计高效内存管理方案 在游戏开发中&#xff0c;频繁创建和销毁对象会导致内存碎片化与性能下降。想象一个2D射击游戏场景&#xff1a;玩家发射的子弹、随机生成的敌人都需要动态管理。传统new/delete直接操作内存的方式在这种…...

终极指南:如何掌握Ramjet动画中元素堆叠顺序实现丝滑变换效果

终极指南&#xff1a;如何掌握Ramjet动画中元素堆叠顺序实现丝滑变换效果 【免费下载链接】ramjet Morph DOM elements from one state to another with smooth animations and transitions 项目地址: https://gitcode.com/gh_mirrors/ra/ramjet Ramjet是一个强大的Java…...