ELT 代表提取、加载和转换。这是一种数据流水线模型,首先从各种源系统提取数据。然后,原始数据不会在单独的暂存区中进行转换,而是直接加载到目标数据存储区(例如数据湖或云数据仓库)中。只有在数据加载到目标系统后,才会应用转换。
这种顺序使 ELT 与其前身 ETL(提取、转换、加载)区分开来,也是其在云原生架构中日益普及的一个关键原因。
ELT 流程利用了现代数据存储和处理平台的强大功能和可伸缩性。我们来逐一分析每个组成部分:
ELT 流程具有灵活性,因为转换在加载之前不是固定的。例如,数据科学家可以访问原始数据来探索意想不到的模式或进行临时分析,而商业智能团队可以构建精选的转换后数据集以用于报告。
ELT 方法具有多种潜在优势,尤其是在处理大量数据和多种数据类型的环境中:
虽然 ELT 有诸多优势,但它也存在一些组织应设法解决的考虑因素:
主动应对这些挑战有助于组织充分利用 ELT 范式的优势。
了解 ELT 与更传统的 ETL(提取、转换、加载)流程之间的区别,对于选择正确的数据集成策略至关重要。主要区别在于转换步骤发生的时间和执行位置。
功能 | ELT(提取、加载、转换) | ETL(提前、转换、加载) |
操作顺序 | 先提取,再加载,然后转换 | 先提取,再转换,然后加载 |
转换位置 | 在目标数据存储区(数据仓库/数据湖)内 | 在单独的暂存区或 ETL 工具环境中 |
数据已加载到目标 | 未经转换的原始数据 | 经过清理、结构化和转换的数据 |
处理能力 | 利用目标数据存储区的强大功能 | 依赖于专用 ETL 引擎或暂存服务器 |
数据注入速度 | 通常初始加载数据速度更快 | 由于需要预先进行转换处理,速度可能会较慢 |
灵活适应新用途 | 高,因为原始数据可用于重新转换 | 较低,因为转换是预定义的 |
架构处理 | 非常适合读时架构 | 通常依赖于写时架构 |
数据类型适用性 | 非常适合处理结构化、半结构化和非结构化数据 | 最适合结构化数据和部分半结构化数据 |
资源利用率 | 优化可伸缩云数据仓库的使用 | 可能需要单独的基础设施来进行转换 |
功能
ELT(提取、加载、转换)
ETL(提前、转换、加载)
操作顺序
先提取,再加载,然后转换
先提取,再转换,然后加载
转换位置
在目标数据存储区(数据仓库/数据湖)内
在单独的暂存区或 ETL 工具环境中
数据已加载到目标
未经转换的原始数据
经过清理、结构化和转换的数据
处理能力
利用目标数据存储区的强大功能
依赖于专用 ETL 引擎或暂存服务器
数据注入速度
通常初始加载数据速度更快
由于需要预先进行转换处理,速度可能会较慢
灵活适应新用途
高,因为原始数据可用于重新转换
较低,因为转换是预定义的
架构处理
非常适合读时架构
通常依赖于写时架构
数据类型适用性
非常适合处理结构化、半结构化和非结构化数据
最适合结构化数据和部分半结构化数据
资源利用率
优化可伸缩云数据仓库的使用
可能需要单独的基础设施来进行转换
ELT 是 Google Cloud 推荐的数据集成模式。ELT 涉及从源系统提取数据,将其加载到 BigQuery 中,然后将其转换为所需的格式以进行分析。ETL(提取、转换、加载)在将数据加载到数据仓库之前会对数据进行转换,而 ELT 方法与 ETL 不同,它让您可以充分利用 BigQuery 的强大功能来执行数据转换,并让任何 SQL 用户都能有效地开发数据集成流水线。
在 ELT 和 ETL 之间做出选择通常取决于特定的使用场景、现有基础设施、数据量以及组织的分析需求。在许多现代数据架构中,也可以采用混合方法,即对流水线的不同部分同时使用 ELT 和 ETL。
ELT 模式在各种现代数据场景中特别有效:
云数据仓储
ELT 非常适合 Google Cloud 的 BigQuery 等云数据平台,这些平台提供强大的处理能力和可伸缩性,可高效处理大型数据集的转换。
大数据分析
在处理海量、高速和多样化数据时,ELT 可以快速将数据注入数据湖或可扩容的存储空间。然后,可以使用分布式处理框架根据需要应用转换。
数据湖实现
数据湖旨在以原生格式存储大量原始数据。ELT 流程会加载这些原始数据,然后各种分析和处理引擎可以转换和使用这些数据。
实时或近乎实时的数据处理
对于需要快速访问最新数据的应用场景,ELT 可以加快加载阶段的速度。然后,可以对这些数据的子集执行转换,以用于特定的近乎实时信息中心或应用。
探索性数据分析和数据科学
数据科学家通常倾向于访问未经转换的原始数据,以便进行特征工程、构建机器学习模型和发掘分析洞见,而不会受到预定义转换的限制。ELT 让这些原始数据随时可用。
整合各种数据源
在集成来自多个结构各异的不同系统的数据时,ELT 会先将所有数据加载到中心位置,然后通过转换来协调数据,从而简化初始注入过程。
Google Cloud 提供了一整套服务,可帮助优化 ELT 架构,让组织能够构建强大且可伸缩的数据流水线。重点是利用 BigQuery 等服务的强大功能进行数据库内转换。
Google Cloud 服务在 ELT 模式中的典型应用如下:
Google Cloud 的基础设施支持 ELT 的核心原则,为原始数据提供可扩缩的存储空间、快速加载功能,并在 BigQuery 中提供强大的引擎来高效执行转换。这让数据工程师能够构建流水线,在其中快速存储数据,然后根据特定的分析要求对数据进行优化,所有这些操作都在托管式无服务器环境中完成。