首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >每用户流处理

每用户流处理
EN

Stack Overflow用户
提问于 2015-06-17 17:22:27
回答 3查看 232关注 0票数 1

我需要处理来自一组流的数据,独立于其他流对每个流应用相同的细化。

我已经见过像storm这样的框架,但它似乎只允许处理静态流(即来自twitter的tweet),而我需要单独处理来自每个用户的数据。

举个简单的例子,我的意思是,在一个系统中,每个用户都可以跟踪自己的gps位置,并实时查看平均速度、加速度、燃烧的卡路里等统计数据。当然,每个用户都有自己的流,系统应该单独处理每个用户的流,就好像每个用户都有自己的专用拓扑来处理他的数据一样。

有没有像storm,spark streaming或samza这样的框架来实现这一点?

如果支持python就更好了,因为我已经有很多代码想要重用了。

非常感谢您的帮助

EN

回答 3

Stack Overflow用户

发布于 2015-06-17 17:35:46

使用Storm,如果元组中有user-id,则可以使用字段分组连接模式对数据进行分组。这确保了数据是按user-id分区的,因此可以得到逻辑子流。您的代码只需要能够处理多个组/子流,因为单个bolt实例需要处理多个组。但是Storm肯定支持你的用例。它还可以运行Python代码。

票数 0
EN

Stack Overflow用户

发布于 2015-07-14 12:12:34

在Samza中,类似于Storm,人们将根据某个用户ID对单个流进行分区,这将保证同一处理器将看到某个特定用户的所有事件(以及分区函数散列分配给该处理器的其他用户ID)。然而,您的描述听起来更像是在客户端系统上运行的东西,而不是服务器端操作。

非JVM语言支持已经被proposed用于Samza,但是还没有实现。

票数 0
EN

Stack Overflow用户

发布于 2018-05-02 20:39:51

您可以使用WSO2 Stream Processor来实现这一点。您可以按用户名对输入流进行分区,并分别处理与每个用户相关的事件。处理逻辑必须用Siddhi QL编写,这是一种类似SQL的语言。

WSO2 SP也有一个python wrapper to,它将允许您执行管理任务,如提交、编辑作业。但是您不能使用python代码编写处理逻辑。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30887396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档