Storm基本架构是什么

本篇内容主要讲解“Storm基本架构是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Storm基本架构是什么”吧!

目前常用的流式实时计算引擎分为两类:面向行和面向微批处理,其中面向行的流式实时计算引擎的代表是Apache Storm,典型特点是延迟低,但吞吐率也低。而面向微批处理的流式实时计算引擎代表是Spark Streaming,其典型特点是延迟高,但吞吐率也高。

主流的流式数据线分四个阶段:

1、数据采集:负责从不同数据源上实时采集数据,可选包括Flume以及自定义Kafka Producer

2、数据缓冲:为了平衡数据采集速率与数据处理速率不对等。eg:Kafka

3、实时分析:流式地从数据缓冲区获取数据,并快速完成数据处理。比如:Storm和Spark Streaming

4、结果存储:将计算结果存储到外部系统,比如:大量可实时查询的系统,可存储Hbase中,小量但需要可高并发查询系统,可存储Redis。

Storm:

基本概念:

1、Tuple:由一组可序列化的元素构成。

2、Stream:无限个Tuple组成一个Stream

3、Topology:类似与MapReduce的job,由一系列Spout和Blot构成的DAG

4、Spout:Stream的数据源

5、Bolt:消息处理逻辑

基本架构:

1、Nimbus:集群的管理和调度组件

2、Supervisor:计算组件

3、Zookeeper:Nimbus和Supervisor之前的协调组件。

Spark Streaming:

基本概念:核心思想是把流式处理转化为“微批处理”,即以时间为单位切分数据流,每个切片内的数据对应一个RDD,进而采用Spark引擎进行快速计算。正是由于Spark Streaming采用了微批处理方式,因此只能将其作为近实时处理系统,而不是严格意义上的实时流式处理。

Spark Streaming 对流式数据做了进一步抽象,它将流式数据批处理化,每一批数据被抽象成RDD,这样流式数据变成了流式的RDD序列,这便是Dstream,Spark Streaming 在Dstream上定义了一系列操作,主要分两类:transformation和output,其中一个transformation操作能够将一个Dstream变换成另一个Dstream,而output操作可产生一个或一组结果,并将输出到指定外部系统中。

Spark几个组件的抽象及操作对比:

1、Spark Code 数据抽象RDD 数据操作transformation&action

2、Spark SQL 数据抽象:DataFrame、DataSet,操作:transformation&action

3、Spark Streaming:数据抽象:Dstream,操作:transformation&action

到此,相信大家对“Storm基本架构是什么”有了更深的了解,不妨来实际操作一番吧!这里是蜗牛博客网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论电报频道链接