ETL增量抽取模式实践与调优

2023-09-18 18:55:28

在ETL(Extract, Transform, Load)流程中,增量抽取是一种重要的数据提取方式,允许从源系统中仅提取发生变化的数据,以提高处理效率和减少资源消耗。增量抽取模式有多种实现方式,包括时间戳增量、增量标记和增量查询。本文以ETLCloud为例,对这三种增量抽取模式进行深入研究,探讨它们的实践应用、调优技巧和优缺点,旨在帮助企业更好地理解和应用增量抽取模式。

一、时间戳增量模式

时间戳增量模式基于数据表中的时间戳列,它通过记录上次抽取的时间戳来判断哪些数据是新增或更新的。时间戳增量模式的优点在于实现简单、容易理解,且适用于任何时间戳变动较频繁的数据表。在ETLCloud中,用户可以通过配置时间戳字段和抽取频率来实现时间戳增量抽取。然而,时间戳增量模式也存在一些挑战,如对源数据表的要求较高、时间戳的准确性和数据的一致性等问题。为了优化时间戳增量模式,可以采用合适的时间戳粒度、增量抽取频率以及数据变动的监测策略。

ETLCloud的增量数据提取

配置好流程,先进行一次全量同步。

全量同步完成后根据流程最后运行成功时间戳在库表输入节点中作为sql判断条件,然后将流程设置成定时调度,即可完成按照定时调度策略的模式定时调度。

若时间格式不匹配可以在规则中使用时间格式化规则或者自定义规则

二、增量标记模式

增量标记模式通过给源数据表增加一个标记列,标记哪些数据是新增或更新的。这个标记可以是布尔值、状态码或其他标识符。增量标记模式的优点在于灵活性和适用性强,可以适应各种不同的数据表结构。在ETLCloud中,用户可以通过配置标记字段和抽取逻辑来实现增量标记抽取。但增量标记模式也需要注意标记字段的更新策略、标记逻辑的准确性和性能消耗等问题。为了优化增量标记模式,可以考虑使用增量标记字段的索引和合理设置标记逻辑。

ETLCloud使用字段值标注组件实现增量标记模式同步到SQLite数据库

三、增量查询模式

增量查询模式是一种基于数据变化查询的增量抽取方式,它通过比较源和目标系统数据表之间的差异,只查询变化的数据。在ETLCloud中,用户可以通过配置增量查询条件和查询语句来实现增量查询抽取。增量查询模式的优点是能够准确捕捉变化的数据,避免全表扫描,提高了抽取的效率。但增量查询模式也存在一些挑战,如查询条件的设计、数据变化导致的性能影响和数据不一致问题。为了优化增量查询模式,可以合理选择查询方式、优化查询语句和维护源和目标数据库的一致性。

1、离线模式下的增量查询模式

2、使用CDC实现实时的增量查询模式

ETLCloud工具使用CDC实时数据集成抽取模式监听MySQL数据库的数据变化,并且输出到其他数据库表

(1)、新建一个MySQL监听器

(2)、配置MySQL监听器配置

(3)、接收端配置

(4)、启动监听器

(5)、不同接收端配置又不同的监听方式

3、直接传输到目标表模式

直接传输模式会在启动监听后抓取数据库中的日志,只要有数据的更新、插入、删除等操作,都会自动同步到目标表在源数据表中插入一条新数据

数据预览

在平台监控中心查看监控的实时数据情况

传输到Kafka,需要在数据源中创建kafka数据源


创建生产者和消费者


监听器配置


启动监听后新增一条数据

查看kafka消费者

数据库监听的到数据直接传输给ETL的流程


将数据库中监听的数据传输给流程使用

总结:

本文以ETLCloud为例,深入研究了增量抽取模式中的时间戳增量、增量标记和增量查询三种实践方式。

时间戳增量模式适用于时间戳变动频繁的数据表,通过记录上次抽取时间戳判断新增或更新数据,具有简单易实现的优点,但要求时间戳准确性和数据一致性。

增量标记模式通过添加标记列标记新增或更新数据,灵活性强,适用于不同数据表结构,但需要考虑标记字段更新策略和准确性。

增量查询模式通过比较源和目标数据表差异进行抽取,避免全表扫描提高效率,但需要合理设计查询条件和处理数据变化的一致性问题。

在使用这些增量抽取模式时,可以根据具体业务场景和数据特点选择合适的模式,并结合适当的调优技巧以提高抽取效率和准确性。

ETLCloud作为一款领先的数据抽取平台,提供了全面的增量抽取功能,企业可以充分利用其功能以实现高效的数据抽取和数据处理,为业务决策提供准确和实时的数据支持。通过理解和应用增量抽取模式,企业可以节省资源、提高数据处理效率,并更好地满足日益增长的数据管理需求。

更多推荐

【视觉SLAM入门】8. 回环检测,词袋模型,字典,感知,召回,机器学习

"见人细过掩匿盖覆”1.意义2.做法2.1词袋模型和字典2.1.2感知偏差和感知变异2.1.2词袋2.1.3字典2.2匹配(相似度)计算3.提升前言:前端提取数据,后端优化数据,但误差会累计,需要回环检测构建全局一致的地图;1.意义通俗的讲,机器人两次经过同一个场景,为了检测是同一个场景,这就是回环检测。它可以用来构建

金融时间序列预测方法合集:CNN、LSTM、随机森林、ARMA预测股票价格(适用于时序问题)、相似度计算、各类评判指标绘图(数学建模科研适用)

项目设计集合(人工智能方向):助力新人快速实战掌握技能、自主完成项目设计升级,提升自身的硬实力(不仅限NLP、知识图谱、计算机视觉等领域):汇总有意义的项目设计集合,助力新人快速实战掌握技能,助力用户更好利用CSDN平台,自主完成项目设计升级,提升自身的硬实力。专栏订阅:项目大全提升自身的硬实力[专栏详细介绍:项目设计

『吴秋霖赠书活动 | 第二期』《ChatGPT原理与实战》

文章目录1.写在前面2.Tansformer架构模型3.ChatGPT原理4.提示学习与大模型能力的涌现4.1提示学习4.2上下文学习4.3思维链5.行业参考与建议5.1拥抱变化5.2定位清晰5.3合规可控5.4经验沉淀千模大战正酣,吃透ChatGPT是制胜关键!声明:赠书活动是博主与出版社达成合作,只属于粉丝的专属福

【Azure】微软 Azure 基础解析(九)Azure 标识、身份管理、Azure AD 的功能与用途

本系列博文还在更新中,收录在专栏:「Azure探秘:构建云计算世界」专栏中。本系列文章列表如下:【Azure】微软Azure基础解析(三)云计算运营中的CapEx与OpEx,如何区分CapEx与OpEx【Azure】微软Azure基础解析(四)Azure核心结构组件之数据中心、区域与区域对、可用区和地理区域【Azure

可编程交易区块为DeFi机器人提供强大动力

对于选择基金投资的人来说,一个基本指导原则就是寻找那些管理费最低的基金。资本应该是在运转,而不是用于支付费用。同样,MystenLab的Capy交易机器人利用可编程交易区块(ProgrammableTransactionBlocks,PTBs)将资本集中用于交易,而不是gas费,并且能够执行复杂的输入策略。Mysten

从人工测绘到无人机航测:探索测绘技术的巨大变革

在测绘领域,随着科技的不断进步,测绘技术也在不断演进。人工测绘、传统航测以及如今的无人机航测,每一次进步都为我们提供了更加精确和高效的地图数据。本文将带你深入探索这些技术的演变及其应用。一、人工测绘的时代早期的地图制作依赖于人工测绘,测量员们耗费大量时间和精力进行地面观测和数据记录。虽然人工测绘的精度一直被认为是比较可

【深度学习】Pytorch 系列教程(十三):PyTorch数据结构:5、数据加载器(DataLoader)

目录一、前言二、实验环境三、PyTorch数据结构0、分类1、张量(Tensor)2、张量操作(TensorOperations)3、变量(Variable)4、数据集(Dataset)5、数据加载器(DataLoader)一、前言ChatGPT:PyTorch是一个开源的机器学习框架,广泛应用于深度学习领域。它提供了

什么是无人机全自动飞行系统?概念、构成、作用深度解析

无人机的工业化应用深入催生出新的痛点,无人机应用飞手培养难、成本高、技术参差不齐,以及应急响应和采集作业价值等没有得到充分释放,由此无人机自动飞行系统、无人机自动机场横空出世,因其无人化、自动化、无人机值守的应用特性,让工业无人机更紧密与行业结合并快速应用。从自动机场到全自动飞行系统在此前我们详细介绍过自动机场的定义和

Vulnhub实战-prime1

前言VulnHub是一个面向信息安全爱好者和专业人士的虚拟机(VM)漏洞测试平台。它提供了一系列特制的漏洞测试虚拟机镜像,供用户通过攻击和漏洞利用的练习来提升自己的安全技能。本次,我们本次测试的是prime1。一、主机发现和端口扫描查看Vmware中靶机的MAC地址,方便与之后nmap扫描出来的主机的MAC地址进行对比

如何把利用paddlepaddle导出的json文件转化为yolo或者voc文件

目录1.修改源码,让模型能够生成出对于单个图像的标注。2.把数据转为yolo格式3.把yolo格式转化为xml格式这两天想偷懒,想让模型先在数据上标一遍,然后我再做修正,主要是图个省事。由于我们主要是利用paddle,模型也是基于paddle推理的,因此即便我对paddle有一万个吐槽但也不得不用它。但在利用paddl

怎么为Web服务器配置虚拟主机?【步骤演示】

在安装了Web服务器Apache后,为了更好地使用Apache,还需要学习如何对Apache进行配置。在项目开发中,经常需要配置虚拟主机和访问权限,下面对Web服务器的配置进行详细讲解。配置虚拟主机在默认情况下,Apache只有Chwebapache2.4hndoes这一个站点目录,而在学习的过程中,可能需要用到多个站

热文推荐