Kettle作为数据治理工具,总是会涉及到数据的搬迁,在原始数据过大、种类过多时写入肯定会出现一些错误(缺少必填项、数据格式错误、主键冲突等等),那么Kettle如何解决?其实Kettle与我们自己写程序的思维不会有本质性的差别,因此我们常见的处理方式基本上都可以得到解决。基本上我们常规的解决办法:阻断执行、忽略错误继续执行、记录错误数据。

1.阻断执行

Kettle的默认执行方式,不做任何异常处理即为阻断执行逻辑,不做太多赘述。

2.忽略错误继续执行

当遇到写入错误时忽略错误记录,这里就出现了一个隐含要求(Kettle本身为保证执行效率多为批量数据入库,为了发现执行错误的记录只能一条条的入库了):

1)取消勾选“使用批量插入” 

2)勾选“忽略插入错误”

3.记录错误数据补偿执行

  1. 右键输入表, 选择定义错误处理

  1. 编辑错误信息key值

  1. 保存错误信息

d. 增加错误信息表数据读取,自定义补偿逻辑

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐