数据仓库,扫描量

有五种通用技术用于限制数据的扫描量,正如图3 - 4所示。第一种技术是扫描那些被打上时戳的数据。当一个应用对记录的最近一次变化或更改打上时戳时,数据仓库扫描就能够很有效地进行,因为日期不相符的数据就接触不到了。然而,目前的数据被打上时戳的很少。

数据仓库抽取中限制数据扫描量的第二种技术是扫描增量文件。增量文件由应用程序生成,仅仅记录应用中所发生的改变。有了增量文件,扫描的过程就会变得高效,因为不在候选扫描集中的数据永远不会涉及到。但是,许多应用程序并没有创建增量文件。

第三种技术是扫描审计文件或日志文件。审计文件或日志文件记录的内容,本质上同增量文件一样。不过,这里还是有一些重要的区别。由于恢复过程需要日志文件,所以各种操作都要保护日志文件。把日志文件用于其他目的,对计算机的操作也无大碍。利用日志文件的另一个困难是它内部格式是针对系统的用途而构造的,而不是针对应用程序的。这就需要一种技术手段作为日志文件内容的接口。日志文件的另一个缺点是其中所包含的内容超出了据仓库开发人员所需要的。审计文件有许多与日志文件相同的缺点。

当数据仓库抽取数据时,控制扫描数据量的第四种技术是修改应用程序代码。这并不常用,因为很多应用程序的代码陈旧而且不易修改。

最后一个选择(很多情况下,是一个可怕的选择,其目的是使人们相信一定有更好的办法)是将一个"前"映象文件和一个"后"映象文件进行比较。使用这种方法,一开始抽取就对数据库进行快照( s n a p s h o t )。进行另一个抽取时,就进行另一个快照。这两个快照逐次比较,以确定哪个活动发生了。这种方法很麻烦、复杂,还需要各种各样的资源。这只不过是最后的手段。但是,集成和性能并不是仅有的两个使得简单的抽取过程无法用于构造数据仓库的主要问题。

第三个主要困难是时基变化,如图3 - 5所示。现存的操作型数据通常是当值数据。当前值数据在被访问的时刻其精度是有效的,而且是可更新的。但是数据仓库中的数据是不能更新的。这些数据必须附有时间元素。当数据从操作型系统传送到数据仓库时,必需在数据中进行较大范围的改变。

当数据从现存操作型环境传送到数据仓库时,要考虑的另一个问题是需要对数据的量进行管理。数据要浓缩,否则数据仓库的数据量很快就会失控。在数据抽取一开始就要进行数据浓缩。图3 - 6表示数据仓库数据浓缩的一个简单形式。

相关推荐
IT_Beijing_BIT1 小时前
tensorflow 图像分类 之四
人工智能·分类·tensorflow
卡奥斯开源社区官方2 小时前
NVIDIA Blackwell架构深度解析:2080亿晶体管如何重构AI算力规则?
人工智能·重构·架构
百锦再2 小时前
第11章 泛型、trait与生命周期
android·网络·人工智能·python·golang·rust·go
黄雪超3 小时前
从流批一体到湖仓一体架构演进的思考
大数据·架构·数据湖
数新网络5 小时前
The Life of a Read/Write Query for Apache Iceberg Tables
人工智能·apache·知识图谱
小坏讲微服务5 小时前
Spring Boot整合Redis注解,实战Redis注解使用
spring boot·redis·分布式·后端·spring cloud·微服务·mybatis
Yangy_Jiaojiao6 小时前
开源视觉-语言-动作(VLA)机器人项目全景图(截至 2025 年)
人工智能·机器人
gorgeous(๑>؂<๑)6 小时前
【ICLR26匿名投稿】OneTrackerV2:统一多模态目标跟踪的“通才”模型
人工智能·机器学习·计算机视觉·目标跟踪
坠星不坠6 小时前
pycharm如何导入ai大语言模型的api-key
人工智能·语言模型·自然语言处理
周杰伦_Jay6 小时前
【智能体(Agent)技术深度解析】从架构到实现细节,核心是实现“感知环境→处理信息→决策行动→影响环境”的闭环
人工智能·机器学习·微服务·架构·golang·数据挖掘