kettle开发篇-合并记录

简介: kettle开发篇-合并记录

前言:


昨天我们讲了数据库相关操作,流查询,通过流查询我们进行等值查询,从而实现类似数据库内连接的效果,今天我们来讲一个类似的组件,叫合并记录,合并记录顾名思义就是将数据进行合并,具体来讲就是将两个不同来源的数据合并,这两个来源的数据分别为旧数据和新数据,该步骤将旧数据和新数据按照指定的关键字匹配、比较、合并。


一、合并记录


今天我们讲的连接是转换里面的第八个分类。连接是结果集通过关键字进行连接。

合并记录是用于将两个不同来源的数据合并,这两个来源的数据分别为旧数据和新数据,该步骤将旧数据和新数据按照指定的关键字匹配、比较、合并。需要设置的参数包括旧数据来源:旧数据来源的步骤、新数据来源:新数据来源的步骤。

其中根据字段数据的状态,分为四种数据状态,分别为“identical”-旧数据和新数据一样、“changed”-数据发生了变化、“new”-新数据中有而旧数据中没有的记录、“deleted”-旧数据中有而新数据中没有的记录。 关键字段:用于定位两个数据源中的同一条记录。 比较字段:对于两个数据源中的同一条记录中,指定需要比较的字段。合并后的数据将包括旧数据来源和新数据来源的所有数据,对于变化的数据将用新数据代替旧数据,同时在结果中用一个标示字段,来指定新旧数据的比较结果。 需要注意的是: 旧数据和新数据需要事先按照关键字段排序 旧数据和新数据需要有相同的字段名称

合并记录的组件主要包括四大类内容,新旧数据源、标志字段、关键字段、数据字段。


二、任务实操


我们根据需求从EXcel读取新数据和旧数据,合并数据,标记出new/delete/changged/identical,把数据保持到Excel.

最终我们的转换包括两个EXCEL输入即新旧数据源、合并记录和EXCEL输出。

在实操的时候会提示我们需要先将数据进行排序,这是因为在kettle里面都是数据流处理的方式,因此在合并记录前需要将数据进行排序再进行合并、比较。

运行转换后我们就可以知道哪条数据是被修改过的,哪条记录是被删除的等等,是不是特别有用


相关文章
|
6月前
|
SQL 数据库 开发工具
实时计算 Flink版产品使用合集之数据库中有新增索引,同步任务没有报错,索引的变动是否有影响
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6月前
|
数据库连接 数据库
kettle开发篇-流查询
kettle开发篇-流查询
160 0
|
6月前
kettle开发篇-空操作
kettle开发篇-空操作
117 0
|
6月前
|
Oracle 前端开发 关系型数据库
kettle开发篇-更新
kettle开发篇-更新
183 1
|
4月前
|
数据采集 分布式计算 DataWorks
DataWorks产品使用合集之运行MR任务读取源表数据并写入新表的过程,有哪些限制
DataWorks作为一站式的数据开发与治理平台,提供了从数据采集、清洗、开发、调度、服务化、质量监控到安全管理的全套解决方案,帮助企业构建高效、规范、安全的大数据处理体系。以下是对DataWorks产品使用合集的概述,涵盖数据处理的各个环节。
|
5月前
|
关系型数据库 MySQL API
实时计算 Flink版操作报错合集之同步MySQL数据到另一个MySQL数据库,第一次同步后源表数据发生变化时目标表没有相应更新,且Web UI中看不到运行的任务,该怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
189 0
|
6月前
|
SQL Oracle 关系型数据库
实时计算 Flink版产品使用合集之flinkcdc回撤流如果更新之前的数据,会把先前的数据删除,再插入更新的数据吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStreamAPI、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6月前
|
SQL Java 数据处理
实时计算 Flink版产品使用合集之在原先的5个表中增加1个表,并且希望在重新启动时能够保留之前的状态,应该选择怎么启动
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6月前
|
存储
kettle开发篇-列拆分为多行
kettle开发篇-列拆分为多行
265 0
|
6月前
|
数据库
kettle开发篇-分组
kettle开发篇-分组
152 0