写点什么

Apache Storm 1.0 发布,带来性能提升和许多新特性

  • 2016-04-17
  • 本文字数:968 字

    阅读完需:约 3 分钟

1.0 版本是 Apache Storm 发展过程中一座重要的里程牌,负责 Apache Storm 项目的 Apache 软件基金会副总裁 P. Taylor Goetz 这样写道。该版本包含许多新特性和改进。尤其是,Goetz 声称它带来了3 到16 倍的性能提升。

Storm 是一个事件处理程序,可以对流数据进行分布式处理。一个 Storm 应用程序由“spouts”和“bolts”构成,它们被配置成一个有向无环图,用来表示信息源和数据处理程序。Storm 的主要特点是能处理实时数据,不像 Hadoop 那样允许批处理。

据 Goetz 介绍,与先前的版本相比,Storm 1.0 的性能最高提升了 16 倍,在大多数情况下预计都会有 3 倍的性能提升。特别地,性能的重大改善似乎来自下面的更改:

  • SpoutOutputCollector.emit()调用中使用 Java重新实现了Clojure reduce函数;
  • DisruptorQueue引入批处理,代替 spout 层的批处理,这以增加延迟为代价大幅提升了吞吐量。

特别地,雅虎工程师所做的大量的基准测试表明,与其他两个流行的分布式处理框架 Apache Flink Apache Spark 相比,性能历来是 Storm 的主要竞争优势之一。

此外,Storm 1.0 包含许多值得注意的新特性,例如:

  • Pacemaker:一个处理工作进程心跳的心跳守护进程,它常驻内存,提供了比 ZooKeeper 更好的性能;
  • 分布式缓存及相关 API:它允许在拓扑之间共享文件。文件可以随时更新,而不需要重新部署受影响的拓扑。这对于当前将资源文件包含在拓扑 jar 包中的做法是一种改进,这种做法更新文件时需要重新部署;
  • 高可用 Nimbus:使用一个 Nimbus 节点的动态集群代替单个 Nimbus 实例,如果当前的群首节点出现故障,就会选出新的“群首”;
  • 流窗口 API:新增窗口定义支持,这些窗口可以应用于数据处理,比如在最后一个小时里计算最热门的话题。以前,开发人员必须构建自己的窗口逻辑;
  • 自动反压:当任务缓冲区的大小达到了指定的限制(以百分比表示),Storm 就会自动降低拓扑 spouts 的速度;
  • 资源感知调度器:一种新的调度器实现,在将任务分配给最能满足特定需求的工作进程时考虑了集群中可用的内存和 CPU 资源;
  • 动态工作进程性能分析:旨在让用户可以从 Storm UI 获取工作进程性能数据,比如堆转储文件、JStack 输出。

读者可以从 GitHub 上下载 Apache Storm 1.0,或者从 Storm 下载页面上获取各种打包格式。

查看英文原文: Apache Storm Reaches 1.0, Brings Improved Performance, Many New Features

2016-04-17 19:003989
用户头像

发布了 1008 篇内容, 共 393.2 次阅读, 收获喜欢 345 次。

关注

评论

发布
暂无评论
发现更多内容

威胁驱动的网络安全方法论

喀拉峻

网络安全

免费机器资源、硬核导师、丰厚奖励|飞桨黑客马拉松第二期开始啦!

百度大脑

纯CSS 神奇的边框特效

德育处主任

css3 纯CSS 前端可视化 css动画

RENO: Netflix的快速事件通知系统

俞凡

架构 netflix 大厂实践 3月月更

吉利控股集团与百度深化战略合作

百度大脑

图灵奖得主Yann LeCun走进百度,与世界研究工作者展开交流

百度大脑

建设领先的AI原生云,百度智能云落地新一代高性能AI计算集群

百度大脑

实用机器学习笔记二十六:NAS

打工人!

学习笔记 NAS 机器学习算法 3月月更 神经网络架构搜索

持续集成工具篇:Jenkins与流水线管理

自动化 持续集成 jenkins 持续交付 构架

【建议收藏】Kafka 面试连环炮, 看看你能撑到哪一步?(上)

王江华

大数据 kafka 面试 中间件 消息队列

vim 常用操作键tips

刁架构

xcode vim 快捷键

使用关键点检测打造小工具Padoodle,让涂鸦小人跟随真人学跳舞

百度大脑

Eclipse 不为人所知的另一面 - 企业管理软件领域 ABAP 编程语言开发利器

汪子熙

eclipse ide 开发者 abap 3月月更

LeetCode刷题笔记:数组中重复的数据

OpenHacker

JavaScript 算法 LeetCode

面向智能合约、区块链、Web3、以太坊开发工具指南

devpoint

Ethereum infura Solidity Web3.0 3月月更

尤达DDD领域驱动设计思想 第一章作业(理解单纯的面向对象设计思想的缺陷)

代廉洁

尤达DDD领域驱动设计思想

尤达 DDD 领域驱动设计思想 第二章作业(重新划分SmartRM的子域和限界上下文)

代廉洁

尤达DDD领域驱动设计思想

优秀的测试开发应该具备的六大能力

老张

软件测试 测试开发

微博评论的高性能高可用计算架构

AragornYang

架构训练营 架构实战营

Flutter 图文并茂列表完整实现

岛上码农

flutter ios 安卓 移动端 3月月更

有温度的人工智能,零门槛助力企业“鲤跃”智能化“龙门”

百度大脑

做一个小程序到底要多少钱?都有哪些费用?

源字节1号

开源 前端开发 后端开发 开发小程序

AI语音识别-我给浏览器加了个语音搜索功能

DS小龙哥

语音识别 3月月更

模块化编程及LCD1602调试工具

謓泽

3月月更

一文彻底搞懂原型链

CRMEB

对称加密与非对称加密总结

暖蓝笔记

3月月更

拿下10+OFFER总结的HR常问问题

暖蓝笔记

3月月更

百度连续四年亮相全球量子信息处理顶会QIP 宣布量子战略规划升级

百度大脑

架构训练营毕业总结

Geek_e6f7f6

架构实战营

报名啦!中小企业如何借力AI逆势突围?飞桨中国行定档3月23日!

百度大脑

[算法练习]2 二进制中1的个数

暖蓝笔记

3月月更

Apache Storm 1.0发布,带来性能提升和许多新特性_语言 & 开发_Sergio De Simone_InfoQ精选文章