一种实时计算方法、计算机存储介质及电子设备技术

技术编号:23148848 阅读:30 留言:0更新日期:2020-01-18 13:23
一种实时计算方法、计算机存储介质及电子设备,包括:spark拉起消息中间件中的消息;spark对所述消息进行处理,并将spark处理后的数据投递到kafka进行缓冲;flume对kafka中的数据进行处理,并将flume处理后的数据存入数据库。本申请中的方案spark对所述消息进行处理之后并非直接存入数据库,而是先投递到kafka进行缓冲就,再由flume对kafka中的数据进行处理,然后将flume处理后的数据存入数据库,通过spark‑kafka‑flume的组合处理,可以有效平衡spark计算速度和拉取消息的速度,进而防止消息在内存堆积出现问题导致程序挂掉。

A real-time calculation method, computer storage medium and electronic equipment

【技术实现步骤摘要】
一种实时计算方法、计算机存储介质及电子设备
本申请涉及移动通信技术,具体地,涉及一种实时计算方法、计算机存储介质及电子设备。
技术介绍
现在很多用kafka作为spark拉取消息的消息中间件,kafka有很多其他消息中间件不具备的优势,这种组合方式很利于开发一个流计算作业。但在实际生产应用中,因为系统复杂多样化,很多消息并不是投递到kafka,而是投递到其他消息中间件。当业务数据爆发时,spark可以快速拉取这些消息中间件的数据,但是spark在自己处理这些数据实现业务逻辑时,如果处理速度一直小于拉取消息的速度,就会导致数据在内存中累积出现各种问题。08版本后的kafka虽然实现了反压的功能,可以平衡拉取数据速度和处理数据速度,但是对于其他消息中间件还没有这个功能,在数据量爆发的情况下就会出现上述问题。如图1所示的现有实时计算处理方法中,spark拉起消息中间件中的消息,spark处理后存入数据库。当大量消息通过没有反压功能的消息中间件涌入spark,由于spark的处理消息的能力已经跟不上涌入的消息,即spark的实时处理速度本文档来自技高网...

【技术保护点】
1.一种实时计算方法,其特征在于,包括:/nspark拉起消息中间件中的消息;/nspark对所述消息进行处理,并将spark处理后的数据投递到kafka进行缓冲;/nflume对kafka中的数据进行处理,并将flume处理后的数据存入数据库。/n

【技术特征摘要】
1.一种实时计算方法,其特征在于,包括:
spark拉起消息中间件中的消息;
spark对所述消息进行处理,并将spark处理后的数据投递到kafka进行缓冲;
flume对kafka中的数据进行处理,并将flume处理后的数据存入数据库。


2.根据权利要求1所述的方法,其特征在于,所述spark对所述消息进行处理,包括:
spark对所述消息进行非耗时业务处理。


3.根据权利要求2所述的方法,其特征在于,所述spark对所述消息进行非耗时业务处理,包括:
spark根据先设置的提交作业间隔batchInterval,以及预设并发度concurrentJobs对所述消息进行非耗时业务处理。


4.根据权利要求3所述的方法,其特征在于,所述concurrentJobs为2;
所述batchInterval为1,或者,5,或者,6,或者,7,或者,8,或者,9,或者10。


5.根据权利要求3所述的方法,其特征在于,设置batchInterval之后,还包括:
调起spark任务,获取sparkwebUI地址;
启动一个spark任务后,确定sparkwebUI地址中是否有任务排队;
若sparkwebUI地址中无任务排队,则调起spark任务,将所述batchInterval值加1,重复执行启动一个spark任务后,确定sparkwebUI地址中是否有任务排队的步骤,直...

【专利技术属性】
技术研发人员:龚伟松韦松松高敏
申请(专利权)人:上海凯京信达科技集团有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1