数据迁移方法、装置、介质及电子设备制造方法及图纸

技术编号:20329136 阅读:10 留言:0更新日期:2019-02-13 05:44
本发明专利技术的实施例提供了一种数据迁移方法、装置、介质及电子设备,涉及大数据技术领域。该方法包括:在接收到对迁移源中一个或多个槽Slot的以Slot为单位的数据迁移请求时,将所述数据迁移请求放入待迁移的任务队列中;通过定时任务检测所述任务队列中是否存在所述数据迁移请求;在检测到存在所述数据迁移请求时,异步地将与所述数据迁移请求对应的Slot上的待迁移数据发送至迁移目标。本发明专利技术实施例的技术方案能够降低迁移过程中正常业务请求的阻塞,并且能够更好地保障数据一致性。

【技术实现步骤摘要】
数据迁移方法、装置、介质及电子设备
本专利技术的实施例涉及大数据领域,更具体地,本专利技术的实施例涉及数据迁移方法、数据迁移装置、计算机可读存储介质以及电子设备。
技术介绍
本部分旨在为权利要求书中陈述的本专利技术的实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。Redis是一个开源的、可基于内存亦可持久化的键值对(key-value)存储数据库,Redis基于单线程处理用户请求,数据迁移是Redis数据库的高频需求。目前,在一种技术方案中,Redis数据库在进行数据迁移时,采用的是同步迁移方式。在采用同步迁移方式进行数据迁移时,Redis服务器接收到迁移命令后,开始解析迁移命令,基于迁移命令以Key为单位打包迁移源上需要迁移的数据,每个数据封装对应一个迁移命令,将打包后的迁移数据发送给迁移目标,并等待接收到迁移目标返回的所有迁移数据的反馈。
技术实现思路
但是,在这种技术方案中,打包迁移数据以及同步等待迁移目标的反馈都会造成其他请求的阻塞,以单个键值为单位进行数据迁移,在迁移失败后难以保障迁移源与迁移目标的数据一致性。因此在现有技术中,难以达到令人满意的数据迁移效果。为此,非常需要一种改进的数据处理方法,以使得能够降低在迁移数据过程中导致的业务请求的阻塞,保障数据一致性。在本上下文中,本专利技术的实施例期望提供一种数据处理方法、数据处理装置、计算机可读存储介质以及电子设备。在本专利技术实施例的第一方面中,提供了一种数据迁移方法,包括:在接收到对迁移源中一个或多个槽Slot的以Slot为单位的数据迁移请求时,将所述数据迁移请求放入待迁移的任务队列中;通过定时任务检测所述任务队列中是否存在所述数据迁移请求;在检测到存在所述数据迁移请求时,异步地将与所述数据迁移请求对应的Slot上的待迁移数据发送至迁移目标。在本公开的一种示例性实施例中,所述数据迁移方法还包括:对所述待迁移数据的键Key的迁移状态进行标识,所述迁移状态包括:未迁移、迁移中、已迁移以及业务请求中,每个所述Slot包含有多个所述Key。在本公开的一种示例性实施例中,所述数据迁移方法还包括:在接收到数据删除操作请求时,获取与所述数据删除操作请求对应的数据的迁移状态的标识;基于所述标识判断与所述数据删除操作请求对应的数据是否处于迁移中;在判定所述数据处于迁移中时,将所述数据标识为已删除;添加与所述数据删除操作请求对应的数据操作日志。在本公开的一种示例性实施例中,所述数据迁移方法还包括:在接收到数据更新操作请求时,获取与所述数据更新操作请求对应的数据的迁移状态的标识;基于所述标识判断与所述数据更新操作请求对应的数据是否处于迁移中;在判定所述数据处于迁移中时,确定所述数据的数据类型;基于所述数据的数据类型对所述数据进行处理。在本公开的一种示例性实施例中,基于所述数据的数据类型对所述数据进行处理,包括:在所述数据类型为字符串类型时,通过所述数据更新操作请求中的新数据更新所述数据,并将所述数据标识为删除。在本公开的一种示例性实施例中,基于所述数据的数据类型对所述数据进行处理,包括:在所述数据类型为链表类型时,对与所述数据更新操作请求对应的数据进行互斥处理;在更新操作完成后,解除所述互斥处理并继续对与所述更新操作对应的数据进行迁移处理。在本公开的一种示例性实施例中,所述数据迁移方法还包括:在所述数据更新操作请求处理完成时,添加与所述数据更新操作请求对应的数据操作日志。在本公开的一种示例性实施例中,所述数据迁移方法还包括:在接收到数据增加操作请求时,添加与所述数据增加操作请求对应的数据操作日志;将所述数据操作日志发送至所述迁移目标。在本公开的一种示例性实施例中,所述数据迁移方法还包括:在接收到数据操作请求时,获取与所述数据操作请求对应的数据的迁移状态的标识;基于所述标识判断与所述数据操作请求对应的数据是否处于已迁移;在判定所述数据处于已迁移时,添加与所述数据操作请求对应的数据操作日志;将所述数据操作日志发送至所述迁移目标。在本公开的一种示例性实施例中,所述数据迁移方法还包括:将迁移过程中的新增数据保存在目标存储结构中;在打包完所述待迁移数据后通过所述定时任务将所述新增数据添加到对应的Slot中。在本公开的一种示例性实施例中,所述数据迁移方法还包括:在接收到所述迁移目标返回的所述一个或多个Slot迁移成功的消息后,删除所述迁移源中对应的Slot中的数据。在本公开的一种示例性实施例中,异步地将与所述数据迁移请求对应的Slot上的待迁移数据发送至迁移目标,包括:通过多线程的方式打包与所述数据迁移请求对应的Slot上的待迁移数据;异步地将所述待迁移数据发送至迁移目标。根据本公开的第二方面,提供了一种数据迁移装置,包括:请求处理单元,用于在接收到对迁移源中一个或多个Slot的以Slot为单位的数据迁移请求时,将所述数据迁移请求放入待迁移的任务队列中;检测单元,用于通过定时任务检测所述任务队列中是否存在所述数据迁移请求;迁移单元,用于在检测到存在所述数据迁移请求时,异步地将与所述数据迁移请求对应的Slot上的待迁移数据发送至迁移目标。在本公开的一种示例性实施例中,所述数据迁移装置还包括:状态标识单元,用于对所述待迁移数据的键Key的迁移状态进行标识,所述迁移状态包括:未迁移、迁移中、已迁移以及业务请求中,每个所述Slot包含有多个所述Key。在本公开的一种示例性实施例中,所述数据迁移装置还包括:第一标识获取单元,用于在接收到数据删除操作请求时,获取与所述数据删除操作请求对应的数据的迁移状态的标识;第一判断单元,用于基于所述标识判断与所述数据删除操作请求对应的数据是否处于迁移中;标识单元,用于在判定所述数据处于迁移中时,将所述数据标识为已删除;第一日志添加单元,用于添加与所述数据删除操作请求对应的数据操作日志。在本公开的一种示例性实施例中,所述数据迁移装置还包括:第二标识获取单元,用于在接收到数据更新操作请求时,获取与所述数据更新操作请求对应的数据的迁移状态的标识;第二判断单元,用于基于所述标识判断与所述数据更新操作请求对应的数据是否处于迁移中;数据类型确定单元,用于在判定所述数据处于迁移中时,确定所述数据的数据类型;数据处理单元,用于基于所述数据的数据类型对所述数据进行处理。在本公开的一种示例性实施例中,所述数据处理单元被配置成:在所述数据类型为字符串类型时,通过所述数据更新操作请求中的新数据更新所述数据,并将所述数据标识为删除。在本公开的一种示例性实施例中,所述数据处理单元被配置成:在所述数据类型为链表类型时,对与所述数据更新操作请求对应的数据进行互斥处理;在更新操作完成后,解除所述互斥处理并继续对与所述更新操作对应的数据进行迁移处理。在本公开的一种示例性实施例中,所述数据迁移装置还包括:第二日志添加单元,用于在所述数据更新操作请求处理完成时,添加与所述数据更新操作请求对应的数据操作日志。在本公开的一种示例性实施例中,所述数据迁移装置还包括:第三日志添加单元,用于在接收到数据增加操作请求时,添加与所述数据增加操作请求对应的数据操作日志;第一日志发送单元,用于将所述数据操作日志发送至所述迁移目标。在本公开的一种示例性实施例中,所述数据迁移装置还包括:第三标本文档来自技高网...

【技术保护点】
1.一种数据迁移方法,其特征在于,包括:在接收到对迁移源中一个或多个槽Slot的以Slot为单位的数据迁移请求时,将所述数据迁移请求放入待迁移的任务队列中;通过定时任务检测所述任务队列中是否存在所述数据迁移请求;在检测到存在所述数据迁移请求时,异步地将与所述数据迁移请求对应的Slot上的待迁移数据发送至迁移目标。

【技术特征摘要】
1.一种数据迁移方法,其特征在于,包括:在接收到对迁移源中一个或多个槽Slot的以Slot为单位的数据迁移请求时,将所述数据迁移请求放入待迁移的任务队列中;通过定时任务检测所述任务队列中是否存在所述数据迁移请求;在检测到存在所述数据迁移请求时,异步地将与所述数据迁移请求对应的Slot上的待迁移数据发送至迁移目标。2.根据权利要求1所述的数据迁移方法,其特征在于,所述数据迁移方法还包括:对所述待迁移数据的键Key的迁移状态进行标识,所述迁移状态包括:未迁移、迁移中、已迁移以及业务请求中,每个所述Slot包含有多个所述Key。3.根据权利要求2所述的数据迁移方法,其特征在于,所述数据迁移方法还包括:在接收到数据删除操作请求时,获取与所述数据删除操作请求对应的数据的迁移状态的标识;基于所述标识判断与所述数据删除操作请求对应的数据是否处于迁移中;在判定所述数据处于迁移中时,将所述数据标识为已删除;添加与所述数据删除操作请求对应的数据操作日志。4.根据权利要求2所述的数据迁移方法,其特征在于,所述数据迁移方法还包括:在接收到数据更新操作请求时,获取与所述数据更新操作请求对应的数据的迁移状态的标识;基于所述标识判断与所述数据更新操作请求对应的数据是否处于迁移中;在判定所述数据处于迁移中时,确定所述数据的数据类型;基于所述数据的数据类型对所述数据进行处理。5.根据权利要求4所述的数据迁移方法,其特征在于...

【专利技术属性】
技术研发人员:毛迎春张晓龙尧飘海陈谔焦智慧
申请(专利权)人:杭州朗和科技有限公司
类型:发明
国别省市:浙江,33

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

1