otter 扩展

参见otter官方的说明:数据处理自定义,比如Extract , Transform的数据处理. 目前Select/Load不支持数据自定义处理。

Extract模块:
1.EventProcessor : 自定义数据处理,可以改变一条变更数据的任意内容。
2.FileResolver : 解决数据和文件的关联关系。

Transform模块:这个模块的自定义目前没有看到对应的官方demo,源码叶没有关注到对应的实现,有待进一步了解。

自定义EventProcessor :
1.通过Otter Manager直接发布source文件代码,然后推送到node节点上即时生效。

2.可以将class文件放置到extend目录或者打成jar包,放置在node启动classpath中,也可以通过Otter Manager指定类名的方式进行加载
e41e47f59ae64cf29c4bb9a7cfba95db.png

/**
 * 业务自定义处理过程
 * 
 * @author jianghang 2012-6-25 下午02:26:36
 * @version 4.1.0
 */
public interface EventProcessor {
/**
 * 自定义处理单条EventData对象
 * 
 * @return {@link EventData} 返回值=null,需要忽略该条数据
 */
public EventData process(EventData eventData);

    
  

}

       通过实现EventProcessor 接口,完成自已逻辑处理,可以完成每一条数据的处理,不过此处自定义EventProcessor也存在一些坑,比如在执行ddl语句时,如果对应的Pipeline中配置了支持ddl同步,ddl语句在执行至自定义的EventProcessor时存在不可预见的异常,这块在实际处理的过程中可以关闭对ddl同步支持,或者忽略掉ddl异常。

官方demo参见:Otter扩展性 · alibaba/otter Wiki · GitHub

备注:本文大部分都参考了官方针对扩展性的说明,针对使用过程中出现的坑进行了补充说明。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值