ETL Best Practices

Etl. 最佳实践提取,变换和加载(ETL)进程是每个组织中的核心’S数据管理策略。每个步骤在ETL过程中–从各种来源获取数据,重新扮演它,应用业务规则,加载到适当的目的地,并验证结果–是保持正确数据流动的机械中的必要齿轮。建立一套ETL最佳实践将使这些流程更加强大和一致。

在10年以上的过程中我’我花了移动和转换数据,我’找到了一般的ETL最佳实践的分数,适合大多数负载方案。以下这些最佳实践将导致负载过程具有以下特征:

  • 可靠的
  • 有弹性的
  • 可重复使用的
  • 可维护
  • 表现良好
  • 安全的

我肉体的大多数例子都显示使用 SQL Server. Integration Services。但是,下面的设计模式适用于使用大多数ETL工具在任何架构上运行的进程。所以你是谁’使用SSIS,Informatica, 罢伦,良好的老式T-SQL,或其他一些工具,这些etl最佳实践模式仍然适用。

I’M注意不要将这些最佳实践指定为硬状态。即使对于似乎对进程的基本的概念(如记录),肯定会有边缘案例,以否定对其中一个或多个的边缘情况。但是,对于大多数ETL流程,下面详述的最佳实践应被视为架构的核心。

在I.下面’ve列出了大多数ETL实施的关键的一些必需品。在未来几周和几个月,我’LL详细介绍了这些中的每一个。

Etl. 最佳实践

什么是ETL? 对于那些新的ETL,这个简短的帖子是最佳实践之旅的第一个停止。

什么,为什么,何时,以及如何增量负载。通过仅装载新的或更改,加速您的加载过程并提高他们的准确性。

记录:正确的日志记录策略是任何ETL架构成功的关键。在这篇文章中,我在日志记录ETL操作中分享一些基本概念。

审计。没有错误的负载不一定是成功的负载。精心设计的过程不仅会检查错误,还可以支持行计数,财务金额和其他指标的审计。

数据谱系。了解来自加载时的数据以及转换的数据如何对下游数据的完整性以及将其移动的过程是必不可少的。

Etl. 模块化。在大多数开发领域中创建可重用的代码结构很重要,甚至在ETL过程中更为重要。 ETL模块化有助于避免一遍又一遍地编写相同的困难代码,并降低维护ETL架构所需的总努力。

Etl Atomicity.。每个ETL过程有多大?在这篇文章中,我讨论了妥善调整ETL逻辑的优点。

误差处理。事情出错时会发生什么?这篇帖子审查了预防和管理ETL流程中错误的设计模式。

管理坏数据。当发现可疑数据时,需要是用于清理或以其他方式管理不合格的数据的系统。在此帖子中,我共享一些用于处理坏数据的设计模式。

从我的ETL中获取您的电子邮件。每项工作都有一个适当的工具。直接在ETL进程中嵌入电子邮件通知增加了不必要的复杂性和潜在的故障点。

使用ETL分期表。通常,使用临时分期表可以提高性能并降低ETL过程的复杂性。

保护您的数据准备区域。不应通过数据消费者访问当前正在处理的数据的分期或登陆区域。否则,您最终可能会满足不良数据,相互冲突的分析或潜在的安全风险。