0


大数据学习(六)ETL开发详解及实战

一、ETL含义

ETL,是英文Extract-Transform-Load的缩写,用来描述将数据从来源端经过抽取(extract)、转换(transform)、加载(load)至目的端的过程。

二、ETL工具

离线: sqoop、DataX、Kettle

实时:StreamSets

三、数据同步方式

数据同步方式分为:直连同步、数据文件同步、日志解析

1**. 直连同步:**是指通过定义好的规范接口API和基于动态链接库的方式直接连接业务库,比如ODBC/JDBC等规定了统一的标准接口,不同的数据库基于这套标准提供规范的驱动,从而支持完全相同的函数调用和SQL实现。

注:数据库直连抽取比较适用于小批量表的数据抽取,对于大批量的数据而言,性能会比较差。

2.数据文件同步:数据文件同步通过约定后的文件编码、大小、格式等,直接从源系统生成数据的文本文件,由专门的文件服务器,如FTP服务器传输到目标系统后,加载到目标数据库系统中。

3.日志解析同步:通过解析日志文件获取发生变更的数据。比如MySQL的Binlog日志,Oracle的归档日志文件。这种读操作是在操作系统层面完成的,不需要通过数据库,因此不会给源数据库带来性能上的瓶颈。

四、数据漂移

同一业务日期下的数据包含了不属于该业务日期的数据(上一天数据漂移到当天,或者当天数据漂移到下一天)或者缺失了该业务日期数据或该业务日期下的数据非最新,这时候我们可能需要通过冗余数据来解决增量同步下传的问题。


本文转载自: https://blog.csdn.net/weixin_44702289/article/details/126589126
版权归原作者 阿齐(努力打工版) 所有, 如有侵权,请联系我们删除。

“大数据学习(六)ETL开发详解及实战”的评论:

还没有评论