Stom概念

标签: stom 概念 | 发表时间:2014-06-25 00:45 | 作者:elf8848
出处:http://www.iteye.com

实时计算系统

S4 storm puma

 

自己实现一个实时计算系统要考虑哪些问题

1.低延迟、高性能、分布式(单机已无法满足要求)、可扩展、容错

2.容易在上面开发应用程序,消息不丢失败、消息严格有序

 

Storm优势

1.简单的编程模型 类似于MapReduce的Spout/Bolt

2.是一个服务框架,支持热部署,及时上线下线App

3.可以使用多种编程语言(Clojure,java,Ruby,Python)

4.容错性,Storm会管理工作进程与节点的故障

5.水平扩展,计算是在多个线程、进程、服务器间进行的

6.可靠的消息处理

7.快速  (ZeroMQ作为底层消息队列)

8.本地模式

 

Storm架构

Nimbus 主节点,分配代码、布置任务、故障检测

Supervisor 工作节点,监听工作,开始与停止属于自己管理的worker进程

Worker 进行具体处理组件逻辑的进程

Task 在worker中每一个Spout/Bolt的线程称为task.

Zookeeper  Nimbus与Supervisor的调度

 

Storm基本概念

Topology 拓卜,一个job

Spout 在一个topology中产生源数据流的组件

Bolt 在一个topology中接受数据然后执行处理的组件。可以做业务逻辑。

Tuple 一次消息传递的基本单元

Stream 源源不断传递的tuple组成了stream

 

Storm使用场景

1.流聚合,把多个数据流聚合成一个数据流(基于一些共同的tuple字段)

2.批处理,把一组tuple一起处理,而不是一个个单独处理

3.BasicBolt

4.内存缓存+Fields grouping组合

5.计算top N

 

Storm的分组机制

Storm Grouping定义了一个流在Bolt任务间该如何被切分。提供了6种:

1.随机分组 Shuffle grouping

2.字段分组 Fields grouping

3.全部分组 (慎用)

4.全局分组 (解决top N)

5.无分组      (等效于随机分组)

6.直接分组

 

还可以实现CustomStreamGrouping接口来定制自己需要的分组



已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [stom 概念] 推荐:

Stom概念

- - 开源软件 - ITeye博客
自己实现一个实时计算系统要考虑哪些问题. 1.低延迟、高性能、分布式(单机已无法满足要求)、可扩展、容错. 2.容易在上面开发应用程序,消息不丢失败、消息严格有序. 1.简单的编程模型 类似于MapReduce的Spout/Bolt. 2.是一个服务框架,支持热部署,及时上线下线App. 3.可以使用多种编程语言(Clojure,java,Ruby,Python).

raid概念

- - CSDN博客系统运维推荐文章
有时候对raid有点含糊不清,特别从网上找了一些资料总结一下. RAID通过在多个磁盘上同时存储和读取数据来大幅提高 存储系统的数据 吞吐量(Throughput). 在RAID中,可以让很多磁盘 驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,所以使用RAID可以达到单个磁盘驱动器几倍、几十倍甚至上百倍的速率.

集群概念

- - 开源软件 - ITeye博客
        集群是一组协同工作的服务实体,用以提供比单一服务实体更具扩展性与可用性的服务平台. 在客户端看来,一个集群就象是一个服务实体,但 事实上集群由一组服务实体组成.         与单一服务实体相比较,集群提供了以下两个关键特性:.        1.可扩展性--集群的性能不限于单一的服务实体,新的服 务实体可以动态地加入到集群,从而增强集群的性能.

IOS基本概念

- - CSDN博客推荐文章
1)  Objective C的文件扩展名:. 头文件包含类,类型,函数和常数的声明. 这是典型的源代码文件扩展名,可以包含Objective-C和C代码. 带有这种扩展名的源代码文件,除了可以包含Objective-C和C代码以外还可以包含C++代码. 仅在你的Objective-C代码中确实需要使用C++类或者特性的时候才用这种扩展名.

ComSec概念概述

- - luo's Blog
这学期选修了bintou老师的ComSec计算机安全课,上课期间觉得自己学的马马虎虎的,学习了一些计算机安全中的密码学算法和安全概念,但对这些概念都不是特别清晰,期末复习的过程中,对其中的一些算法和概念更理解了一些,趁着刚考完还没忘记,总结一波挂在博客,不当之处,欢迎指正. 公钥密码学也称为 非对称密码学,与传统的对称密码学区别在于,加密和解密使用 不同的密钥,也就是所说的 key,其中公开出来的密钥是 公钥,另一个是私钥,由持有者 严格保密.

Metro UI 平板概念图

- 冉波 - 爱范儿 · Beats of Bits
在 《从应用启动器的设计来谈谈 Metro UI 的不足》 中,我曾抱怨过 Metro UI ,主要是针对它的主屏幕,因为在手机那样的小屏幕上,主屏似乎更适合摆放图标,而不是动态格窗. 但是如果我们将 Metro UI 放到平板上,情况就会完全不同. iOS 在 iPhone 上表现虽然很好,但是将同样的 UI 放到 iPad 上,总感觉不够大气.

[v]鳞片概念车[6p]

- 蟹蟹 - 煎蛋
设计师Da Feng 设计出了这辆很像变形金刚的概念车,名为Flake. Da Feng 希望这辆的外壳,为许多块碳纤维鳞片组成. 鳞片可以在车内操控,让它根据不同的风流形成不同的形状,减小阻力,随时保持最快的形态. 甚至可以像猫生气那样,“鳞片”竖起. 另一个亮点是拥有“12条的轮子”,每条腿可以延伸或者缩小来适应不同的地形.

Metro UI 平板概念图

- 可乐加糖 - 互联网的那点事...
在 《从应用启动器的设计来谈谈 Metro UI 的不足》 中,我曾抱怨过 Metro UI ,主要是针对它的主屏幕,因为在手机那样的小屏幕上,主屏似乎更适合摆放图标,而不是动态格窗. 但是如果我们将 Metro UI 放到平板上,情况就会完全不同. iOS 在 iPhone 上表现虽然很好,但是将同样的 UI 放到 iPad 上,总感觉不够大气.

数据仓库概念

- - 互联网 - ITeye博客
数据仓库:是一个数据库环境,它提供用户用于决策支持的当前和历史数据,这些数据在传统的数据库中不方便得到. 特点:面向主题,集成的,相对稳定的,反应历史变化的. 组成:数据仓库的数据库,数据抽取工具,元数据,访问工具,数据集市,数据仓库管理,信息发布系统. 数据挖掘:就是从大量数据中获取有效的,新颖的,潜在有用的,最终可理解的模式的过程.

NOSQL 相关概念理论

- - SQL - 编程语言 - ITeye博客
本文介绍一下NoSQL相关的知识. 书籍推荐 <> 英文名 <> 作者 Martin Fowler.    第一眼看到NoSQL时把它理解为No SQL,这让我着实高兴了一阵子. 因为我对SQL没啥兴趣,尤其遇到写Function、Procedure、Trigger时更是烦恼.