关于流/小批量数据的 ETL 工具的选择

2018-03-12 21:21:24 +08:00
 Philippa

最近再捣鼓 ETL 用于处理分析数据,使用语言是 Python。关于 Pipeline 搭建工具的选择,发现有非常多,先是手动实现了最原始的,加上更新和各种额外开销,速度比较糟糕,1000 万数据需要 1 天多。处理完进入 Elasticsearch 完成。但最近开始说要实时处理数据了,这意味着原有的批处理方法不大合适了。因此打算改一下逻辑用最古老的 Celery,写了一段跑起来,感觉效果还行,不过直觉有极大的提升空间。因此又弄了个 spark 的 standalone 集群,配置有点麻烦,还没测试,不过感觉假如数据量小预测优化空间不大,主要是每个小任务其实总耗时并不长。然后现在又看到 airflow,也想玩一下看什么效果。

不过玩之前还是来请教一下有经验人士比较好,有没有一个框架既没有 spark 那么重,又处理的实时流数据或小批量数据的?最好是配置简单,而且必须是 Python 有相关接口的,主要是考虑到团队协作因此不会考虑 Scala 等其他语言。来不及可以砍需求,但砍需求之前不知道各位有什么好建议。

PS: 找不到 ETL 节点,不知道放在貌似很多类似群体的 Elasticsearch 节点是否合适?

4656 次点击
所在节点    Elasticsearch
22 条回复
tonghuashuai
2018-03-14 15:04:11 +08:00
@Philippa 我用的时候 kettle 一直是免费开源的
Philippa
2018-03-15 03:44:17 +08:00
@est Thanks, 找到这个了 https://superuser.com/questions/1219609/why-is-the-alpine-docker-image-over-50-slower-than-the-ubuntu-image,这真是个大问题。PyPy 暂且先用着官方的,Python 的还是换成 ubuntu 的,自带的 Python 镜像在应用扩展时也不好用。

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

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

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

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

© 2021 V2EX