[发明专利]分布式流式计算应用的在线扩容方法、装置、计算机设备有效
申请号: | 201910586414.X | 申请日: | 2019-07-01 |
公开(公告)号: | CN110377585B | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 易帆;段效晨;康林;赵艳杰;秦占明 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F16/21 | 分类号: | G06F16/21;G06F16/22 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 孟德栋 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 计算 应用 在线 扩容 方法 装置 计算机 设备 | ||
本申请涉及一种分布式流式计算应用的在线扩容方法、装置、计算机设备和存储介质,该方法包括:当一条数据进入分布式流式计算应用时,在第一数据表中查找该条数据的分区键值所对应的时间戳,并将查找到的该时间戳记为第一时间戳;在第二数据表中查找小于第一时间戳且最接近第一时间戳的时间戳,并将查找到的该时间戳记为第二时间戳;按照预设的分区方式将该条数据分配到第二时间戳所对应的节点列表中的一个节点上。本申请提供的扩容方法,节点增加对于老数据的分布没有影响,不会连带已有的本地状态在节点上的分布发生改变,不需要停机,不会影响到分布式流式计算应用的使用,不需要采用专门的工具对节点上的本地状态进行迁移。
技术领域
本申请涉及分布式流式计算应用扩容技术领域,尤其涉及一种分布式流式计算应用的在线扩容方法、装置、计算机设备和存储介质。
背景技术
流式计算应用是当前大数据领域的新锐技术,它聚焦于实时处理不断产生的数据流,并且实现了本地存储数据流的状态(简称本地状态)、乱序数据处理、自动处理反压等功能,从而具有低时延、高吞吐量等特点。为了应对极高的吞吐量,流式计算应用往往是部署在多台机器上的分布式应用,即不断注入的数据流通过用户定义的方式被分散到多台机器上,每台机器上处理整个数据流的一部分,并存储这部分数据流相关的本地状态,其中每一台机器可以称为一个节点。然而,随着数据流量的加大,往往需要对流式计算应用进行扩容,即增加节点的数量。增加节点之后,已有的数据在节点上的分布会发生改变,连带与数据相关联的本地状态在各节点上的分布也发生变化,因此需要采用专门的工具将原先节点上存储的本地状态进行迁移,此过程需要进行停机。在迁移完成之后,才能重启机器,这样会使得流式应用在一段时间内不可用,而且带来数据迁移的麻烦。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种分布式流式计算应用的在线扩容方法、装置、计算机设备和存储介质。
第一方面,本申请提供了一种分布式流式计算应用的在线扩容方法,包括:
当一条数据进入分布式流式计算应用时,在第一数据表中查找该条数据的分区键值所对应的时间戳,并将查找到的该时间戳记为第一时间戳;其中,所述第一数据表中包括多个分区键值以及每一个分区键值首次出现的时间戳;
在第二数据表中查找小于所述第一时间戳且最接近所述第一时间戳的时间戳,并将查找到的该时间戳记为第二时间戳;其中,所述第二数据表中包括多个时间戳和每一个时间戳所对应的节点列表,所述多个时间戳包括所述分布式流式计算应用启动时的时间戳和所述分布式流式计算应用每次节点增加完成的时间戳,所述启动时的时间戳所对应的节点列表为所述分布式流式计算应用启动时的节点的列表,所述每次节点增加完成的时间戳所对应的节点列表为该次所增加的节点的列表;
按照预设的分区方式将该条数据分配到所述第二时间戳所对应的节点列表中的一个节点上。
第二方面,本申请提供了一种分布式流式计算应用的在线扩容装置,包括:
第一查找模块,用于在一条数据进入分布式流式计算应用时,在第一数据表中查找该条数据的分区键值所对应的时间戳,并将查找到的该时间戳记为第一时间戳;其中,所述第一数据表中包括多个分区键值以及每一个分区键值首次出现的时间戳;
第二查找模块,用于在第二数据表中查找小于所述第一时间戳且最接近所述第一时间戳的时间戳,并将查找到的该时间戳记为第二时间戳;其中,所述第二数据表中包括多个时间戳和每一个时间戳所对应的节点列表,所述多个时间戳包括所述分布式流式计算应用启动时的时间戳和所述分布式流式计算应用每次节点增加完成的时间戳,所述启动时的时间戳所对应的节点列表为所述分布式流式计算应用启动时的节点的列表,所述每次节点增加完成的时间戳所对应的节点列表为该次所增加的节点的列表;
数据分区模块,用于按照预设的分区方式将该条数据分配到所述第二时间戳所对应的节点列表中的一个节点上。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910586414.X/2.html,转载请声明来源钻瓜专利网。