流式计算技术及应用
更新时间:2023-04-15 05:41:01 阅读量: 实用文档 文档下载
流式计算技术及应用研究报告
学校代码:10248
作者姓名:叶稳定
学号:0
第一导师:
第二导师:
学科专业:软件工程
上海交通大学软件学院
2016年 5 月
目录
1 流式计算技术综述........................................... 错误!未定义书签。
流式计算技术概述.......................................... 错误!未定义书签。
流式计算框架Storm的架构分析.............................. 错误!未定义书签。
流式计算框架Spark Streaming的架构分析.................... 错误!未定义书签。 Storm与Spark Streaming的架构对比........................ 错误!未定义书签。2流式计算技术在实际项目中的应用........................... 错误!未定义书签。
基于流式计算框架Spark Streaming的数据实时处理应用的系统架构.. 错误!未定义书签。
基于复杂事件处理CEP框架的数据实时处理应用的系统架构...... 错误!未定义书签。
基于其他流式计算框架的数据实时处理应用的系统架构.......... 错误!未定义书签。参考文献..................................................... 错误!未定义书签。
1 流式计算技术综述
流式计算技术概述
流数据处理应用要求我们的系统可以接受大量的,不间断的数据称为流式数据。
流式计算中,无法确定数据的到来时刻和到来顺序,也无法全部数据存储起来.因此,不再进行流式数据的存储,而是当流动的数据到来后在内存中直接进行数据的实时计算.如 Twitter 的 Storm、Yahoo 的 S4[6] 就是典型的流式数据计算架构,数据在任务拓扑中被计算,并输出有价值的信息. 对于无需先存储,可以直接进行数据计算,实时性要求很严格,但数据的精确度要求稍微宽松的应用场景,流式计算具有明显优势.流式计算中,数据往往是最近一个时间窗口内的,因此数据延迟往往较短,实时性较强。
流式计算框架Storm的架构分析
Apache Storm[5],在Storm中,先要设计一个用于实时计算的图状结构,我们称之为拓扑(topology)。这个拓扑将会被提交给集群,由集群中的主控节点(master node)[5]分发代码,将任务分配给工作节点(worker node)执行。一个拓扑中包括spout和bolt两种角色,其中spout发送消息,负责将数据流以tuple
元组的形式发送出去;而bolt则负责转换这些数据流,在bolt中可以完成计算、过滤等操作,bolt自身也可以随机将数据发送给其他bolt。由spout发射出的tuple 是不可变数组,对应着固定的键值对。
Spark的设计思想是将流式计算分解成一系列短小的批处理作业,也就是把Spark Streaming的输入数据按照时间分成一段一段的数据,每一段数据都转换成Spark中的RDD,然后在Spark[6]内部对RDD进行处理操作,结果可以放到内存中继续处理或者存储到外部设备。
流式计算框架Spark Streaming的架构分析
Spark Streaming是核心Spark API的一个扩展,它并不会像Storm那样一次一个地处理数据流,而是在处理前按时间间隔预先将其切分为一段一段的批处理作业。Spark针对持续性数据流的抽象称为DStream(DiscretizedStream),一个DStream是一个微批处理(micro-batching)的RDD(弹性分布式数据集);而RDD 则是一种分布式数据集,能够以两种方式并行运作,分别是任意函数和滑动窗口数据的转换。
Storm将计算逻辑抽象为拓扑Topology,Spout是Topology的数据源,数据源可以是日志或者消息队列,也可以是数据库中的表等等数据,Bolt负责数据的整个传递方向,也叫消息处理者,Bolt可能由另外2个Bolt进行join得到,在Storm 中数据流的单位就是Tuple(元组),这个Tuple可能是由多个Fields字段构成,每个字段都由Bolt定义,Storm中工作进程叫做worker,一个Topology实际上实在多个worker中运行的,在集群中每个Spout和Bolt都是由多个Tasks(任务)组成的,对于宏观的节点,分为Nimbus主节点和Supervisor从节点,Nimbus通过Zookeeper管理集群所有的Supervisor,Storm提供很多配置来调整Nimbus、Supervisor进程和正在运行的Topology的行为。
Storm与Spark Streaming的架构对比
以上2种实时计算系统都是开源的分布式系统,具有低延迟、可扩展和容错性诸多优点,它们的共同特色在于:允许你在运行数据流代码时,将任务分配到一系列具有容错能力的计算机上并行运行。此外,它们都提供了简单的API来简化底层实现的复杂程度。
所以,总结一下Storm[2]的计算流程,首先是用户使用Storm提供的API编写Topology计算逻辑,然后使用Storm提供的Client将Topology提交给Nimbus,然后Nimbus将Task作业指派给Supervisor,Supervisor在得到Task后,为Task 启动Worker由Worker执行具体的Task,最后完成计算任务。
2流式计算技术在实际项目中的应用
基于流式计算框架Spark Streaming的数据实时处理应用的系统架构SPARK大数据框架融合了流式计算技术、内存计算技术,利用SPARK streaming 建立大规模监控视频流分析系统,利用流式计算和内存计算的技术,结合OPENCV
视频分析算法[2],达到对多路监控视频流进行实时分析。
平台组成如图所示,分为三大部分:数据传输、数据处理和数据存储。
智能视频监控很多情况下是要对采集的图像进行实时处理。数量众多的监控摄像头,庞大的监控网络,很短时间之内就会产生海量的图像视频数据,如何从这些海量数据中高效地提取出有用的信息,就成为智能视频监控技术要解决的问题。本系统利用Spark Straming框架构建分布式视频流处理的平台,实现了从数据的传输、处理和存储。
基于复杂事件处理CEP框架的数据实时处理应用的系统架构
基于其他流式计算框架的数据实时处理应用的系统架构
根据云计算平台下智能视频分析的实时性需求,设计一个基于 Storm[2] 流计算框架的实时视频分析系统。采用合并解码单元和视频分析单元的方法避免耗尽集群带宽,并利用工作窃取机制加速算法执行。通过节点性能监控并利用贪心置换策略动态调节 workerNode负载,改进 Storm 的默认调度器,降低消息的处理延时。实验结果表明,在运行人脸检测算法的 Storm 集群中接入多路监控设备,实现100ms之内的消息处理延时和低于1s的整体延时,能够为云环境下多路监控终端提供实时稳定的视频分析服务。
首先缓存主要考虑到设备码率的波动,添加缓存可以保证集群均匀地订阅视频流,改善集群性能和稳定性,对整体时延的增加也不明显;另外对设备和Storm 集群进行隔离,并且方便应用层对系统进行控制。
参考文献
[1] Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. :
A Distributed Storage System for Structured Data[D].OSDI, 2006.
[2] Jeffrey Dean and Sanjay : Simplified Data Processing on Large
Clusters[D].OSDI, 2004.
[3] Sanjay Ghemawat, Howard Gobioff, and Shun-Tak Google File
System[D].Bolton Landing, New York, USA:ACM, 2003.
[4] 申海洋;基于内容的监控视频检索算法研究[D];山西大学;2014年
[5] 袁冠红;基于异常事件检测的交通监控视频摘要[D];浙江大学;2015年
[6] 李招昕;基于流式计算的大规模监控视频分析关键技术研究[D];上海大学;2015年
正在阅读:
流式计算技术及应用04-15
2016浙大远程《财务管理》在线作业 100分答案11-09
中学语文小说阅读的个性化教学【开题报告】05-05
研究性学习教学工作总结09-07
财务管理期末试卷11-19
关于预防扶贫领域违纪违法案件的分析报告12-05
一通三防管理事故案例11-17
上海高中数学知识点梳理与巩固复习)06-11
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 流式
- 计算
- 应用
- 技术
- 2022-2022学年高中英语 Unit 1 A land of diversity Section
- 人教版小学语文四年级的上册的句子专项学习的复习模板计划练习题
- 2022年西北民族大学法学院704法学综合《行政法与行政诉讼法》考
- 专题29 归纳与猜想_答案
- 高中生物选修三教学计划
- 最新专业演讲技巧;成功演讲应具备的八个特征
- 信息化能力建设题库及答案--(2014)
- 小学教师演讲稿:无悔的选择无尽的追求
- 动土作业安全管理规定
- 2022年辽宁师范大学六盘水师范学院联合培养项目843普通生物学[专
- 学习党章、健全机制、提升素质主题活动的意见
- 形容词原级、比较级和最高级讲解及练习
- 碧桂园购房合同标准范本
- 八年级英语暑假专题 英语知识扩充 —英语俚语同步练习 北京实验
- 精选2022-2022年牛津版英语九年级下册Unit1 Great explorations
- 接地电阻测试仪操作规程(正式)
- 2022河南函授大专专业
- 《联邦党人文集》的中国奇妙旅程《联邦论》或才是最佳译名
- 2022-2022年小学数学重庆四年级同步测试模拟试题【9】含答案考点
- 网格化管理制度标准范本