【DBMS 数据库管理系统】数据仓库中 数据追加 ( 时标方法 | DELTA 文件法 | 前后映像文件法 | 日志文件法 )

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: 【DBMS 数据库管理系统】数据仓库中 数据追加 ( 时标方法 | DELTA 文件法 | 前后映像文件法 | 日志文件法 )

文章目录

一、数据追加 概念 和 方法

二、时标方法

三、DELTA 文件法

四、前后映像文件法

五、日志文件法





一、数据追加 概念 和 方法


数据仓库 数据追加 :


"数据追加" 概念 : 数据仓库 数据初装 完成之后 , 再向数据仓库中输入新的数据 , 称为 “数据追加” ;

"数据追加" 内容 : 在上次数据初装 / 数据追加 后 , 变化的数据 ( 不变的数据不管 , 更新变化的数据 ) ;


"数据追加" 途径 :


时标方法

DELTA 文件法

前后映像文件法

日志文件法





二、时标方法


时标方法 :


前提 : 数据含有 时标 字段 ;

操作 : 对新 插入 或 更新 的数据记录 , 加上最新的时标 ;


缺点 : 很多数据库中的属性字段中 , 没有 “时标” 字段 , 此时就无法进行数据追加 ;






三、DELTA 文件法


DELTA 文件法 : 设计应用程序 , 让 应用程序 负责 生成 DELTA 文件 , 记录数据改变的内容 ;



优点 : 效率高 , 避免扫描整个数据库 ;



缺点 :


应用问题 : 生成 DELTA 文件 需要应用程序进行 , 不是所有的应用都有该功能 ;

更改应用 : 需要更改应用程序 , 开发生成 DELTA 文件功能 ;

应用数量 : 应用数量很多 , 几万 , 十几万个 , 每个应用都添加 生成 DELTA 文件的功能 , 很难实现 ;





四、前后映像文件法


前后映像文件法 : 先对数据库做一次快照 A AA , 抽取数据库数据 到 数据仓库 中 , 在做一次快照 B BB , 对比 A B ABAB 两个快照的差异 , 确定追加的数据 ;



"前后映像文件法" 缺点 : 扫描一次数据库都很占用资源 , 这里对比 2 22 个快照 , 需要扫描 2 22 次数据库 , 这样会 占用大量的资源 , 影响系统性能 ;






五、日志文件法


日志文件法 :


数据库固有机制 : 利用 传统数据库 的固有机制 , 日志文件机制 , 数据库可以根据日志文件进行数据恢复 ;

操作数据 : 将 数据库 的日志文件取出 , 读取该日志文件 , 该日志文件中有数据的增删查改操作内容 , 日志文件中进行了哪些修改 , 数据仓库中进行对应的数据追加 ;

优点 : 只用顺序读取日志文件 , 不需要扫描整个数据库 ;

缺点 : 日志文件机制 , 是根据 OLTP 需求进行设计的 , 将数据的全部变化过程都记录下来 , 数据仓库对数据变化的过程不关心 , 只关心最终结果 ; 如 商品的采购价格 , 经过多轮谈判 , 开始 100 元 , 经过反复谈判 , 先改成 99 元 , 又改成 97 元 , 最终是 95 元 , 这里只关心最终价格 , 变化的过程的数据 , 数据仓库是不关心的 ;


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
15天前
|
SQL 关系型数据库 MySQL
数据库导入SQL文件:全面解析与操作指南
在数据库管理中,将SQL文件导入数据库是一个常见且重要的操作。无论是迁移数据、恢复备份,还是测试和开发环境搭建,掌握如何正确导入SQL文件都至关重要。本文将详细介绍数据库导入SQL文件的全过程,包括准备工作、操作步骤以及常见问题解决方案,旨在为数据库管理员和开发者提供全面的操作指南。一、准备工作在导
50 0
|
17天前
|
SQL 关系型数据库 MySQL
|
5天前
|
SQL 存储 关系型数据库
数据储存数据库管理系统(DBMS)
【10月更文挑战第11天】
14 3
|
6天前
|
存储 关系型数据库 MySQL
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
PACS系统 中 dicom 文件在mysql 8.0 数据库中的 存储和读取(pydicom 库使用)
13 2
|
14天前
|
SQL 存储 关系型数据库
SQL文件导入MySQL数据库的详细指南
数据库中的数据转移是一项常规任务,无论是在数据迁移过程中,还是在数据备份、还原场景中,导入导出SQL文件显得尤为重要。特别是在使用MySQL数据库时,如何将SQL文件导入数据库是一项基本技能。本文将详细介绍如何将SQL文件导入MySQL数据库,并提供一个清晰、完整的步骤指南。这篇文章的内容字数大约在
31 1
|
23天前
|
Java 关系型数据库 MySQL
SpringBoot项目使用yml文件链接数据库异常
【10月更文挑战第4天】本文分析了Spring Boot应用在连接数据库时可能遇到的问题及其解决方案。主要从四个方面探讨:配置文件格式错误、依赖缺失或版本不兼容、数据库服务问题、配置属性未正确注入。针对这些问题,提供了详细的检查方法和调试技巧,如检查YAML格式、验证依赖版本、确认数据库服务状态及用户权限,并通过日志和断点调试定位问题。
|
10天前
|
Oracle 关系型数据库 数据库
oracle数据恢复—Oracle数据库文件损坏导致数据库打不开的数据恢复案例
打开oracle数据库时报错,报错信息:“system01.dbf需要更多的恢复来保持一致性,数据库无法打开”。急需恢复zxfg用户下的数据。 出现上述报错的原因有:控制文件损坏、数据文件损坏、数据文件与控制文件的SCN不一致等。数据恢复工程师对数据库文件做进一步检测分析后发现sysaux01.dbf文件有坏块。修复sysaux01.dbf文件,启动数据库依然有许多查询报错。export和data pump工具无法使用,查询告警日志并分析报错,确认发生上述错误的原因就是sysaux01.dbf文件损坏。由于该文件损坏,从数据库层面无法修复数据库。由于system和用户表空间的数据文件是正常的,
|
12天前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
87 3
|
13天前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1576 12
|
8天前
|
Python
log日志学习
【10月更文挑战第9天】 python处理log打印模块log的使用和介绍
15 0