请教 Elasticsearch 使用什么 ETL 工具

2022-06-30 14:32:54 +08:00
 yeyang5211
由于我是半路接受 es 的开发工作,对整体的技术工具方案都不是很了解.
接手半年发现自己一直在做 ETL 相关的工作.

现有的方案是 :
1.接受数据变更 MQ 消息
2.去 MySql 查询业务数据组装成 JSON
3.合并更新 MongoDB 中..
4.跑批更新到 ES 中(一个比较复杂的树形结构)



现有的问题 :
1.跑批任务经常卡死,不可靠
2.业务变动,总是需要我去开发 java 代码



我寻思 ES 这块应该有工具的,所以我去查了一下 Kettle 应该符合我的要求.

设想是跑批任务定时拉去 Mysql 拉去业务表的变动,然后通过一系列的转换流程补充成完整的业务 JSON(多张数据表组装成 JSON),在更新到 es 中(省了 MongoDB 这步)

询问了下我们公司的数仓同事,他们也在用阿里云的 DataWorks 工具.我研究了下发现这个工具只能做简单的同步数据映射,达到我设想的多张表聚合成一个 JSON 貌似要使用 EMR 引擎,我对这块特别不熟悉.完全没有头绪感觉 EMR(我理解为大数据相关的工具)学习成本太高了..





总结一下想了解的问题:
1.如果有其他方案,请不吝赐教
2.麻烦帮我权衡一下使用 Kettle 还是 DataWorks(二个都不会用,不是很想学大数据相关的技术 纯门外汉)
考虑 DataWorks 的原因是我们公司喜欢上云服务,减轻运维压力
3572 次点击
所在节点    Elasticsearch
16 条回复
ericguo
2022-06-30 14:44:04 +08:00
写代码,比如 python 脚本可以替代这里的绝大多数方案,并且技能更通用,更灵活。
不高兴写代码 Kettle (我们在用)应该还是比阿里的靠谱点,如果用 Kettle 卡死,多半是内存不够,给够会好一点,和 ES 当然肯定也得分机器跑。
yeyang5211
2022-06-30 14:47:07 +08:00
@ericguo 感谢回复, 如果行业解决方案是 Kettle 我也想学(私心想学更通用的行业方案)
ericguo
2022-06-30 14:51:41 +08:00
@yeyang5211 更通用的是 python ,Pandas/Matplotlib 那套,而且写代码你适应了真心不高兴拖拉界面,因为拖拉界面每次都要重新搞,又看不到历史改动。
Mithril
2022-06-30 14:55:18 +08:00
MongoDB 的结构如果和 ES 一样的话,直接同步更新进去就行
自己写代码的话有 ChangeStream
不想写代码也可以找个第三方组件自动更新进去
更新是实时的,不需要定期跑任务
EastLord
2022-06-30 14:55:37 +08:00
了解一下 debezium ,看看是否满足需求
yeyang5211
2022-06-30 14:56:51 +08:00
@ericguo 好的, 我们公司的开发语言是 java(现在也是 java 来处理 etl),我个人理解 python 好像差不多. 麻烦能指点下 python 来处理数据合并有什么优势吗.
yeyang5211
2022-06-30 15:03:26 +08:00
@Mithril
@EastLord

感谢回复,这就去了解下.
litchinn
2022-06-30 15:21:51 +08:00
想顺便问问 streamsets dc 咋样,我使用起来感觉还行呀,很少看到人用呢
ericguo
2022-06-30 15:23:23 +08:00
@yeyang5211 没啥优势,硬要说有的话,数据处理这块用 python 的多一点。
HanMeiM
2022-06-30 16:39:56 +08:00
我们是用的 flink
lixen9
2022-06-30 17:16:07 +08:00
kafka connect 应该也能满足
yeyang5211
2022-06-30 17:32:08 +08:00
@HanMeiM
@lixen9

好像都是基于 debezium 的 看起来是可以满足需求的
yeyang5211
2022-06-30 17:33:14 +08:00
@litchinn 刚刚去看了下 社区版的部署还要授权.. 服务还要被监控 功能倒是很齐全
wdmcode
2022-06-30 18:09:28 +08:00
Flink 可以写 Flink SQL 直接同步到 ES ,Flink CDC 可以捕获 MySQL 中的变更数据同步到 ES
kkadmin
2022-07-01 09:48:08 +08:00
elasticsearch-datatran ,不知道这个可不可以帮到你
yeyang5211
2022-07-01 16:57:29 +08:00
@wdmcode 最后选定是 Flink 来做, 因为领导力推 让我去学..
不过 es 我也是半路出家,带薪学习大数据相关技术也好. 以后还能互相成就.

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/863188

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX