大数据ETL简介

简介: 大数据ETL简介

1 数据抽取

ETL(Extract-Transform-Load)是将数据从来源端经过抽取(extract)、转换(transform)、加载

(load)⾄⽬的端的过程。从数据源抽取出所需要的原始数据,经过数据清洗,最终将清洗后的数据加

载到数据仓库中去。也称为数据仓库技术。

  1. 数据源通过采集的⽅式获取, 保存到数据仓库
  2. 通过数据清洗,处理完成落地到数据仓库
  3. 供业务使⽤

数据抽取是从数据源抽取需要的原始数据,抽取的⽅式多种多样,要根据数据源的特点来确定,通常有

如下⼏种数据抽取的⽅式:

1、从关系数据抽取数据

通常OLTP系统采⽤关系数据库存储业务操作数据,从关系数据库抽取操作型数据是最多⼀种数据抽取

⽅式。

数据从关系数据库抽取后通常会先以⽂件的⽅式存储到分布式⽂件系统中(例如HDFS),⽅便ETL程序

读取原始数据。也有的是将抽取后的数据直接存储到数据仓库中,采⽤第⼆种⽅法需要提前在数据仓库

创建与原始数据相同结构的数据仓库模型。

2、从⽇志⽂件抽取

OLTP系统通过⽇志系统将⽤⼾的操作⽇志、系统⽇志等存储在OLTP服务器上,由专⻔的采集程序从服

务器上采集⽇志⽂件信息。

3、从数据流接⼝抽取

OLTP系统提供对外输出数据的接⼝(⽐如telnet),采集系统与该接⼝对接,从数据流接⼝抽取需要的

数据。

2 数据转换数据转换也叫数据清洗转换,是将采集过来的原始数据(通常原始数据存在⼀定的脏数据)清洗(过

虑)掉不符合要求的脏数据,根据数据仓库的要求对数据格式进⾏转换,经过数据清洗转换后是符合数

据仓库要求的数据。

要清洗的脏数据的形式有:

1、错误的数据

存在数据内容错误的信息,⽐如学⽣选课信息中课程标识错误或选课⽇志⾮法等。

2、不完整的数据

是指信息不完整,⽐如学⽣选课信息中缺少学⽣或缺少课程的信息,这类信息是不符合学⽣选课数据模

型的要求。

3、重复数据

第三类数据是要根据具体的业务进⾏单独去重操作,⽐如:同⼀个课程学习会话中只允许有⼀条学习记

录,这⾥就要根据会话ID对数据进⾏去重操作。

数据转换的形式有:

1、数据格式转换

对数据的格式进⾏转换,通常转换后数据内容是不变的,⽐如:数据仓库要求的⽇期存储格式是

yyyymmdd,⽽采集过来的数据格式是yyyy-mm-dd,这⾥需要将yyyy-mm-dd的格式转换为

yyyymmdd。

2、数据内容转换

对数据内容进⾏转换,通常数据内容转换后是不会改变原始数据内容的意义的,⽐如:数据仓库要求存

储⽤⼾所在区域,这⾥就需要根据采集过来的⽤⼾IP地址从IP库中查找出⽤⼾的IP地址所对应的区域信

息,这⾥根据IP地址转换为区域就是数据内容的转换。


3 数据加载

数据加载就是清洗转换后的数据存储到数据仓库中,数据加载的⽅式包括:全量加载、增量加载。

全量加载:

全量加载相当于覆盖加载的⽅式,每个加载都会覆盖原始数据将数据全部加载的数据仓库,此类加载⽅

式通常⽤于维度数据。

增量加载:

增量加载按照⼀定的计划(通常是时间计划)逐步的将数据⼀批⼀批的将数据加载到数据仓库,此类加

载⽅式通常⽤于OLTP的业务操作数据。

相关实践学习
基于MaxCompute的热门话题分析
Apsara Clouder大数据专项技能认证配套课程:基于MaxCompute的热门话题分析
目录
相关文章
|
消息中间件 分布式计算 大数据
【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)
【大数据技术Hadoop+Spark】Flume、Kafka的简介及安装(图文解释 超详细)
1095 0
|
SQL NoSQL Java
Redis学习---大数据技术之Redis(NoSQL简介、Redis简介、Redis安装、五大数据类型、相关配置、持久化)
Redis学习---大数据技术之Redis(NoSQL简介、Redis简介、Redis安装、五大数据类型、相关配置、持久化)
|
8月前
|
数据采集 SQL 监控
ETL还是ELT,大数据处理怎么选更靠谱?
在数据处理中,ETL(抽取、转换、加载)与ELT(抽取、加载、转换)是两种核心流程。ETL强调在数据入库前完成清洗和转换,适合质量要求高、转换复杂的场景;而ELT则先将原始数据快速入库,再利用现代数仓的计算能力进行转换,更适合大数据和实时分析需求。选择哪种方式,需根据数据量、转换复杂度、系统资源及业务需求综合判断。
|
SQL 分布式计算 大数据
MaxCompute 聚簇优化推荐简介
在大数据计算中,Shuffle 是资源消耗最大的环节之一。MaxCompute 提供聚簇优化推荐功能,通过调整 Cluster 表结构,有效减少 Shuffle 量,显著提升作业性能并节省计算资源。实际案例显示,该功能可帮助用户每日节省数 PB 的 Shuffle 数据量及数千 CU 的计算成本。
289 0
|
存储 缓存 分布式计算
大数据-83 Spark 集群 RDD编程简介 RDD特点 Spark编程模型介绍
大数据-83 Spark 集群 RDD编程简介 RDD特点 Spark编程模型介绍
239 4
|
存储 大数据 虚拟化
【云计算与大数据技术】虚拟化简介及虚拟化的分类讲解(图文解释 超详细)
【云计算与大数据技术】虚拟化简介及虚拟化的分类讲解(图文解释 超详细)
1446 0
|
分布式计算 大数据 BI
ClickHouse与大数据生态整合:从ETL到BI报表
【10月更文挑战第27天】在这个数据驱动的时代,企业越来越依赖于数据来做出关键决策。而高效的数据处理和分析能力则是支撑这一需求的基础。作为一位数据工程师,我有幸参与到一个项目中,该项目旨在利用ClickHouse与Hadoop、Spark、Flink等大数据处理框架的整合,构建一个从数据提取(Extract)、转换(Transform)、加载(Load)到最终生成商业智能(BI)报表的全流程解决方案。以下是我在这个项目中的经验和思考。
677 1
|
存储 缓存 NoSQL
大数据-38 Redis 高并发下的分布式缓存 Redis简介 缓存场景 读写模式 旁路模式 穿透模式 缓存模式 基本概念等
大数据-38 Redis 高并发下的分布式缓存 Redis简介 缓存场景 读写模式 旁路模式 穿透模式 缓存模式 基本概念等
475 4
|
数据采集 监控 大数据
大数据中的ETL过程详解
【8月更文挑战第25天】ETL过程在大数据中扮演着至关重要的角色。通过合理设计和优化ETL过程,企业可以高效地整合和利用海量数据资源,为数据分析和决策提供坚实的基础。同时,随着技术的不断进步和发展,ETL过程也将不断演进和创新,以更好地满足企业的数据需求。
1225 3
|
存储 分布式计算 数据可视化
大数据概念与术语简介
大数据概念与术语简介
465 2