2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Twitter 已经用 Heron 替换了 Storm

  • 2015-06-15
  • 本文字数:944 字

    阅读完需:约 3 分钟

Twitter 已经用 Heron 替换了 Storm。此举将吞吐量最高提升了 14 倍,单词计数拓扑时间延迟最低降到了原来的 1/10,所需的硬件减少了 2/3。

Twitter 使用 Storm 实时分析海量数据已经有好几年了,并在 2011 年将其开源。该项目稍后开始在 Apache 基金会孵化,并在去年秋天成为顶级项目。Storm 以季度为发布周期,现在已经达到了 0.9.5 版本,并且正在向着人们期望的 1.0 稳定版前进。但一直以来,Twitter 都在致力于开发替代方案 Heron,因为 Storm 无法满足他们的实时处理需求。

Twitter 的新实时处理需求包括:“每分钟数十亿的事件;大规模处理具有次秒级延迟和可预见的行为;在故障情况下,具有很高的数据准确性;具有很好的弹性,可以应对临时流量峰值和管道阻塞;易于调试;易于在共享基础设施中部署。” Karthik Ramasamy 是 Twitter Storm/Heron 团队的负责人。据他介绍,为满足这些需求,他们已经考虑了多个选项:增强 Storm、使用一种不同的开源解决方案或者创建一个新的解决方案。增强 Storm 需要花费很长时间,也没有其它的系统能够满足他们在扩展性、吞吐量和延迟方面的需求。而且,其它系统也不兼容 Storm 的 API,需要重写所有拓扑。所以,最终的决定是创建 Heron,但保持其外部接口与 Storm 的接口兼容。

拓扑部署在一个 Aurora 调度器上,而后者将它们作为一个由多个容器(cgroups)组成的任务来执行:一个 Topology Master、一个 Stream Manager、一个 Metrics Manager(用于性能监控)和多个 Heron 实例 (spouts 和 bolts)。拓扑的元数据保存在 ZooKeeper 中。处理流程通过一种反压机制实现调整,从而控制流经拓扑的数据量。除 Aurora 外,Heron 还可以使用其它服务调度器,如 YARN 或 Mesos。实例运行用户编写的 Java 代码,每个实例一个 JVM。Heron 通过协议缓冲处理彼此间的通信,一台机器上可以有多个容器。(要了解更多关于 Heron 内部架构的细节信息,请阅读论文《 Twitter Heron:大规模流处理》。)

Twitter 已经用 Heron 完全替换了 Storm。前者现在每天处理“数 10TB 的数据,生成数 10 亿输出元组”,在一个标准的单词计数测试中,“吞吐量提升了 6 到 14 倍,元组延迟降低到了原来的五到十分之一”,硬件减少了 2/3。

当被问到 Twitter 是否会开源 Heron 时,Ramasamy 说“在短时间内不会,但长期来看可能。”

2015-06-15 13:409427
用户头像

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

关注

评论

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

25道mybatis面试题,不要说你不会

田维常

mybatis

数字之暖:鹅厂云原生的“新路”与“历承”

脑极体

函数进阶· 第3篇《常用内置函数filter()、map()、zip(),怎么用的呢?》

清菡软件测试

测试开发

什么样的企业才需要用到云服务器?

德胜网络-阳

金瓯无缺江河一统|Win10系统基于Docker和Python3搭建并维护统一认证系统OpenLdap

刘悦的技术博客

Python TCP ldap openldap 统一管理

Native 与 JS 的双向通信

Minar Kotonoha

甲方日常 73

句子

工作 随笔杂谈 日常

MySQL用户与权限管理指南

Simon

MySQL 用户权限 七日更

云原生应用开发框架Quarkus介绍

gaolk

云原生 Quarkus

甲方日常 74

句子

工作 随笔杂谈 日常

执子之手,与子长安:探秘华为运动健康实验室

脑极体

花火交易所系统开发|花火交易所软件APP开发

系统开发

Docker终端无法输入中文问题解决

Simon

Docker 七日更

便民服务多元化,智慧平安小区安防智能化建设

t13823115967

智慧城市

新思科技:2021年软件安全行业六大趋势预测

InfoQ_434670063458

90%的程序员,都没用过多线程和锁,怎么成为架构师?

小傅哥

程序员 小傅哥 线程池 架构师 七日更

第六周技术选型作业-CAP原理概述

Geek_michael

极客大学架构师训练营

生产环境全链路压测建设历程 19:某快递 A 股上市公司的生产压测案例之下篇

数列科技杨德华

全链路压测 七日更

简析5G时代的MART流处理

VoltDB

数据库 5G

week5 conclusion 分布式缓存架构+消息队列

J

极客大学架构师训练营

平安社区平台解决方案,智慧社区管理服务平台搭建

13530558032

区块链商品溯源解决方案,区块链全程追溯系统

13530558032

浅谈数据仓库质量管理规范

数据社

数据仓库 数据质量管理 七日更

支持百万级TPS,Kafka是怎么做到的?

爱笑的架构师

kafka Kafka知识点 零拷贝 Mmap 七日更

规划算法

田维常

算法

iOS面试基础知识 (五)

iOSer

ios 面试 底层知识

盘点2020 | 所思、所遇、所学、所悟

三钻

程序员 大前端 盘点2020

合约交易系统开发软件定制

永续合约交易系统开发模式定制

Javascript | 模拟mvc实现点餐程序

LiOnTalKING

Java mvc 大前端 H5

微警务平台搭建,智慧警务系统开发解决方案

t13823115967

智慧警务系统开发 微警务

Twitter已经用Heron替换了Storm_大数据_Abel Avram_InfoQ精选文章