Storm学习笔记一
基本概念:
Topology(计算拓补): 一个实时计算应用程序的逻辑在storm里面被封装到topology对象里面,一个storm的topoloy会一直运行,直到显式的杀死它。
Streams(消息流):消息流是storm里面的最关键的抽象对象。一个消息流是一个没有边界的tuple序列, 而这些tuples会被以一种分布式的方式并行地创建和处理.
Stream groupings (消息分发策略)
- Shuffle Grouping: 随机分组
- Fields Grouping:按字段分组
- All Grouping: 广播发送
- Global Grouping: 全局分组
- Non Grouping: 不分组
消息源(Spouts):消息源Spouts是storm里面一个topology里面的消息生产者。一般来说消息源会从一个外部源读取数据并且向topology里面发出消息: tuple,消息源Spouts可以是可靠的也可以是不可靠的
消息处理者(Bolts):所有的消息处理逻辑被封装在bolts里面。 Bolts可以做很多事情: 过滤, 聚合, 查询数据库等等。
运行方式:
Storm UI:自带监控的界面,可以查看集群中运行的任务和各线程的执行情况。
Storm可以用来做什么?
- 实时运维:监控、日志
- 实时分析:热点数据、用户推荐、销售数据
- 业务流程改造:替代事件方式的订单流程、商品流程
- 业务指标:用户转化率、订单履约率、页面点击、商品缺货率统计以及实时分析
–