[发明专利]一种基于Storm-Kafka实现数据顺序处理的方法及其系统在审
申请号: | 201811612312.2 | 申请日: | 2018-12-27 |
公开(公告)号: | CN109815027A | 公开(公告)日: | 2019-05-28 |
发明(设计)人: | 杨涛 | 申请(专利权)人: | 四川驹马科技有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 成都环泰知识产权代理事务所(特殊普通合伙) 51242 | 代理人: | 李斌;黄青 |
地址: | 610000 四川省成都市锦江区*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据确认单元 顺序处理 数据处理单元 队列 获取数据 数据处理 数据处理模块 数据传输模块 数据发送模块 数据反馈模块 数据缓存模块 数据获取模块 缓存 处理效率 缓存处理 结果发送 结果返回 组件创建 源头 并发 发送 创建 保证 | ||
本发明公开了一种基于Storm‑Kafka实现数据顺序处理的方法,基于Storm‑Kafka框架创建KafkaSpout源头组件;从kafka上获取数据;将数据分别发送至数据处理单元Bolt对应的队列和数据确认单元Acker对应的队列中;数据确认单元Acker和数据处理单元Bolt分别获取数据,并缓存;数据处理单元Bolt进行数据处理,缓存处理后的数据序号,并将数据处理的结果发送至数据确认单元Acker对应的队列中;数据确认单元Acker将结果返回至KafkaSpout源头组件。本发明还公开了一种基于Storm‑Kafka实现数据顺序处理的系统,包括组件创建模块、数据获取模块、数据发送模块、数据缓存模块、数据传输模块、数据处理模块和数据反馈模块。本发明具有高容错和高并发的特性,保证数据的处理效率;通过扩展KafkaSpout组件,实现数据的顺序处理。
技术领域
本发明涉及数据处理技术领域,具体涉及一种基于Storm-Kafka实现数据顺序处理的方法及其系统。
背景技术
随着业务的不断发展,公司的配送车辆也越来越多,为了方便管理以及及时发现一些潜在问题,公司在配送车辆上安装了相应的车载T-BOX,用于收集车辆相关数据以及定位车辆位置,以供相关业务使用。
当数据从T-BOX采集并发送到公司平台之后,需要快速地对这些数据进行相应处理和分析;但是,在传统的采用Storm-Kafka来实现数据处理方法中易导致数据乱序,导致数据乱序的节点在数据确认单元Acker,当数据确认单元Acker接收到来自KafkaSpout源头组件的数据时,会缓存下来,在特定时间内(默认30秒)未接收到数据处理单元Bolt的处理结果,就会通知KafkaSpout源头组件数据处理失败,此时KafkaSpout源头组件会重发这条数据,此时会导致数据处理单元Bolt对应的队列中的数据无序,以致不能按照正常顺序来处理数据而到相应的结果。
此问题中,不能简单地通过增加超时机制的时间来保证数据的顺序,其一是不能保证数据处理单元Bolt一定能在一定时间内完成处理;其二是会导致确认单元Acker内存里的未确认数据越来越多,易引发内存溢出问题;同时也不能将数据确认单元Acker移除点,如果移除数据确认单元Acker,就不能保证数据一定被处理。
因此,采用传统的数据处理方法对于大数据量的处理效果不佳,不具有高容错和高并发的特性,致使在大数据量下不能保证数据的处理效率。
发明内容
基于此,针对上述问题,有必要提出一种实现数据有序处理,提供高容错以及高并发的特性,能够在大数据量下保证数据的处理效率的基于Storm-Kafka实现数据顺序处理的方法及其系统。
本发明提供一种基于Storm-Kafka实现数据顺序处理的方法,其技术方案如下:
一种基于Storm-Kafka实现数据顺序处理的方法,包括以下步骤:
a、搭建Storm-Kafka框架,并创建KafkaSpout源头组件;
b、从kafka上获取数据信息至KafkaSpout源头组件;
c、将数据信息分别发送至数据处理单元Bolt对应的队列和数据确认单元Acker对应的队列中;
d、数据信息发送至数据确认单元Acker对应的队列中后,将数据信息传输至数据确认单元Acker,并缓存;
e、数据信息发送至数据处理单元Bolt对应的队列中后,将数据信息传输至数据处理单元Bolt;
f、进行数据处理,缓存处理后的数据序号,并将数据处理的结果发送至数据确认单元Acker对应的队列中;
g、数据确认单元Acker接收到其队列中的数据处理结果后,判断整个链式处理是否完成,并将该结果返回至KafkaSpout源头组件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川驹马科技有限公司,未经四川驹马科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811612312.2/2.html,转载请声明来源钻瓜专利网。