分区的调整方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:39396158 阅读:10 留言:0更新日期:2023-11-19 15:50
本申请涉及一种分区的调整方法、装置、计算机设备和存储介质。所述方法应用于分区调整设备,包括:在监测到生产设备向消息服务集群发送当前批次消息的情况下,确定当前批次消息的数据量是否大于第一预设阈值,若大于,则向消息服务集群中的第一节点发送扩充分区请求,若不大于,则向消息服务集群中的第二节点发送构建分区请求。本申请基于当前批次消息的数据量和第一预设阈值,灵活地确定是需要在当前分区的基础上扩充分区,与现有的人工扩充分区的方法相比,本申请不仅可以灵活的在原分区的基础上扩充分区以满足当前批次消息过多的情况,还可以在新节点上扩建分区以满足当前批次消息较少的情况,这极大减少了资源的浪费。这极大减少了资源的浪费。这极大减少了资源的浪费。

【技术实现步骤摘要】
分区的调整方法、装置、计算机设备和存储介质


[0001]本申请涉及大数据
,特别是涉及一种分区的调整方法、装置、计算机设备和存储介质。

技术介绍

[0002]Kafka是一种高吞吐量的分布式发布订阅消息集群,它可以处理消费者在网站中的所有动作流数据,如网页浏览、搜索等,其在金融科技领域及大数据领域的应用极为广泛。Kafka中的任一节点上可以包括消息主题,消息主题下又包括多个分区,以使客户端发送消息到Kafka中的任一节点时按照一定的逻辑进行分区发送,进而提高消息的处理效率。
[0003]在实际运行过程中若客户端的消息量激增,则Kafka中原有的分区可能无法处理大量的数据流,从而导致消息的处理性能下降。目前,现有的应对消息量激增的主要方法是:在Kafka中的相应节点上扩充分区大小或者增加额外的分区,并将新增的消息分配到扩充后的分区上。
[0004]然而,上述应对消息激增的方法存在资源浪费的问题。

技术实现思路

[0005]基于此,有必要针对上述技术问题,提供一种能够动态调整分区以减少资源浪费的分区的调整方法、装置、计算机设备和存储介质。
[0006]第一方面,本申请提供了一种分区的调整方法。上述方法应用于分区调整设备,所述方法包括:
[0007]在监测到生产设备向消息服务集群发送当前批次消息的情况下,确定当前批次消息的数据量是否大于第一预设阈值;第一预设阈值由生产设备发送的上一批次消息的数据量或者由消息服务集群中各节点的分区的容量确定;
[0008]若大于,则向消息服务集群中的第一节点发送扩充分区请求;扩充分区请求用于指示第一节点在本地增加第一分区;
[0009]若不大于,则向消息服务集群中的第二节点发送构建分区请求;构建分区请求用于指示第二节点在本地构建第二分区。
[0010]在其中一个实施例中,上述方法还包括:
[0011]在监测到消费设备不再接收第一节点发送的当前批次消息的情况下,向第一节点发送第一分区删除请求;第一分区删除请求用于指示第一节点删除本地上存在的所有分区;
[0012]或者,在监测到消费设备不再接收第二节点发送的当前批次消息的情况下,向第二节点发送第二分区删除请求;第二分区删除请求用于指示第二节点删除本地上存在的所有分区。
[0013]在其中一个实施例中,在确定当前批次消息的数据量大于第一预设阈值之后,上述方法还包括:
[0014]根据当前批次消息的数据量和第一预设阈值指示的数据量之间的差值,确定第一分区的容量,并根据第一分区的容量生成扩充分区请求。
[0015]在其中一个实施例中,在确定当前批次消息的数据量不大于第一预设阈值之后,上述方法还包括:
[0016]根据当前批次消息的数据量确定第二分区的容量,并根据第二分区的容量生成构建分区请求。
[0017]在其中一个实施例中,在确定当前批次消息的数据量不大于第一预设阈值之后,上述方法还包括:
[0018]获取距离当前批次消息的发送时间之前历史时间段内,第一节点上存储的每一批次消息的数据量;
[0019]确定每一批次消息的数据量是否均小于第二预设阈值,若均小于,则执行向消息服务集群中的第二节点发送构建分区请求的步骤;若存在任一批次消息的数据量不小于,则向第一节点发送存储请求;存储请求指示第一节点接收当前批次消息进行分区存储。
[0020]在其中一个实施例中,上述方法还包括:
[0021]确定上一批次消息的数据量,并根据上一批次消息的数据量确定第一预设阈值;或者,确定上一批次消息的存储位置,并根据存储位置对应节点上分区的容量确定第一预设阈值。
[0022]第二方面,本申请提供了一种分区的调整方法。上述方法应用于消息服务集群中的第一节点和第二节点,所述方法包括:
[0023]第一节点在接收到分区调整设备发送的扩充分区请求的情况下,在本地增加第一分区,并将接收到的生产设备发送的当前批次消息,存储至本地的分区和第一分区中进行处理后转发至消费设备;扩充分区请求是分区调整设备在确定当前批次消息的数据量大于第一预设阈值的情况下发送的请求;第一预设阈值由生产设备发送的上一批次消息的数据量或者由消息服务集群中各节点的分区大小确定;
[0024]第二节点在接收到分区调整设备发送的构建分区请求的情况下,在本地构建第二分区,并将接收到的生产设备发送的当前批次消息存储至第二分区中进行处理后转发至消费设备;构建分区请求是分区调整设备在确定当前批次消息的数据量不大于第一预设阈值的情况下发送的请求;第一预设阈值由生产设备发送的上一批次消息的数据量或者由消息服务集群中各节点的分区大小确定。
[0025]在其中一个实施例中,上述在本地增加第一分区,包括:
[0026]从扩充分区请求中提取出第一分区的容量,并在本地增加容量的第一分区。
[0027]在其中一个实施例中,上述在本地构建第二分区,包括:
[0028]从构建分区请求中提取出第二分区的容量,并在本地的其他节点增加容量的第二分区。
[0029]在其中一个实施例中,上述方法还包括:
[0030]第一节点在接收到第一分区删除请求时,删除第一分区;
[0031]第二节点在接收到第二分区删除请求时,删除第二分区。
[0032]第三方面,本申请还提供了一种分区的调整装置。所述装置包括:
[0033]确定模块,用于在监测到生产设备向消息服务集群发送当前批次消息的情况下,
确定当前批次消息的数据量是否大于第一预设阈值;第一预设阈值由生产设备发送的上一批次消息的数据量或者由消息服务集群中各节点的分区的容量确定;
[0034]第一发送模块,用于若大于,则向消息服务集群中的第一节点发送扩充分区请求;扩充分区请求用于指示第一节点在本地增加第一分区;
[0035]第二发送模块,用于若不大于,则向消息服务集群中的第二节点发送构建分区请求;构建分区请求用于指示第二节点在本地构建第二分区。
[0036]第四方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
[0037]第一存储模块,用于第一节点在接收到分区调整设备发送的扩充分区请求的情况下,在本地增加第一分区,并将接收到的生产设备发送的当前批次消息,存储至本地的分区和第一分区中进行处理后转发至消费设备;扩充分区请求是分区调整设备在确定当前批次消息的数据量大于第一预设阈值的情况下发送的请求;第一预设阈值由生产设备发送的上一批次消息的数据量或者由消息服务集群中各节点的分区大小确定;
[0038]第二存储模块,用于第二节点在接收到分区调整设备发送的构建分区请求的情况下,在本地构建第二分区,并将接收到的生产设备发送的当前批次消息存储至第二分区中进行处理后转发至消费设备;构建分区请求是分区调整设备在确定当前批次消息的数据量不大于第一预设阈值的情况下发送的请求;本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种分区的调整方法,其特征在于,所述方法应用于分区调整设备,所述方法包括:在监测到生产设备向消息服务集群发送当前批次消息的情况下,确定所述当前批次消息的数据量是否大于第一预设阈值;所述第一预设阈值由所述生产设备发送的上一批次消息的数据量或者由所述消息服务集群中各节点的分区的容量确定;若大于,则向所述消息服务集群中的第一节点发送扩充分区请求;所述扩充分区请求用于指示所述第一节点在本地增加第一分区;若不大于,则向所述消息服务集群中的第二节点发送构建分区请求;所述构建分区请求用于指示所述第二节点在本地构建第二分区。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:在监测到消费设备不再接收所述第一节点发送的当前批次消息的情况下,向所述第一节点发送第一分区删除请求;所述第一分区删除请求用于指示所述第一节点删除本地上存在的所有分区;或者,在监测到消费设备不再接收所述第二节点发送的当前批次消息的情况下,向所述第二节点发送第二分区删除请求;所述第二分区删除请求用于指示所述第二节点删除本地上存在的所有分区。3.根据权利要求1或2所述的方法,其特征在于,在确定所述当前批次消息的数据量大于第一预设阈值之后,所述方法还包括:根据所述当前批次消息的数据量和所述第一预设阈值指示的数据量之间的差值,确定所述第一分区的容量,并根据所述第一分区的容量生成所述扩充分区请求。4.根据权利要求1或2所述的方法,其特征在于,在确定所述当前批次消息的数据量不大于第一预设阈值之后,所述方法还包括:根据所述当前批次消息的数据量确定所述第二分区的容量,并根据所述第二分区的容量生成所述构建分区请求。5.根据权利要求1或2所述的方法,其特征在于,在确定所述当前批次消息的数据量不大于第一预设阈值之后,所述方法还包括:获取距离所述当前批次消息的发送时间之前历史时间段内,所述第一节点上存储的每一批次消息的数据量;确定所述每一批次消息的数据量是否均小于第二预设阈值,若均小于,则执行所述向所述消息服务集群中的第二节点发送构建分区请求的步骤;若存在任一批次消息的数据量不小于,则向所述第一节点发送存储请求;所述存储请求指示所述第一节点接收所述当前批次消息进行分区存储。6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:确定所述上一批次消息的数据量,并根据所述上一批次消息的数据量确定所述第一预设阈值;或者,确定所述上一批次消息的存储位置,并根据所述存储位置对应节点上分区的容量确定所述第一预设阈值。7.一种分区的调整方法,其特征在于,所述方法应用于消息服务集群中的第一节点和第二节点,所述方法包括:所述第一节点在接收到分区调整设备发送的扩充分区请求的情况下,在本地增加第一分区,并将接收到的生产设备发送的当前批次消息,存储至所述本地的分区和所述第一分
区中进行处理后转发至消费设备;所述扩充分区请求是所述分区调整设备在确定所述当前批次消息的数据量大于第一预设阈值的情况下发送的请求;所述第一预设阈值由所述生产设备发送的上一批次消息的数据量或者由所述消息服务集群中各节点的分区大小确定;所述第二节点在接收到所...

【专利技术属性】
技术研发人员:杨旭杰冯子杰钟小威孟江
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:

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

1