跳转到

什么是 ETL?

ETL 代表提取、转换和加载,是组织将多个系统中的数据组合到单个数据库、数据存储空间、数据仓库或数据湖中的传统方法。ETL 可用于存储旧数据,或者(如现今更为常见的那样)汇总数据并分析以及制定业务决策。  

几十年来,组织一直都在使用 ETL。但新趋势是,数据源以及目标数据库现在都在向云端迁移。

此外,我们还看到了流式 ETL 流水线的出现,现在,流式 ETL 流水线与批处理流水线是统一的,即实时处理连续数据流的流水线与汇总批处理数据的流水线。一些企业通过结合批量回填或再处理流水线来运行连续的流处理流程。

了解支持 ETL 的 Google Cloud 服务组合,包括 Cloud Data FusionDataflowDataproc

ETL 的定义

ETL 描述的是一个端到端流程,在此流程中,公司获取所有数据(由世界上任何地方任何数量的团队管理的结构化和非结构化数据),然后对其进行处理,将其转换为对业务目的有用的数据。

当今的现代化 ETL 解决方案必须应对不断增长的数据量和速度。此外,能够从任何来源(无论是本地还是在云中)实时提取、丰富和管理事务,同时支持结构化和非结构化数据是现今企业 ETL 解决方案的基本要求。

基于云的 ETL 的工作原理

提取

提取是从一个或多个来源(在线、本地、旧版、SaaS 或其他)中检索数据的过程。检索或提取完成后,数据将被加载到暂存区中。

转换

转换包括获取数据、清理数据并将其转换为通用格式,以便将其存储在目标数据库、数据存储区、数据仓库或数据湖中。清理通常包括删除重复、不完整或明显有错误的记录。

加载

加载是将转换格式后的数据插入目标数据库、数据存储区、数据仓库或数据湖的过程。

ETL 使用场景

ETL 是将所有相关数据放在同一个地方以便分析,并使高管、经理和其他利益相关者能够根据数据做出明智的业务决策的一种重要方法。ETL 通常用于以下几个方面:

数据仓储

数据仓库是一个合并了各种来源的数据,以便出于业务目的对数据进行统一分析的数据库。ETL 通常用于将数据移至数据仓库。

机器学习和人工智能

机器学习 (ML) 是一种无需明确编排分析模型即可了解数据的方法。系统使用人工智能技术从数据中获取信息。ETL 可用于将数据移动至单个位置以实现机器学习。

营销数据集成

营销数据集成包括将所有营销数据(例如客户、社交网络和网络分析数据)移动到一个地方,以便您对其进行分析并制定未来计划。ETL 可用于收集和准备营销数据。

物联网数据集成

物联网是能够通过硬件中嵌入的传感器收集和传输数据的互连设备的集合。物联网设备包括工厂设备、网络服务器、智能手机或各种各样的其他机器,甚至包括可穿戴设备和植入设备。ETL 有助于将数据从多个物联网数据源移动到一个地方以便进行分析。

数据库复制

数据库复制从您的源数据库(例如 Oracle、Cloud SQL for MySQL、Microsoft SQL Server、Cloud SQL for PostgreSQL、MongoDB 或其他数据库)获取数据,并将其复制到您的云数据仓库中。当数据更新时,这可以是一次性操作,也可以持续执行,ETL 可用于复制数据。

云迁移

越来越多的公司将其数据和应用从本地迁移到云端以节省资金、提高应用的可伸缩性并保护其数据,ETL 通常用于运行这些迁移作业。