storm深入研究】的更多相关文章

著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处.作者:He Ransom链接:http://www.zhihu.com/question/23441639/answer/28075683来源:知乎 .入门 安装storm集群,运行示例工程,明白什么是流处理,明白spout,bolt. 手动实现Storm客户端API,自己编写场景实现.2.上手 了解Storm的Bolt,spout运行过程,storm等进程启动过程 可以参照JStorm加深对Storm的理解. 了解Storm周…
概要:在使用storm分布式计算框架进行数据处理时,如何保证进入storm的消息的一定会被处理,且不会被重复处理.这个时候仅仅开启storm的ack机制并不能解决上述问题.那么该如何设计出一个好的方案来解决上述问题? 现有架构背景:本人所在项目组的实时系统负责为XXX的实时产生的交易记录进行处理,根据处理的结果向用户推送不同的信息.实时系统平时接入量每秒1000条,双十一的时候,最大几十万条. 原文和作者一起讨论:http://www.cnblogs.com/intsmaze/p/6219878…
序:在开发storm项目时,提交项目jar包当把依赖的第三方jar包都打进去提交storm集群启动时报了发现多个同名的文件错误由此开始了一段对jar包的深刻理解之路. java.lang.RuntimeException: Found multiple defaults.yaml resources. You're probably bundling the Storm jars with your topology jar. [jar:file:/home/hadoop/app/storm/l…
1.hadoop有master与slave,Storm与之对应的节点是什么? 2.Storm控制节点上面运行一个后台程序被称之为什么? 3.Supervisor的作用是什么? 4.Topology与Worker之间的关系是什么? 5.Nimbus和Supervisor之间的所有协调工作有master来完成,还是Zookeeper集群完成? 6.storm稳定的原因是什么? 7.如何运行Topology? strom jar all-your-code.jar backtype.storm.MyT…
正在学习storm的大兄弟们,我又来传道授业解惑了,是不是觉得自己会用ack了.好吧,那就让我开始啪啪打你们脸吧. 先说一下ACK机制: 为了保证数据能正确的被处理, 对于spout产生的每一个tuple, storm都会进行跟踪. 这里面涉及到ack/fail的处理,如果一个tuple处理成功是指这个Tuple以及这个Tuple产生的所有Tuple都被成功处理, 会调用spout的ack方法: 如果失败是指这个Tuple或这个Tuple产生的所有Tuple中的某一个tuple处理失败, 则会调…
1 需要安装的软件 要使用storm首先要安装以下工具:python.zookeeper.zeromq.jzmq.storm 1.1 安装zeromq wget http://download.zeromq.org/zeromq-2.2.0.tar.gz ##http://zeromq.org tar zxf zeromq-.tar.gz cd zeromq- ./configure make make install 1.2 安装jzmq wget https://github.com/zer…
本文翻译自<Getting Started With Storm>译者:吴京润    编辑:郭蕾 方腾飞 本书的译文仅限于学习和研究之用,没有原作者和译者的授权不能用于商业用途. 译者序 Storm入门终于翻译完了.首先感谢并发编程网同意本人在网站上首发本书译文,同时还要感谢并发编程网的各位大牛们的耐心帮助.这是本人翻译的第一本书,其中必有各种不足请诸位读者朋友不吝斧正. 译完此书之后,我已经忘记了是如何知道的Storm这个工具了.本人读过的所有技术书籍大部分都是在地铁上完成的,现在已经成了习…
TopologyMaster: 处理拓扑的一些基本信息和工作,比如更新心跳信息,拓扑指标信息更新等   NimbusServer: ** * * NimbusServer work flow: 1. cleanup interrupted topology delete /storm-local-dir/nimbus/topologyid/stormdis delete /storm-zk-root/storms/topologyid * * 2. set /storm-zk-root/stor…
Storm 实战:构建大数据实时计算(阿里巴巴集团技术丛书,大数据丛书.大型互联网公司大数据实时处理干货分享!来自淘宝一线技术团队的丰富实践,快速掌握Storm技术精髓!) 阿里巴巴集团数据平台事业部商家数据业务部 编著 ISBN 978-7-121-22649-6 2014年8月出版 定价:59.00元 184页 16开 编辑推荐 Storm以其简单.灵活.健壮而著称.随着大数据实时处理需求的强劲增长,Storm的出现填补了大数据处理生态系统的缺失,并被越来越多的公司所采用. <Storm实战…
一.前言 为了运行summingbird demo,笔者走了很多的弯路,并且在国内基本上是查阅不到任何的资料,耗时很久才搞定了demo的运行.真的是一把辛酸泪,有兴趣想要研究summingbird的园友且听笔者一一道来,大体可以将summingbird理解为Storm + Hadoop. 二.大数据处理快速预览 大数据时代的来临,将大数据处理分为了批量处理与实时处理两个方向,批量处理的优势在于容错性好,因为数据时先存在本地或者是分布式的进行存储,可以重复对数据进行处理,劣势在于速度慢,要等到数据…
[原]storm源码之storm代码结构[译]  说明:本文翻译自Storm在GitHub上的官方Wiki中提供的Storm代码结构描述一节Structure of the codebase,希望对正在基于Storm进行源码级学习和研究的朋友有所帮助. Storm的源码共分为三个不同的层次. 首先,Storm在设计之初就考虑到了兼容多语言开发.Nimbus是一个thrift服务,topologies被定义为Thrift结构体.Thrift的运用使得Storm可以被任意开发语言使用. 其次,Sto…
英文原文地址 中英文对照地址 History of Apache Storm and lessons learned --项目创建者 Nathan Marz Apache Storm 最近成为了ASF的顶级项目,这对于该项目和我个人而言是一个重大的里程碑.很难想像4年前Storm只是我脑海中的一个想法,但现在却成为了一个有着大社区支持并被无数企业使用的繁荣项目.在此我将在本文中回首Storm的成长历程及其经验教训. 我会根据我当初必须要克服的主要挑战来涵盖Storm历史的相关主题.本文前25%是…
阅读目录 Storm来源 初探 再探 构建第一个版本 被Twitter收购 开源的Storm 发布之后 Storm的技术演进 构建开发者社区版 离开Twitter 提交到Apache Apache孵化 结论 Apache Storm 最近成为了ASF的顶级项目,这对于该项目和我个人而言是一个重大的里程碑.很难想像4年前Storm只是我脑海中的一个想法,但现在却成为了一个有着大社区支持并被无数企业使用的繁荣项目.在此我将在本文中回首Storm的成长历程及其经验教训. 我会根据我当初必须要克服的主要…
说明:本文翻译自Storm在GitHub上的官方Wiki中提供的Storm代码结构描述一节Structure of the codebase,希望对正在基于Storm进行源码级学习和研究的朋友有所帮助. Storm的源码共分为三个不同的层次. 首先,Storm在设计之初就考虑到了兼容多语言开发.Nimbus是一个thrift服务,topologies被定义为Thrift结构体.Thrift的运用使得Storm可以被任意开发语言使用. 其次,Storm的所有接口都是Java语言来定义的.因此,尽管…
欢迎转载,转载请注明出处,徽沪一郎. 概要 storm是一个近似于实时的计算框架,甩开hadoop上的原生mapreduce计算框架不只一条街.如果能将storm引入到hadoop中,对存储于hdfs的数据进行分析必然极大的提高处理性能.storm-yarn就是这样一个项目,由yahoo实现,目前已经开源. 除了storm-yarn试图将storm整合进hadoop,以提升hadoop的分析处理能力的尝试之外,Hortonworks也高调宣布在2014年推出整合了storm的hadoop发行版.…
概要 storm cluster可以想像成为一个工厂,nimbus主要负责从外部接收订单和任务分配.除了从外部接单,nimbus还要将这些外部订单转换成为内部工作分配,这个时候nimbus充当了调度室的角色.supervisor作为中层干部,职责就是生产车间的主任,他的日常工作就是时刻等待着调度到给他下达新的工作.作为车间主任,supervisor领到的活是不用自己亲力亲为去作的,他手下有着一班的普通工人.supervisor对这些工人只会喊两句话,开工,收工.注意,讲收工的时候并不意味着wor…
接上一篇Kafka的安装与实验: http://www.cnblogs.com/charlesblc/p/6046023.html 还有再上一篇Flume的安装与实验: http://www.cnblogs.com/charlesblc/p/6046023.html Storm的安装可以参考这篇: http://shiyanjun.cn/archives/934.html 有1.0后的版本,和0.x的版本,最后为了稳妥,还是下载了0.10的版本. http://apache.fayea.com/…
4.1 简介 storm可以确保spout发送出来的每个消息都会被完整的处理.本章将会描述storm体系是如何达到这个目标的,并将会详述开发者应该如何使用storm的这些机制来实现数据的可靠处理. 4.2 理解消息被完整处理 一个消息(tuple)从spout发送出来,可能会导致成百上千的消息基于此消息被创建. 我们来思考一下流式的“单词统计”的例子: storm任务从数据源(Kestrel queue)每次读取一个完整的英文句子:将这个句子分解为独立的单词,最后,实时的输出每个单词以及它出现过…
1.1   实时流计算 互联网从诞生的第一时间起,对世界的最大的改变就是让信息能够实时交互,从而大大加速了各个环节的效率.正因为大家对信息实时响应.实时交互的需求,软件行业除了个人操作系统之外,数据库(更精确的说是关系型数据库)应该是软件行业发展最快.收益最为丰厚的产品了.记得十年前,很多银行别说实时转账,连实时查询都做不到,但是数据库和高速网络改变了这个情况. 随着互联网的更进一步发展,从Portal信息浏览型到Search信息搜索型到SNS关系交互传递型,以及电子商务.互联网旅游生活产品等将…
 storm出现的背景 互联网从诞生的第一时间起,对世界的最大改变就是让信息能够实时交互,从而大大加速了各个环节的效率.正因为大家有对信息实时响应.实时交互的需求,所以软件行业除了个人操作系统之外,数据库(更精确的说是关系型数据库)应该是发展最快.收益最为丰厚的产品了.记得十年前,很多银行别说实时转账,连实时查询都做不到,但是数据库和高速网络改变了这个情况. 随着互联网的更进一步发展,从 Portal 信息浏览型到 Search 信息搜索型到 SNS 关系交互传递型,以及电子商务.互联网旅游生活…
1.背景知识 在不修改Storm任何源代码的情况下,让Storm运行在YARN上,最简单的实现方法是将Storm的各个服务组件(包括Nimbus和Supervisor),作为单独的任务运行在YARN上,当前比较有名的“Storm On YARN”实现是由yahoo!开源的,它基本实现了上述描述的功能,下面具体进行说明:(1) YARN-Storm Client提供了一系列Shell命令供用户控制YARN上的Storm服务,比如构建一个Storm集群命令如下:storm-yarn launch <…
1.准备工作 2.一个Storm集群的基本组件 3.Topologies 4.Stream 5.数据模型(Data Model) 6.一个简单的Topology 7.流分组策略(Stream grouping) 8.使用别的语言来定义Bolt 9.可靠的消息处理 10.单机版安装指南 本文翻译自: https://github.com/nathanmarz/storm/wiki/Tutorial Storm是一个分布式的.高容错的实时计算系统.Storm对于实时计算的的意义相当于Hadoop对于…
最近的项目中使用到了Zookeeper.Kafka以及Storm.仔细研究了一下,觉得这几个开源项目对于搞分布式的人来说是非常有用的,所以想把自己的一点心得体会总结一下,希望能对大家有所帮助. 首先从Zookeeper开始.这一节主要是介绍一下Zookeeper的背景和架构 zookeeper是一个开源分布式的服务,它提供了分布式协作,分布式同步,配置管理等功能. 它实现的功能与google的chubby基本一致. Zookeeper的官方文档对它的设计实现有很详细的描述,下面我们来简单介绍一下…
storm源码之storm代码结构[译] 说明:本文翻译自Storm在GitHub上的官方Wiki中提供的Storm代码结构描述一节Structure of the codebase,希望对正在基于Storm进行源码级学习和研究的朋友有所帮助. Storm的源码共分为三个不同的层次. 首先,Storm在设计之初就考虑到了兼容多语言开发.Nimbus是一个thrift服务,topologies被定义为Thrift结构体.Thrift的运用使得Storm可以被任意开发语言使用. 其次,Storm的所…
1 概念 目前最新的0.8.0版本里面 worker -> 进程.一个worker只能执行同一个spout/bolt的task,一个worker里面可以有多个executor. executor -> 线程. 一个executor执行可以执行多个task. task -> storm进行任务分配的基本单位. 2  例子 storm实战入门一 本节探讨一下storm具体怎么使用,明白怎么在windows下开发storm程序. 功能描述:实时随机输出一字符串. 在开发前记得导入storm需要…
写在前面的话 本人长期关注数据挖掘与机器学习相关前沿研究.欢迎和我交流,私人微信:846731084 我自己测试了一下这个版本,总的来说更加稳定,新增的特性并没有一一测试,仅凭kafk-client来说,是达到了生产环境的使用. 使用阿里云服务器的话,使用清华的节点下载是巨快的.(http://mirrors.tuna.tsinghua.edu.cn/apache/storm/apache-storm-1.1.0/apache-storm-1.1.0.tar.gz) Storm 1.1.0 发布…
承接之前的博:亿级流量场景下,大型缓存架构设计实现 续写本博客: ****************** start: 接下来,我们是要讲解商品详情页缓存架构,缓存预热和解决方案,缓存预热可能导致整个系统崩溃的问题以及解决方案: 缓存--->热: 预热:热数据 解决方案中和架构设计中,会引入大数据的实时计算技术---> storm: 为什么引入这storm,必须是storm吗,我们后面面去讲解那个解决方案的时候再说: 为什么引入storm: 因为一些热点数据相关的一些实时处理方案,比如快速预热,…
问题导读:1.hadoop有master与slave,Storm与之对应的节点是什么?2.Storm控制节点上面运行一个后台程序被称之为什么?3.Supervisor的作用是什么?4.Topology与Worker之间的关系是什么?5.Nimbus和Supervisor之间的所有协调工作有master来完成,还是Zookeeper集群完成?6.storm稳定的原因是什么?7.如何运行Topology?strom jar all-your-code.jar backtype.storm.MyTop…
转自:https://www.cnblogs.com/reed/p/7730329.html 今天看到一篇讲得比较清晰的框架对比,这几个框架的选择对于初学分布式运算的人来说确实有点迷茫,相信看完这篇文章之后应该能有所收获. 简介 大数据是收集.整理.处理大容量数据集,并从中获得见解所需的非传统战略和技术的总称.虽然处理数据所需的计算能力或存储容量早已超过一台计算机的上限,但这种计算类型的普遍性.规模,以及价值在最近几年才经历了大规模扩展. 在之前的文章中,我们曾经介绍过有关大数据系统的常规概念.…
1.hadoop有master与slave,Storm与之对应的节点是什么? 2.Storm控制节点上面运行一个后台程序被称之为什么?3.Supervisor的作用是什么?4.Topology与Worker之间的关系是什么?5.Nimbus和Supervisor之间的所有协调工作有master来完成,还是Zookeeper集群完成?6.storm稳定的原因是什么?7.如何运行Topology?strom jar all-your-code.jar backtype.storm.MyTopolog…