最近再捣鼓 ETL 用于处理分析数据,使用语言是 Python。关于 Pipeline 搭建工具的选择,发现有非常多,先是手动实现了最原始的,加上更新和各种额外开销,速度比较糟糕,1000 万数据需要 1 天多。处理完进入 Elasticsearch 完成。但最近开始说要实时处理数据了,这意味着原有的批处理方法不大合适了。因此打算改一下逻辑用最古老的 Celery,写了一段跑起来,感觉效果还行,不过直觉有极大的提升空间。因此又弄了个 spark 的 standalone 集群,配置有点麻烦,还没测试,不过感觉假如数据量小预测优化空间不大,主要是每个小任务其实总耗时并不长。然后现在又看到 airflow,也想玩一下看什么效果。
不过玩之前还是来请教一下有经验人士比较好,有没有一个框架既没有 spark 那么重,又处理的实时流数据或小批量数据的?最好是配置简单,而且必须是 Python 有相关接口的,主要是考虑到团队协作因此不会考虑 Scala 等其他语言。来不及可以砍需求,但砍需求之前不知道各位有什么好建议。
PS: 找不到 ETL 节点,不知道放在貌似很多类似群体的 Elasticsearch 节点是否合适?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.