kettle开发篇-记录关联(笛卡尔积)

简介: kettle开发篇-记录关联(笛卡尔积)

前言:


昨天我们讲了数据流相关操作,合并记录,通过合并记录,我们就可以用来比对两份新旧数据的变化情,并标记出记录是“identical”-旧数据和新数据一样、“changed”-数据发生了变化、“new”-新数据中有而旧数据中没有的记录、“deleted”-旧数据中有而新数据中没有的记录。四种状态,这个组件帮助了我们有效的去处理新旧数据被修改了但因数据量大很难一下找到数据修改变化的场景。


一、记录关联(笛卡尔积)


记录关联就是对两个数据流进行笛卡尔积操作。如下图所示,我们有两组数据分别为aaa和bbb,笛卡尔积后我们生成了4种结果,即2*2=4条记录。

记录关联(笛卡尔积)需要注意的是我们需要指定一个主步骤。即参考基准的数据。


二、任务实操


我们有这么一个需求就是从Excel读取两位和三位数,完成两位和三位数的组合(笛卡尔积),把结果保存到Excel.

针对这个任务,我们最终的转换由两个Excel输入、记录关联、EXcel输出组成。通过对Excel输入和Excel输入2进行笛卡尔积组合,然后将计算结果输出至Excel输出。

因前面多次讲到了Excel输入和输出,在这边就不再重复阐述了,重点阐述下记录关联(笛卡尔输出)。记录关联的重点需要关注的是以哪个为主步骤,根据需求来看我们随便选择一个即可,然后我们运行转换即可看到我们笛卡尔积的运算结果了。

相关文章
queryDsl多表联合查询,任意查询联合字段
这是我的通用方法 package com.spark.bitrade.service.Base; import com.querydsl.core.Tuple; import com.
4256 0
|
6月前
|
SQL Oracle 关系型数据库
技术心得:数据库之笛卡尔积
技术心得:数据库之笛卡尔积
143 0
|
6月前
|
关系型数据库 MySQL 数据库
MySQL数据库——多表查询(1)-多表关系(一对多、多对对多、一对一)、多表查询概述(概念、笛卡尔积、分类)
MySQL数据库——多表查询(1)-多表关系(一对多、多对对多、一对一)、多表查询概述(概念、笛卡尔积、分类)
128 0
|
关系型数据库 MySQL Python
MySql查询出两张表中不同的数据
MySql查询出两张表中不同的数据
137 0
|
关系型数据库 PostgreSQL
postgresql中关联多表递归查询,并分组计数、求和
postgresql中关联多表递归查询,并分组计数、求和
|
SQL 分布式计算 BI
MaxCompute笛卡尔积逻辑的参数优化&复杂JOIN逻辑优化
这篇文章主要讲一个SQL优化反映的两个优化点。分别是: 一、笛卡尔积逻辑的参数优化。 二、一个复杂JOIN逻辑的优化思路。
2286 2
MaxCompute笛卡尔积逻辑的参数优化&复杂JOIN逻辑优化
|
SQL 存储 数据库
工作总结之因为笛卡尔积问题写SQL搞了半天[害](附笛卡尔积总结)
在关系数据库中,一个查询往往会涉及多个表,因为很少有数据库只有一个表,而如果大多查询只涉及到一个表的,那么那个表也往往低于第三范式,存在大量冗余和异常。
314 0
工作总结之因为笛卡尔积问题写SQL搞了半天[害](附笛卡尔积总结)
|
SQL 关系型数据库 MySQL
MySQL 多表分组后获取每一组的时间最大的那条记录
MySQL 多表分组后获取每一组的时间最大的那条记录
739 0
|
分布式计算 MaxCompute
如何绕过ODPS不支持的笛卡尔积的限制
`` select * from pn_tablename a join pn_tablename b; `` odps不支持无 on 的 join 会报 ODPS-0130252 Cartesian product is not allowed without map join 的错误 可以.
12473 0
|
关系型数据库 MySQL 数据库
MySQL数据库基础学习Day2:条件查询,排序、限制和去重操作,聚合查询,分组查询
MySQL数据库基础学习Day2:条件查询,排序、限制和去重操作,聚合查询,分组查询
132 0
MySQL数据库基础学习Day2:条件查询,排序、限制和去重操作,聚合查询,分组查询