加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Twitter开源大数据及时说明体系Heron:Heron架构

发布时间:2021-03-06 12:16:54 所属栏目:大数据 来源:网络整理
导读:Heron架构 Heron是Apache Storm的一个直接担任者。从架构角度来看,它与Storm截然差异,可是从API的角度看它是完全向后兼容的。 下面的章节指明白Heron和Storm的区别,描写了Heron背后的计划方针,并表明白其架构的首要组件。 代码库 Heron代码库的具体指南
副问题[/!--empirenews.page--]

Heron架构

Heron是Apache Storm的一个直接担任者。从架构角度来看,它与Storm截然差异,可是从API的角度看它是完全向后兼容的。
下面的章节指明白Heron和Storm的区别,描写了Heron背后的计划方针,并表明白其架构的首要组件。

代码库

Heron代码库的具体指南在这里。

拓扑

你可以以为一个Heron集群是一种打点流式处理赏罚实体(称作拓扑)的生命周期机制的机制。更多信息可以查察Heron拓扑文档。

与Apache Storm的相关

Heron是Apache Storm的直接担任者,可是以下面两点为构建方针:
1. 通过把Storm的基于线程的计较模子替代为基于历程的模子,降服Storm的机能,靠得住性,和其他弱点。
2. 保存与Storm的数据模子和拓扑API的完全兼容。
关于Heron和Storm更深入的接头,查察Twitter Heron: Stream Processing at Scale论文。

Heron计划方针

  • 断绝 – 拓扑应该是基于历程的而非基于线程的,并且每个历程应该独立执行以便于调试,说明和排错。
  • 资源限定 – 拓扑应该只行使它们初始分派的那些资源,永久不能高出那些限定。这使得Heron在共享的基本办法上也担保安详。
  • 兼容性 – Heron与Apache Storm的API和数据模子是完全兼容的,使得开拓职员便于在体系间迁徙。
  • 反压机制 – 在Heron这类漫衍式体系中,不能担保全部的体系组件以沟通的速率执行。Heron有内置的反压机制来确保拓扑在组件迟钝的环境下可以自顺应。
  • 机能 – 很多Heron的计划选择使得Heron得到了比Storm更高的吞吐量和更低的耽误,同时还提供了加强的可设置性来微调也许的耽误/吞吐量的折中。
  • 语义担保 – Heron支持at-most-once和at-least-once两种处理赏罚语义。
  • 服从 – Heron的构建方针是以最小的资源行使量到达上述全部方针。

拓扑组件

Heron拓扑的下列焦点组件在以下末节中深入接头:
- Topology Master
- Container
- Stream Manager
- Heron Instance
- Metrics Manager
- Heron Tracker

Topology Master

Topology Master(TM)打点拓扑的整个生命周期,从提交直到最终被杀死。当==heron==陈设一个拓扑时,它启动了一个TM和多个containers。这个TM建设了一个姑且ZooKeeper节点以担保这个拓扑只有一个TM,而且这个TM可被拓扑中任何历程发明。这个TM也认真构建拓扑的物理打算,转达给差异组件。

image

Topology Master设置

TM有多种设置参数,你可以在拓扑生命周期每一个阶段举办调解。

Container

每个Heron拓扑包罗多个containers,每个container包括多个Heron实例,一个Stream Manager和一个Metrics Manager。Containers与拓扑的TM通讯以确保拓扑形成一个全联通图。
作为插图,查察上述Topology Master末节的图片。

Stream Manager

Stream Manager(SM)打点拓扑组件间元组的路由。一个拓扑中的每个Heron实例毗连到它的当地SM,同时在一个给定的拓扑中全部的SM相互毗连形成了一个收集。下面是SM收集的图示:

image


除了作为数据流的路由引擎外,SM还认真在必要时在拓扑中撒播反压。下面是反压的图示:

上图中,假定bolt B3(在container A中)全部输入都来自spout S1。B3比其他组件运行更慢。功效是,container A的SM会拒绝来自容器C和D的输入,由于那样会导致那些容器的套接字缓冲填满,进而导致吞吐量瓦解。
在这种环境下,Heron的反压机制起效。容器A中的SM会向其他全部SM发送一条动静。功效是,其他SM会搜查容器的物理打算,并割断流入bolt B3的spouts的输入(本例中是spout S1)。

一旦落伍的bolt(B3)规复正常,容器A的SM会关照其他SM,这个拓扑的流路由就会规复正常。

Stream Manger设置

SM有多种设置参数,你可以在拓扑生命周期每一个阶段举办调解。

Heron Instance

一个Heron Instance(HI)是一个处理赏罚一个独立spout或bolt使命的历程,支持简朴的调试和说明。今朝,Heron只支持Java,以是全部HI都是JVM历程,可是将来会改变。

Heron Instance设置

HI有多种设置参数,你可以在拓扑生命周期每一个阶段举办调解。

Metrics Manager

每个拓扑运行一个Metrics Manager(MM),用于网络和导出一个container中全部组件的怀抱。然后把哪些怀抱信息路由给Topology Master和外部网络器,如Scribe, Graphite,或相同体系。
你可以通过实现本身的定制怀抱池(sink),使Heron支持其他体系。

集群级别组件

上述末节列出的全部组件在每个拓扑中都可以找到。下面列出的组件是集群级此外组件,在特定拓扑外起浸染。

Heron CLI

Heron有一个称作==heron==的CLI器材,用于打点拓扑。文档参照Managing Topologies。

Heron Tracker

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读