网站内容建设运维服务器,深圳论坛网站设计哪家公司好,最有性价比的网站建设,营销型网站建设技术指标ETL 和 ELT 之间的主要区别在于数据转换发生的时间和地点 — 这些变化可能看起来很小#xff0c;但会产生很大的影响#xff01;
ETL 和 ELT 是数据团队引入、转换并最终向利益干系人公开数据的两种主要方式。它们是与现代云数据仓库和 ETL 工具的开发并行发展的流程。
在任…ETL 和 ELT 之间的主要区别在于数据转换发生的时间和地点 — 这些变化可能看起来很小但会产生很大的影响
ETL 和 ELT 是数据团队引入、转换并最终向利益干系人公开数据的两种主要方式。它们是与现代云数据仓库和 ETL 工具的开发并行发展的流程。
在任一过程中ETL/ELT 中的字母代表
E提取当原始数据从不同的数据源中提取时。这些数据源通常包括后端数据库、营销和电子邮件 CRM、广告平台等。L加载当数据加载到中央数据仓库时。T转换当原始数据被建模为统一、有意义和标准化的格式时。
这两个过程的分歧在于转换层的时间和位置。简而言之在 ETL 过程中原始数据的转换发生在数据仓库之前。在 ELT 流程中原始数据已丢弃后数据仓库中会发生转换;在这种方法中原始数据和转换后的数据都位于数据仓库中。
这不仅仅是语义转换发生的时间和地点的顺序在数据团队如何存储、治理、标准化、建模和测试数据方面起着至关重要的作用。使用此页面了解这两个过程的不同之处、每个选项的优点和缺点以及哪种方法最适合您和您的团队。
ETL 与 ELT高级概述
ETL 和 ELT 之间的主要区别在于转换的时间和位置它是在数据加载到数据仓库之前还是在存储之后发生。这种转换顺序对以下方面具有相当大的影响
实施管道所需的技术技能支持每个选项所需的产品数量和复杂性技能团队雇用的数据团队本身的结构以及数据堆栈的准备性和灵活性。
在我们深入了解这些差异的细节之前让我们清楚地定义什么是 ETL 和 ELT以及为什么 ELT 已成为分析行业的最新现象。
什么是 ETL ETL 或“提取、转换、加载”是首先从数据源中提取数据对其进行转换然后将其加载到目标数据仓库的过程。在 ETL 工作流中许多有意义的数据转换都发生在下游商业智能 BI 平台的此主要管道之外。
在许多方面ETL 工作流可以重命名为 ETLT 工作流因为相当一部分有意义的数据转换发生在数据管道之外。相同的转换可能发生在 ETL 和 ELT 工作流中主要区别在于何时在主 ETL 工作流内部或外部以及转换数据的位置ETL 平台/BI 工具/数据仓库。
什么是 ELT 提取、加载、转换 ELT 是首先从不同数据源提取数据然后将其加载到目标数据仓库中最后转换数据的过程。
ELT 已成为如何在现代数据仓库中管理信息流的范例。这代表了以前处理数据的方式的根本转变当时ETL是大多数公司实施的数据工作流。
从 ETL 过渡到 ELT 意味着您不再需要在将数据初始加载到数据仓库期间捕获转换。相反您可以加载所有数据然后在其上构建转换。数据团队报告说与传统的 ETL 工作流相比ELT 工作流有几个优点我们将在下面的部分中介绍这些优势。
ETL 和 ELT 之间的核心区别和相似之处
您可以阅读交替使用 ETL 和 ELT 的其他文章或技术文档。在纸面上唯一的区别是 T 和 L 出现的顺序。然而这种简单的字母切换会彻底改变数据在企业系统中存在和流动的方式。
在这两个过程中来自不同数据源的数据以类似的方式提取。但是在 ELT 工作流中发生转换之前数据将直接加载到目标仓库中。现在原始数据和转换后的数据都可以存在于数据仓库中。在 ELT 工作流中数据从业者在有机会探索和分析原始数据后可以灵活地对数据进行建模。ETL 工作流可能更具限制性因为转换在提取后立即发生。
下面我们分解了两者之间的其他一些主要区别
英语电子离所需的编程技能通常几乎不需要代码即可将数据提取并加载到数据仓库中。SQL 是转换背后的主要力量。通常需要自定义脚本或相当大的数据工程提升以便在加载之前提取和转换数据。PythonScala和SQL通常用于转换数据本身。关注点分离提取层、加载层和转换层可以由不同的产品显式分离出来。ETL 过程通常封装在一个产品中。变换的分布由于转换是最后发生的因此建模过程具有更大的灵活性。首先担心将数据放在一个地方然后您有时间探索数据以了解转换数据的最佳方式。由于转换发生在将数据加载到目标位置之前因此团队必须先进行彻底的工作然后才能确保正确转换数据。大量转换通常发生在 BI 层的下游。数据团队角色ELT 工作流使了解 SQL 的数据团队成员能够创建自己的提取和加载管道及转换ETL 工作流通常需要具有更高技术技能的团队来创建和维护管道
ELT 如何发展现代分析空间
为什么近年来ELT的采用增长如此之快几个原因
大量廉价的云存储和现代数据仓库。Redshift 和 Snowflake 等现代数据仓库的创建使得各种规模的团队都可以以更有效的成本存储和扩展他们的数据。这是 ELT 工作流程的巨大推动因素。开发低代码或无代码数据提取器和加载器。Fivetran 和 Stitch 等需要很少技术专业知识的产品可以从许多数据源中提取数据并将其加载到许多不同的数据仓库中这有助于降低进入 ELT 工作流程的门槛。数据团队现在可以减轻提取数据和创建复杂转换所需的一些数据工程负担。一个真正的基于代码、版本控制的转换层带有 dbt 的开发。在开发dbt之前没有单一的转换层产品。dbt 帮助数据分析师将软件工程最佳实践版本控制、CI/CD 和测试应用于数据转换最终允许任何了解 SQL 的人参与 ELT 过程。近年来ELT层和技术之间的兼容性不断提高。随着提取、加载和转换层的扩展这些层与云存储紧密集成ELT 工作流从未如此易于访问。例如Fivetran 创建和维护 dbt 包以帮助为它们连接到的数据源编写 dbt 转换。
那么什么是适合您的正确选择
您已经阅读了本文反思了当前数据堆栈的胜利和挣扎并最终提出了一个黄金问题哪个流程最适合您、您的数据团队和您的业务
下面我们分解了您在考虑如何通过数据增强团队和业务能力时应采取的关键考虑因素以及 ELT/ELT 流程如何影响该方法。
以下内容对您有多重要
控制数据转换的版本将原始数据和建模数据存储在统一位置自动测试和记录数据使参与数据管道工作的人员民主化 - 您是否希望将数据分析师纳入数据转换的行列并消除数据工程师对复杂数据管道的责任核心业务指标的治理和标准化
如果这些事情对你以及你的数据、团队和业务的健康至关重要请考虑更多地了解 dbt鼓励数据从业者体现软件工程最佳实践的工具如何改变现代分析空间。