我想使用Storm群集来实时监控用户活动。目前,用户活动日志保存在MySQL中。每分钟记录约100,000条记录,每天记录20,000,000条记录。我想每N分钟做一次topN查看的项目排名。如何为此设计壶嘴?我应该直接从喷口中的MySQL中查询还是使用像Kafka这样的消息队列?我想要实时性能,所以更喜欢第一种方式。但是我发现罕见的生产实施选择这种方式。为什么?风暴直接从MySQL发布?
2
A
回答
0
要直接从MySql Bin Logs发出元组,你可以在github上使用这个mysql spout(https://github.com/flipkart-incubator/storm-mysql)。 此喷口会将您的行更新作为流发送。该喷口使用辉煌的Open Replicator(https://github.com/whitesock/open-replicator)来缩小垃圾桶日志。
为您的使用情况,那么可能会写一个类似的螺栓: https://github.com/nathanmarz/storm-starter/blob/master/src/jvm/storm/starter/RollingTopWords.java
这种方法消除了消息队列和多个移动部件的需要。
声明:上面提到的Mysql Spout的作者。
相关问题
- 1. 风暴工人连接
- 2. GitHub发布:直接链接
- 3. 控制风暴中螺栓的分布?
- 4. 风暴发布下载网站不再可访问?
- 5. 风暴InvalidTopologyException
- 6. 好用风暴?
- 7. 用php/mysql发布Twitter风格趋势
- 8. 风暴hdfs连接器...试图使用风暴将数据写入hdfs
- 9. 直接从Android访问MySQL
- 10. 风暴DRPC客户
- 11. Apache风暴配置
- 12. 从风暴螺栓插入HBase
- 13. 任何MySQL连接并发风险?
- 14. 如何在风暴和节俭风暴中使用C++ spout/bolt
- 15. 的Apache 9.2风暴中缺少风暴起动
- 16. BaseStatefulBolt(风暴核心)vs StateFactory(风暴三叉戟)
- 17. 无法使用kafka风暴将拓扑提交给apache风暴
- 18. 无法为风暴启动器示例构建风暴
- 19. Apache风暴 - 带风暴集群的地图拓扑
- 20. LogHandler flush vs直接输出发布
- 21. SecurePay直接发布url重定向
- 22. Moneris直接发布安全吗?
- 23. SAML vs直接HTTP的好处发布
- 24. GAE发布后不会直接显示
- 25. 直接发布到twitter和youtube
- 26. posts.so如何直接发布到instagram API
- 27. Swift - 直接在Facebook上发布
- 28. 垂直分布而不是水平分布的暴露表单
- 29. 如何从表单发布数据并直接进入网格?
- 30. 从ReactNative(iOS)直接发布到AWS S3,带有签名请求
我会将它们写入卡夫卡,然后被暴风雨消耗掉,并在需要时用风暴螺栓写入MySQL。 – halfelf
如何加载mysql日志并将其保存到消息queeu,然后让暴风雨消耗来自该队列的消息并处理它们 – Vor