- 1、本文档共44页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
storm自学文档
Storm
Storm
SSttoorrmm基础知识
Storm基础知识1
一、概述2
1、Storm特点2
二、Storm基本概念5
1、Topologies8
2、Streams9
3、Spouts10
4、Bolts11
5、Stream groupings12
6、Reliability14
7、Tasks14
8、Workers15
9、Configuration15
三、构建Topology16
1、实现的目标:16
2、设计Topology结构:16
3、设计数据流16
4、代码实现:17
5、运行Topology18
6、Config配置20
7、 一个有分支的topology示例20
四、安装部署24
1、搭建Zookeeper集群24
2、安装Storm依赖库24
3、下载并解压Storm发布版本27
4、修改storm.yaml配置文件27
5、启动Storm各个后台进程29
6、向集群提交任务30
五、 消息的可靠处理31
1、简介31
2、理解消息被完整处理31
3、消息的生命周期32
4、可靠相关的API35
5、storm可靠性的背后39
6、选择合适的可靠性级别41
7、集群的各级容错42
一、概述
一、概述
一一、、概概述述
Storm是一个开源的分布式实时计算系统,可以简单、可靠的处
理大量的数据流。Storm有很多使用场景:如实时分析,在线机器学
习,持续计算,分布式RPC,ETL等等。Storm支持水平扩展,具有
高容错性,保证每个消息都会得到处理,而且处理速度很快(在一个
小集群中,每个结点每秒可以处理数以百万计的消息)。Storm的部
署和运维都很便捷,而且更为重要的是可以使用任意编程语言来开发
应用。
1 Storm
1 Storm
11、SSttoorrmm特点
1、编程模型简单
1、编程模型简单
11、、编编程程模模型型简简单单
在大数据处理方面相信大家对hadoop已经耳熟能详,基于Google
Map/Reduce来实现的Hadoop为开发者提供了map、reduce原语,使
并行批处理程序变得非常地简单和优美。同样,Storm也为大数据的
实时计算提供了一些简单优美的原语,这大大降低了开发并行实时处
理的任务的复杂性,帮助你快速、高效的开发应用。
2、可扩展
2、可扩展
22、、可可扩扩展展
在Storm集群中真正运行topology的主要有三个实体:工作进程
(workers)、线程(executor)和任务(task)。Storm集群中的每台机
器上都可以运行多个工作进程,每个工作进程又可创建多个线程,每
个线程可以执行多个任务,任务是真正进行数据处理的实体,我们开
发的spout、bolt就是作为一个或者多个任务的方式执行的。
因此,计算任务在多个线程、进程和服务器之间并行进行,支持
灵活的水平扩展。
3、高可靠性
3、高可靠性
33、、高高可可靠靠性性
Storm可以保证spout发出的每条消息都能被“完全处理”,这也
是直接区别于其他实时系统的地方,如S4。
请注意,spout发出的消息后续可能会触发产生成千上万条消息,
可以形象的理解为一棵消息树,其中spout发出的消息为树根,Storm
会跟踪这棵消息树的处理情况,只有当这棵消息树中的所有消息都被
处理了,Storm才会认为spout发出的这个消息已经被“完全处理”。
如果这棵消息树中的任何一个消息处理失败了,或者整棵消息树在限
定的时间内没有“完全处理”,那么spout发出的消息就会重发。
考虑到尽可能减少对内存的消耗,Storm并不会跟踪消息树中的
每个消息,而是采用了一些特殊的策略,它把消息树当作一个整体来
跟踪,对消息树中所有消息的唯一
文档评论(0)