文档章节

Storm 【最新版 0.9.3】-官方翻译 1: Fault-tolerance

止静
 止静
发布于 2014/10/31 09:23
字数 920
阅读 164
收藏 1

This page explains the design details of Storm that make it a fault-tolerant system.

在本页,我们将了解使Storm成为一个容错性系统的设计细节

What happens when a worker dies?

如果worker死掉以后会发生什么?


When a worker dies, the supervisor will restart it. If it continuously fails on startup and is unable 

每当一个Worker死掉了,那么supervisor将会重启它,如果是在启动的过程之中一直失败,那么它就会丢失掉

to heartbeat to Nimbus, Nimbus will reassign the worker to another machine.

河Numbus的连接,Nimbus将会重新分配一个Worker给其他的机器


What happens when a node dies?

  当一个节点挂掉的时候

The tasks assigned to that machine will time-out and Nimbus will reassign those tasks to other machines.

 一旦一个节点挂掉的时候,分配到这个机器之上的的task任务就会出现超时,并且Numbus会重新分配这些人物到其他的机器


What happens when Nimbus or Supervisor daemons die?

当Nimbus 或者Supervisor的后台线程会挂掉


Numbus和Supervisor的后台线程被设计于 fail-fast机制,以及无状态机制(实时上,我们的状态是保持在Zookeeper之中的),Numbus 和Supervisor的daemons 一定要运通过一定的工具,好比  daemontools 或则是 monit,于是,如果Nimbus 或则Supervisor daemons死掉了,那么就会像没发生一样的去重启。

The Nimbus and Supervisor daemons are designed to be fail-fast (process self-destructs whenever any unexpected situation is encountered) and stateless (all state is kept in Zookeeper or on disk). As described in Setting up a Storm cluster, the Nimbus and Supervisor daemons must be run under supervision using a tool like daemontools or monit. So if the Nimbus or Supervisor daemons die, they restart like nothing happened.


Most notably, no worker processes are affected by the death of Nimbus or the Supervisors. This is in contrast to Hadoop, where if the JobTracker dies, all the running jobs are lost.

更加显著的来说,通常而言,Worker的处理过程不会被Nimbus和Supervisor的死亡所影响。这一点和Hadoop系统是不一眼过得,要知道,一旦Hadoop之中的JobTracker死掉了,所有运行的作业就丢失。


Is Nimbus a single point of failure?


Nimbus是否也就是一个单带你的故障 

如果你的Numbus节点Los了,那么这Worker就会继续这些处理流程,更进一步来讲,Supervisor将继续的重启这些Workers

一旦Workers会死掉,然而,没有了Nimbus,一旦Worker工作之中有需要用到其他的计算硬件,Worker不能够被分配到其他机器。

If you lose the Nimbus node, the workers will still continue to function. Additionally, supervisors will continue to restart workers if they die. However, without Nimbus, workers won’t be reassigned to other machines when necessary (like if you lose a worker machine).


于是乎,真正的正确的答案是,Numbus本身是一系列的 SPOF(SPof 是我们的  single point of failure的缩写),实际上来讲,在Storm之中。这并不是一个相当的大的问题,在将来会有使Nimbus变得可用的可能。


So the answer is that Nimbus is “sort of” a SPOF. In practice, it’s not a big deal since nothing catastrophic happens when the Nimbus daemon dies. There are plans to make Nimbus highly available in the future.

How does Storm guarantee data processing?


Storm 对于消息的处理有保证性的机制,不管是在机器亦或者是消息丢失的情况之下。如果感兴趣的朋友,可以直接参考官方的文档,《Guaranteeing Message 》


Storm provides mechanisms to guarantee data processing even if nodes die or messages are lost. See Guaranteeing message processing for the details.




对于另外的机制,请参考本ID的另外一篇博文

 JDK【Java的一些特性】- 系列 1:  fail-fast机制    

 






© 著作权归作者所有

共有 人打赏支持
止静
粉丝 119
博文 134
码字总数 125762
作品 0
东城
技术主管
私信 提问
Apache Storm 0.9.3 发布,分布式实时计算系统

Apache Storm 0.9.3 发布,此版本现已提供下载。此版本总共包括 62 位独立贡献者,超过 100 处的改进和修复。 此版本主要改进了 Kafka 集成,添加了 HDFS 集成和 HBase 集成。更多内容请看发...

oschina
2014/11/26
2.6K
9
windows 安装 storm 及 eclipse 调试 TopN 实例

一:安装JDK 下载地址:地址一 地址二 配置Java环境变量 JAVAHOME、Path、CLASSPATH三个值分别为(按照自己安装状况设置,此处供参考): D:javajdk1.8 %JAVAHOME%/bin;%JAVAHOME%/jre/bin ....

大数据之路
2012/06/08
0
1
Storm入门 第三章 Storm安装部署步骤

本文以Twitter Storm官方Wiki为基础,详细描述如何快速搭建一个Storm集群,其中,项目实践中遇到的问题及经验总结,在相应章节以“注意事项”的形式给出。 3.1 Storm集群组件 Storm集群中包含...

坏坏一笑
2014/12/03
0
0
Apache Slider + Storm

Apache Slider + Storm 系统环境 安装如下组件,部署可用环境 JDK 1.7.0_79 Apache Zookeeper 3.4.* Apache Zookeeper Apache Hadoop 2.6.* Apache Hadoop Apache Storm 0.9.4 Apache Storm......

Yulong_
2016/09/21
0
0
Apache Storm 0.9.6/0.10.0 发布

Apache Storm 0.10.0 发布,此版本是个稳定版本,相比之前的 Beta 版本主要包括 bug 修复和改进: STORM-1108: Fix NPE in simulated time STORM-1106: Netty should not limit attempts to...

oschina
2015/11/06
4.7K
8

没有更多内容

加载失败,请刷新页面

加载更多

大数据教程(9.5)用MR实现sql中的jion逻辑

上一篇博客讲解了使用jar -jar的方式来运行提交MR程序,以及通过修改YarnRunner的源码来实现MR的windows开发环境提交到集群的方式。本篇博主将分享sql中常见的join操作。 一、需求 订单数据表...

em_aaron
9分钟前
0
0
十万个为什么之什么是resultful规范

起源 越来越多的人开始意识到,网站即软件,而且是一种新型的软件。这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点...

尾生
14分钟前
0
0
《告诉你真实的美国教育》的读后感3900字

《告诉你真实的美国教育》的读后感3900字: 文章的开篇分析了我们耳熟能详的关于美国教育的小故事,就是那个因为幼儿园的老师教了“0”这个字母,然后妈妈告老师剥夺了孩子的想象力,再然后幼...

原创小博客
22分钟前
0
0
Terraform配置文件(Terraform configuration)

Terraform配置文件 翻译自Terraform Configuration Terraform用文本文件来描述设备、设置变量。这些文件被称为Terraform配置文件,以.tf结尾。这一部分将讲述Terraform配置文件的加载与格式。...

buddie
38分钟前
1
0
exportfs命令, vsftp搭建ftp服务

exportfs命令 当修改/etc/exports文件后,更改的内容是不会立即生效的。如果重启nfs服务,会导致客户端重启期间的请求是挂起等待的,可以把客户端的挂载umount进行卸载后,再重启nfs服务,但...

野雪球
48分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部