ETL_数据抽取

1 数据源形式

        从操作型数据源获取数据.    

        (1) 结构化数据:可以采用直连数据库的方式进行抽取,一般采用JDBC.优点是数据抽取效率高,但会增加数据库负载,因此需要控制抽取时间,一般选择在凌晨进行结构化数据的抽取.也可以通过数据库日志方式进行抽取,这种方式对数据库产生的影响极小,但需要解析日志

        (2) 半结构化数据和非结构化数据:一般采用监听文件变动.优点是比较灵活,可以实时抽取变动的内容,但需要解决增量抽取和数据格式转换等问题.

2 抽取策略

2.1 全量抽取

        每次ETL操作均删除目标表数据,由ETL全新加载数据.用来抽取数据量很小并且易处理的数据,如维度表.

        特点:抽取规则简单,速度快.

2.2 增量抽取

2.2.1 通过增量标识

        抽取时利用属性列来判断哪些数据是增量数据,只抽取这些数据.常见的属性列有更新时间和自增序列.

        优点:ETL系统设计清晰,源数据抽取相对清楚简单,速度快.

        缺点:时戳维护需要由来源表系统完成,需要修改来源表的结构.工作量大,改动面大.

2.2.2 通过日志表

        在来源表系统中添加系统日志表,当业务数据发生变化时,更新维护日志表内容.当ETL加载时,通过读日志表数据决定抽取哪些数据及如何抽取.例如使用Mysql的binlog.

        优点:不需要修改来源表结构,源数据抽取清楚,速度较快.

        缺点:日志表维护需要由来源表系统完成,维护较为麻烦.

2.2.3 数据合并策略

        可根据主键值进行插入与更新的判定,或者根据时间节点分割数据.

3 抽取流程

       ①确定数据源:数据源的访问方式及抽取方法,数据源的形式等.

       ②建立逻辑映射:确定来源表结构与目标表结构的映射关系、数据转换规则.

       ③确定数据抽取策略

       ④抽取数据并核对,并评估性能.

ETL是英文Extract、Transform、Load的缩写,它是数据仓库建设中最基础的环节之一,主要用于数据抽取、清洗、转换和加载。ETL的实现可以将来自不同数据源的数据进行统一处理和分析。 实现数据抽取与转换的过程通常包括以下步骤: 1. 抽取数据:从不同的数据源中提取需要的数据,如关系型数据库、文件、Web服务、API等。 2. 清洗数据:对抽取数据进行清洗,如去除重复数据、空数据数据格式转换、数据合并等,以确保数据的准确性和完整性。 3. 转换数据:对清洗过的数据进行转换操作,如数据结构的转换、数据计算、数据聚合等。 这一步的目的是为了将不同数据源的数据统一到一个数据模式下,方便数据分析和处理。 4. 加载数据:将转换后的数据加载到数据仓库中,如数据集市、数据仓库等,以供后续的分析和应用。 ETL的实现需要依赖一些工具和技术,如数据仓库工具、ETL工具、ETL脚本、SQL等。目前比较流行的ETL工具有Informatica、IBM DataStage、Microsoft SQL Server Integration Services等。使用这些工具可以实现大规模数据ETL处理和管理,提高数据处理效率和数据质量。 ETL实现数据抽取与转换是数据仓库建设的重要一步,通过ETL的清洗和转换操作,可以将来自不同数据源的数据整合到一个数据模型下,提高数据的一致性和准确性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值