MyDataHarbor是一个在zookeeper上构建的分布式中间件,支持水平扩展,对节点进行分组,各分组下的机器形成一个子集群,任务在子集群隔离范围内进行负载均衡,防止单点故障。

高度合理的抽象、插件化的设计使得MyDataHarbor拥有很高扩展性,任何数据迁移的需求都可以通过开发插件完成。

MyDataHarbor设计之初就考虑到数据丢失问题,该框架可以保障数据至少到达下游一次,即下游返回成功才会提交,不过这样也会造成数据重复(对于数据同步场景可以接受)!

安装插件后中间件会自动识别这个插件的能力,并且生成用户UI友好的任务创建界面,不需要用户直接编写复杂的json配置。

MyDataHarbor支持从不同的插件中复用各种组件,形一个新的pipline管道,并且这些都是可以通过可视化的方式进行。

对接java的jmx,每个任务都有详细的监控,实时查看任务的运行状态。

为可以批量进行提交的写入源预留批量接口通道,有效提升数据迁移速度,摩托变汽车。

对于DataSource无法多线程并发拉取的情况下(如jdbc游标取数据),内部引入forkjoin并发处理模型开启多线程处理,并且灵活的事务控制,让速度飞快的同时保证数据迁移的稳定、不丢失,汽车变高铁。