b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

分布式处理与网络计算storm简介Storm 是 Twitt

电脑杂谈  发布时间:2018-01-25 06:02:31  来源:网络整理

分布式网络和_分布式处理与网络计算_分布式处理请求

分布式处理与网络计算

Storm 是 Twitter 开源的、分布式的、容错的实时计算系统

Storm进程常驻内存

Storm数据不经过磁盘,在内存中处理

Storm 可以方便地在一个计算机集群中编写与扩展复杂的实时计算, Storm 之于实时处理,就好比 Hadoop 之于批处理。 Storm 保证每个消息都会得到处理,而且它很快——在一个小集群中,每秒可以处理数以百万计的消息。分布式处理与网络计算 Storm 的处理速度非常惊人:经测试,每个节点每秒可以处理 100 万个数据元组

storm的设计思想

在 Storm 中也有对流(Stream)的抽象,流是一个不间断的、无界的连续 Tuple(Storm在建模事件流时,把流中的事件抽象为 Tuple 即元组)。Storm 认为每个流都有一个 Stream 源,也就是原始元组的源头,所以它将这个源头抽象为 Spout, Spout 可能连接 Twitter API 并不断发出推文( Tweet),也可能从某个队列中不断读取队列元素并装配为 Tuple 发射。

有了源头即 Spout 也就是有了流,同样的思想, Twitter 将流的中间状态转换抽象为Bolt, Bolt 可以消费任意数量的输入流,只要将流方向导向该 Bolt,同时它也可以发送新的流给其他 Bolt 使用,这样一来,只要打开特定的Spout(管口),再将 Spout 中流出的 Tuple导向特定的 Bolt,由 Bolt 处理导入的流后再导向其他 Bolt 或者目的地。

假设 Spout 就是一个一个的水龙头,并且每个水龙头里流出的水是不同的,想获得哪种水就拧开哪个水龙头,然后使用管道将水龙头的水导向到一个水处理器(Bolt),水处理器处理后使用管道导向另一个处理器或者存入容器中。图 1 和图 2 为 Spout、 Tuple 和 Bolt 之间的关系和流程。

图 1 Spout、 Bolt 顺序处理数据流图

图2 Bolt 多输入数据流图

为了增大水处理效率,可以在同一个水源处接上多个水龙头并使用多个水处理器,如图 3 所示。

图 3 多 Spout、多 Bolt 处理流程图

对应上文的介绍,可以很容易地理解图 3,这是一张有向无环图。 Storm 将这个图抽象为 Topology(即拓扑),拓扑是 Storm 中最高层次的一个抽象概念,提交拓扑到 Storm 集群执行,一个拓扑就是一个流转换图。图中的每个节点是一个 Spout 或者 Bolt,图中的边是指Bolt 订阅了哪些流

Topology – DAG有向无环图的实现

对于Storm实时计算逻辑的封装

即,由一系列通过数据流相互关联的Spout、Bolt所组成的拓扑结构

生命周期:此拓扑只要启动就会一直在集群中运行,直到手动将其kill,否则不会终止

(区别于MapReduce当中的Job,MR当中的Job在计算执行完成就会终止)

分布式网络和_分布式处理与网络计算_分布式处理请求

Tuple – 元组

Stream中最小数据组成单元

Stream – 数据流

从Spout中源源不断传递数据给Bolt、以及上一个Bolt传递数据给下一个Bolt,所形成的这些数据通道即叫做Stream

Stream声明时需给其指定一个Id(默认为Default)

实际开发场景中,多使用单一数据流,此时不需要单独指定StreamId

Spout – 数据源

一个Spout可以发送多个数据流(Stream)

可先通过OutputFieldsDeclarer中的declare方法声明定义的不同数据流,发送数据时通过SpoutOutputCollector中的emit方法指定数据流Id(streamId)参数将数据发送出去


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-62637-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...