Storm是Twitter开源的分布式实时大数据处理框架,最早开源于github,从0.9.1版本之后,归于Apache社区,被业界称为实时版Hadoop。随着越来越多的场景对Hadoop的MapReduce高延迟无法容忍,比如网站统计、推荐系统、预警系统、金融系统(高频交易、股票)等等,大数据实时处理解决方案(流计算)的应用日趋广泛,目前已是分布式技术领域最新爆发点,而Storm更是流计算技术中的佼佼者和主流。

实现一个实时计算系统

低延迟:都说了是实时计算系统了,延迟是一定要低的。

高性能:可以用几台普通的服务器搭建,结余成本。

分布式:系统都是为应用场景而生的,如果你的应用场景、你的数据和计算单机就能搞定,那么不用考虑这些复杂的问题了。我们所说的是单机搞不定的情况。

可扩展:伴随着业务的发展,我们的数据量、计算量可能会越来越大,所以希望这个系统是可扩展的。

容错:这是分布式系统中通用问题。一个节点挂了不能影响我的应用。storm 可以轻松做到在节点挂了的时候实现任务转移,并且在节点重启的时候,也就是重新投入生产环境时,自动平衡任务。

可靠性:可靠的消息处理。storm 保证没个消息至少能得到一次完整处理。任务失败时,它会负责从消息源重试消息。

快速:系统的设计保证了消息能得到快速的处理,使用 ZeroMQ 作为其底层消息队列。

本地模式:storm 有一个“本地模式” ,可以在处理过程中完全模拟 storm 集群,这让你可以快速进行开发和单元测试。

1.1 Storm 体系结构

  • Nimbus负责在集群里面发送代码,分配工作给机器,并且监控状态。全局只有一个。
  • Supervisor会监听分配给它那台机器的工作,根据需要启动/关闭工作进程Worker。每一个要运行Storm的机器上都要部署一个,并且,按照机器的配置设定上面分配的槽位数。
  • Zookeeper是Storm重点依赖的外部资源。Nimbus和Supervisor甚至实际运行的Worker都是把心跳保存在Zookeeper上的。Nimbus也是根据Zookeerper上的心跳和任务运行状况,进行调度和任务分配的。
  • Storm提交运行的程序称为Topology。
  • Topology处理的最小的消息单位是一个Tuple,也就是一个任意对象的数组。
  • Topology由Spout和Bolt构成。Spout是发出Tuple的结点。Bolt可以随意订阅某个Spout或者Bolt发出的Tuple。Spout和Bolt都统称为component。

1.Storm-简介相关推荐

  1. 流数据分析平台Storm简介

    流数据分析平台Storm简介 Storm是一个分布式的.容错的实时流计算系统,可以方便地在一个计算机集群中编写与扩展复杂的实时计算,Storm之于实时处理,就好比Hadoop之于批处理.Storm保证 ...

  2. storm简介(大数据技术)

    Apache Storm简介 由 chalex 创建,小路依依 最后一次修改 2016-12-12 什么是Apache Storm? Apache Storm是一个分布式实时大数据处理系统.Storm ...

  3. 流处理框架Storm简介

    转自:http://qing.weibo.com/2294942122/88ca09aa33002dsh.html EMC中国研究院 向东 提起Big Data,人们往往会提起大数据的4个V: Vol ...

  4. storm - 简介

    一 Storm简介                  Storm是Twitter开源的一个类似于Hadoop的实时数据处理框架,它原来是由BackType开发,后BackType被Twitter收购, ...

  5. 【Storm】Storm简介及Storm集群的安装部署

    1.Storm概述 (1)Storm简介 Storm最早是由BackType公司开发的实时处理系统,底层由Clojure实现.Clojure也是一门基于JVM的高级面向函数式的编程语言.2011年Tw ...

  6. 大数据组件之Storm简介

    简介 Storm是一个开源的分布式实时计算框架. 特点 支持水平横向扩展 高容错性,通过ack机制每个消息都不丢失(好奇该特性如何实现) 处理速度快,每个节点每秒处理超过一百万个元组(tuples) ...

  7. storm 简介及单机版安装指南

    2019独角兽企业重金招聘Python工程师标准>>> 转载:http://www.open-open.com/lib/view/open1374979211233.html 本文翻 ...

  8. storm简介、原理、概念

    1.什么是storm Storm是Twitter开源的分布式实时大数据处理框架,被业界称为实时版Hadoop.随着越来越多的场景对Hadoop的MapReduce高延迟无法容忍,比如网站统计.推荐系统 ...

  9. Storm原理与实践--大数据技术栈14

    回顾:大数据平台技术栈 (ps:可点击查看),今天就来说说其中的Storm! 来自:有米加瓦 一.Storm简介 1. 引例 在介绍Storm之前,我们先看一个日志统计的例子:假如我们想要根据用户的访 ...

  10. Storm On YARN

    1. 背景知识 (1)Storm:一个实时计算框架,与MapReduce离线计算框架互补,分别用于解决不同场景下的问题,Storm的官方网站是:http://storm-project.net/,如果 ...

最新文章

  1. (转)记忆杭州中的(非杭户籍人)
  2. Ubuntu中php.ini修改运行内存
  3. VS 2008 .NET Framework 3.5 Training Kit
  4. 怎么看另一个电脑端口是否通_谁一个人睡觉另一个看看夫妻的睡眠习惯
  5. linux系统下载r软件安装,在Linux系统安装R
  6. 爬虫5_python2_使用 Beautiful Soup 解析数据
  7. php连接Access实例
  8. 对FT证券系统故障的分析与思考
  9. 配置tomcat虚拟机
  10. Kisssoft软件在行星齿轮设计上的初试
  11. linux 最常用的指令- [readelf][objdump] 读取elf 文件系列
  12. 第九章 CSS-DOM
  13. 怎样理解OOP?OOP又是什么?
  14. Cadence软件盗版
  15. 与小卡特一起学python 豆瓣_《父与子的编程之旅:与小卡特一起学Python》
  16. 小样本学习记录————文本中特征空间的数据增强MEDA: Meta-Learning with Data Augmentation for Few-Shot Text Classification
  17. Elasticsearch X-Pack许可证过期解决办法
  18. 卸甲归田——回顾CSP2019
  19. 整体理解抽象、封装、继承、多态
  20. pikachu通关教程~~~~

热门文章

  1. Python为何会发展的如此之快?带你纵观全球Python趋势!
  2. matlab三维曲线的绘制
  3. luoguP3397 地毯
  4. (要更新)SRAM、DRAM、SDRAM、DDR异同
  5. 青云服务器换系统,青云科技发布新一代企业级云服务器e3:算力供给侧变革的强大助手...
  6. 16丨数据分析基础篇答疑
  7. 【GPS授时系列】一,写在正式开始前
  8. 国际移动用户识别码(IMSI)
  9. 项目管理的核心要素——时间、成本与质量
  10. word2vec训练中文模型—wiki百科中文库