热门
最新
红包
立Flag
投票
同城
我的
发布
@守护石AI:今天再测了一遍postgresql->MongoDB的cdc,流程是这样的:
(1)通过wal2json抓取postgresql的变化数据输出到文件。
(2)创建第一个storm拓扑,建立一个storm spout,动态监测这个文件的追加行,每一行代表了一个增删改查的变化行。
(3)建立一个storm bolt,目的是将spout采集到的json分离出table。
(4)直接使用storm-kafka模块,创建kafka bolt生产者,以table为key分区,写入kafka集群。
(5)再次启动一个新的storm拓扑,使用storm-kafka模块,创建kafka spout消费者,从kafka集群按table分区顺序拿到变化的json记录。
(6)建立一个文档bolt,拿到json后重建为自己需要的Mongo文档记录。
(7)使用storm-mongodb模块,建立mongo bolt,自定义json转换document的mapper,insert到Mongo数据库。
目前只是预研,流程跑通了,还没有美化代码,随后要跟着目标计划发布出来的。
话说作为老程序员,今天利用下午时间好好学习了一下Java8的lambda函数式,讲真,这玩意儿太绕了!越老的程序员越希望代码易读。
我建议应用lambda要越简单越好,越有共识越好(仅限一些常用库,例如collection框架),切勿过度自定义自家类,否则工程上维护和理解上都麻烦!
CSDN App 扫码分享
评论
点赞
打赏
- 复制链接
- 举报
