请教 Elasticsearch 使用什么 ETL 工具 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
yeyang5211
V2EX    Elasticsearch

请教 Elasticsearch 使用什么 ETL 工具

  •  
  •   yeyang5211 2022-06-30 14:32:54 +08:00 4253 次点击
    这是一个创建于 1277 天前的主题,其中的信息可能已经有所发展或是发生改变。
    由于我是半路接受 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 的原因是我们公司喜欢上云服务,减轻运维压力
    16 条回复    2022-07-01 16:57:29 +08:00
    ericguo
        1
    ericguo  
       2022-06-30 14:44:04 +08:00
    写代码,比如 python 脚本可以替代这里的绝大多数方案,并且技能更通用,更灵活。
    不高兴写代码 Kettle (我们在用)应该还是比阿里的靠谱点,如果用 Kettle 卡死,多半是内存不够,给够会好一点,和 ES 当然肯定也得分机器跑。
    yeyang5211
        2
    yeyang5211  
    OP
       2022-06-30 14:47:07 +08:00
    @ericguo 感谢回复, 如果行业解决方案是 Kettle 我也想学(私心想学更通用的行业方案)
    ericguo
        3
    ericguo  
       2022-06-30 14:51:41 +08:00
    @yeyang5211 更通用的是 python ,Pandas/Matplotlib 那套,而且写代码你适应了真心不高兴拖拉界面,因为拖拉界面每次都要重新搞,又看不到历史改动。
    Mithril
        4
    Mithril  
       2022-06-30 14:55:18 +08:00
    MongoDB 的结构如果和 ES 一样的话,直接同步更新进去就行
    自己写代码的话有 ChangeStream
    不想写代码也可以找个第三方组件自动更新进去
    更新是实时的,不需要定期跑任务
    EastLord
        5
    EastLord  
       2022-06-30 14:55:37 +08:00
    了解一下 debezium ,看看是否满足需求
    yeyang5211
        6
    yeyang5211  
    OP
       2022-06-30 14:56:51 +08:00
    @ericguo 好的, 我们公司的开发语言是 java(现在也是 java 来处理 etl),我个人理解 python 好像差不多. 麻烦能指点下 python 来处理数据合并有什么优势吗.
    yeyang5211
        7
    yeyang5211  
    OP
       2022-06-30 15:03:26 +08:00
    @Mithril
    @EastLord

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

    好像都是基于 debezium 的 看起来是可以满足需求的
    yeyang5211
        13
    yeyang5211  
    OP
       2022-06-30 17:33:14 +08:00
    @litchinn 刚刚去看了下 社区版的部署还要授权.. 服务还要被监控 功能倒是很齐全
    wdmcode
        14
    wdmcode  
       2022-06-30 18:09:28 +08:00
    Flink 可以写 Flink SQL 直接同步到 ES ,Flink CDC 可以捕获 MySQL 中的变更数据同步到 ES
    kkadmin
        15
    kkadmin  
       2022-07-01 09:48:08 +08:00
    elasticsearch-datatran ,不知道这个可不可以帮到你
    yeyang5211
        16
    yeyang5211  
    OP
       2022-07-01 16:57:29 +08:00
    @wdmcode 最后选定是 Flink 来做, 因为领导力推 让我去学..
    不过 es 我也是半路出家,带薪学习大数据相关技术也好. 以后还能互相成就.
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2582 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 22ms UTC 06:42 PVG 14:42 LAX 22:42 JFK 01:42
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86