1.3 数据仓库架构

本文介绍了数据仓库的基本架构,包括RDS和TDS,以及自动化调度组件在ETL过程中的作用。讨论了主要的数据仓库架构类型,如数据集市、Inmon企业信息工厂、Kimball架构和混合型架构。此外,详细阐述了ETL的抽取、转换和装载阶段,特别是数据抽取的全量和增量策略、变化数据捕获方法以及数据装载的效率优化措施。最后,提到了常见的ETL工具,如OWB、ODI、SSIS等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.3.1 基本架构
RDS(RAW DATA STORES)是原始数据存储的意思
TDS(TRANSFORMED DATA STORES)意为转换后的数据存储。这是真正的数据仓库中的数据。
自动化调度组件的作用是自动定期重复执行ETL过程:
传统数据仓库一般利用操作系统自带的调度功能(如Linux的cron或Windows的计划任务)实现作业自动执行。
1.3.2 主要数据仓库架构
几种主要的架构方法:包括数据集市架构、Inmon企业信息工厂架构、Kimball数据仓库架构和混合型数据仓库架构。

操作数据存储又称为ODS,是Operational Data Store的简写,其定义是这样的:一个面向主题的、集成的、可变的、当前的细节数据集合,用于支持企业对于即时性的、操作性的、集成的全体信息的需求。
在一个数据仓库环境中,ODS具有如下几个作用:
(1)充当业务系统与数据仓库之间的过渡区。
(2)转移部分业务系统细节查询的功能
(3)完成数据仓库中不能完成的一些功能。

1.4 抽取-转换-装载
ETL:它是Extract、Transform、Load三个英文单词首字母的简写,中文意为抽取、转换、装载。
1.4.1 数据抽取
1.逻辑抽取

有两种逻辑抽取类型:全量抽取和增量抽取。
2.物理抽取
依赖于选择的逻辑抽取方法和能够对源系统所做的操作和所受的限制,存在两种物理数据抽取机制:直接从源系统联机抽取或者间接从一个脱机结构抽取数据。这个脱机结构有可能已经存在,也可能需要由抽取程序生成。
3.变化数据捕获
抽取处理需要重点考虑增量抽取,也被称为变化数据捕获,简称CDC。
常用的变化数据捕获方法有时间戳、快照、触发器和日志四种。
时间戳方法需要源系统有相应的数据列表示最后的数据变化。
快照方法可以使用数据库系统自带的机制实现,如Oracle的物化视图技术,也可以自己实现相关逻辑,但会比较复杂。
触发器是关系数据库系统具有的特性,源表上建立的触发器会在对该表执行insert、update、delete等语句时被触发,触发器中的逻辑用于捕获数据的变化。
日志可以使用应用日志或系统日志,这种方式对源系统不具有侵入性,但需要额外的日志解析工作。
1.4.2 数据转换
数据转换一个最重要的功能是清洗数据,目的是只有“合规”的数据才能进入目标数据仓库。
1.4.3 数据装载
ETL的最后步骤是把转换后的数据装载进目标数据仓库。这步操作需要重点考虑两个问题,一是数据装载的效率问题,二是一旦装载过程中途失败了,如何再次重复执行装载过程。
要提高装载的效率,加快装载速度,可以从以下几方面入手。
1.首先保证足够的系统资源。数据仓库存储的都是海量数据,所以要配置高性能的服务器,并且要独占资源,不要与别的系统共用。
2.在进行数据装载时,要禁用数据库约束(唯一性、非空性,检查约束等)和索引,当装载过程完全结束后,再启用这些约束,重建索引,这种方法会很大的提高装载速度。
3.在数据仓库环境中,一般不使用数据库来保证数据的参考完整性,即不使用数据库的外键约束,它应该由ETL工具或程序来维护。

数据装载过程可能由于多种原因而失败,比如装载过程中某些源表和目标表的结构不一致而导致失败,而这时已经有部分表装载成功了。在数据量很大的情况下,如何能在重新执行装载过程时只装载失败的部分是一个不小的挑战
简单的实现方式是先删除再插入,或者用replace into、merge into等类似功能的操作。

1.4.5 常见ETL工具
如Oracle的OWB和ODI、微软的SQL Server Integration Services、SAP的Data Integrator、IBM的InfoSphere DataStage、Informatica,Kettle等
在Kettle里,数据的单位是行,数据流就是数据行从一个步骤到另一个步骤的移动。
转换是以并行方式执行的,而作业则是以串行方式处理的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值