[发明专利]一种高吞吐量流处理方法及装置在审
| 申请号: | 202010610083.1 | 申请日: | 2020-06-29 |
| 公开(公告)号: | CN113934531A | 公开(公告)日: | 2022-01-14 |
| 发明(设计)人: | 刘土明 | 申请(专利权)人: | 中兴通讯股份有限公司 |
| 主分类号: | G06F9/50 | 分类号: | G06F9/50;G06F9/54 |
| 代理公司: | 深圳鼎合诚知识产权代理有限公司 44281 | 代理人: | 薛祥辉 |
| 地址: | 518057 广东省深圳市*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 吞吐量 处理 方法 装置 | ||
本发明实施例提供一种高吞吐量流处理方法及装置,本发明中流处理的方法为:数据接收线程判断当前数据内存缓存的剩余缓存空间是否大于预设阈值,若是,则将接收到的数据缓存到所述内存缓存中,否则,将接收到的数据保存到本地硬盘;数据处理线程从所述内存缓存中获取数据,对获取到的数据进行计算处理。本发明方案中,数据接收Bolt采用内存缓存和硬盘缓存两级缓存,而数据处理Bolt没有独立的内存缓存,而是直接从数据接收Bolt中的内存缓存中获取数据进行计算处理,数据接收线程和数据处理线程相互独立,提升了吞吐量,计算资源和存储资源利用率,提高了系统稳定性。
技术领域
本发明实施例涉及但不限于大数据流技术领域,具体而言,涉及但不限于一种高吞吐量流处理方法及装置。
背景技术
实时流计算作为一个能快速处理,快速反馈结果的技术,目前已被各个领域广泛使用,有大量优秀的流计算引擎,比如Apache storm(分布式实时计算系统),Apache Filnk(通用数据处理平台),Spark Streaming等。在这些系统中,数据的产生完全由数据源确定,数据源动态变化及状态不统一导致数据流的速率呈现突发性特征,而数据流的突发性特征常常导致过载的发生,发生过载还有如下几个原因:网络拥塞,用户请求突发峰值等。在实时流计算中,过载是常见且难以避免的。
基于Apache storm的流计算引擎,其自身是带有反压机制的,但是其效率低下,硬件资源浪费严重。因此,提高吞吐量,提升计算资源利用率,降低运维成本是很有必要的。
发明内容
本发明实施例提供的一种高吞吐量流处理方法和装置,主要解决的技术问题是数据效率低,硬件资源浪费严重的问题。
为解决上述技术问题,本发明实施例提供一种一种高吞吐量流处理方法,包括:
数据接收线程判断当前数据内存缓存的剩余缓存空间是否大于预设阈值,若是,则将接收到的数据缓存到所述内存缓存中,否则,将接收到的数据保存到本地硬盘;
数据处理线程从所述内存缓存中获取数据,对获取到的数据进行计算处理。
所述高吞吐量流处理方法还包括:
构建bolt模型,所述bolt模型包括:数据接收bolt模型,数据处理bolt模型,数据发送bolt模型;所述数据接收bolt模型用于接收数据发送bolt模型发送的数据消息,所述数据处理bolt模型用于从数据接收bolt模型中获取数据,并进行计算处理;
根据构建的bolt模型建立线程池,所述线程池包括:数据接收线程、数据处理线程、数据发送线程;所述数据接收线程用于接收数据发送线程发送数据消息,所述数据处理线程用于从所述数据接收线程中获取数据进行计算处理;
按照预设比例配置所述数据接收线程和所述数据处理线程的比例。
本发明实施例还提供一种高吞吐量流处理装置,包括数据接收模块,数据处理模块;
所述数据接收模块,用于接收数据并判断当前数据内存缓存的剩余缓存空间是否大于预设阈值,若是,则将接收到的数据缓存到所述内存缓存中,否则,将接收到的数据保存到本地硬盘中;
所述数据处理模块,用于从所述内存缓存中获取数据,并对获取到的数据进行计算处理。
所述高吞吐量流处理装置还包括:
创建模块,所述创建模块用于构建bolt模型;所述bolt模型包括:数据接收bolt模型,数据处理bolt模型,数据发送bolt模型;所述数据接收bolt模型用于接收数据发送bolt模型发送的数据消息,所述数据处理bolt模型用于从数据接收bolt模型中获取数据,并进行计算处理;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010610083.1/2.html,转载请声明来源钻瓜专利网。





