【技术实现步骤摘要】
Redis集群中数据管理方法、装置、介质及电子设备
本公开涉及数据迁移
,特别涉及一种Redis集群中数据管理方法、装置、介质及电子设备。
技术介绍
Redis(RemoteDictionaryServer,远程字典服务)是一个开源的使用ANSIC语言编写、支持网络、可基于内存亦可持久化的日志型、键-值数据库。将Redis数据库应用于实际应用的一种方式是建立Redis集群。目前,在使用Redis集群时,将缓存数据从源服务器迁移到目标服务器过程中,无法支持外部访问,即,需要停止服务才能实现缓存数据在服务器之间的迁移,这样就导致Redis集群的可用性降低。
技术实现思路
在数据迁移
,为了解决上述技术问题,本公开的目的在于提供一种Redis集群中数据管理方法、装置、介质及电子设备。根据本公开的一方面,提供了一种Redis集群中数据管理方法,所述Redis集群包括多个Redis群组,每一用户对应一个实例和一个客户端,每一实例的用户数据被划分为多个分片,每一分片绑定一个Redis群组,所述方法包括:向ZooKeeper集群发送迁移路径信息和对需要迁移的分片的状态信息的第一更新指令,使所述ZooKeeper集群保存所述迁移路径信息,并根据所述第一更新指令将所述需要迁移的分片的状态信息由正常状态更新为迁移状态,以便所述需要迁移的分片对应的客户端在接收到对所述需要迁移的分片中目标用户数据的读写请求之后,根据监听到的所述需要迁移的分片的状态信息为迁移状态,基于所述迁移路径信息将所述目标用户数据从源Re ...
【技术保护点】
1.一种Redis集群中数据管理方法,所述Redis集群包括多个Redis群组,每一用户对应一个实例和一个客户端,每一实例的用户数据被划分为多个分片,每一分片绑定一个Redis群组,其特征在于,所述方法包括:/n向ZooKeeper集群发送迁移路径信息和对需要迁移的分片的状态信息的第一更新指令,使所述ZooKeeper集群保存所述迁移路径信息,并根据所述第一更新指令将所述需要迁移的分片的状态信息由正常状态更新为迁移状态,以便所述需要迁移的分片对应的客户端在接收到对所述需要迁移的分片中目标用户数据的读写请求之后,根据监听到的所述需要迁移的分片的状态信息为迁移状态,基于所述迁移路径信息将所述目标用户数据从源Redis群组迁移至目标Redis群组,并在所述目标Redis群组中根据所述读写请求对所述目标用户数据进行读写,其中,所述迁移路径信息包括源Redis群组信息和目标Redis群组信息,所述ZooKeeper集群保存各分片的状态信息,所述迁移状态用于指示客户端在接收到与该迁移状态对应的目标用户数据的读写请求之后,将该目标用户数据从源Redis群组迁移至目标Redis群组以及所要迁移的用户数 ...
【技术特征摘要】
1.一种Redis集群中数据管理方法,所述Redis集群包括多个Redis群组,每一用户对应一个实例和一个客户端,每一实例的用户数据被划分为多个分片,每一分片绑定一个Redis群组,其特征在于,所述方法包括:
向ZooKeeper集群发送迁移路径信息和对需要迁移的分片的状态信息的第一更新指令,使所述ZooKeeper集群保存所述迁移路径信息,并根据所述第一更新指令将所述需要迁移的分片的状态信息由正常状态更新为迁移状态,以便所述需要迁移的分片对应的客户端在接收到对所述需要迁移的分片中目标用户数据的读写请求之后,根据监听到的所述需要迁移的分片的状态信息为迁移状态,基于所述迁移路径信息将所述目标用户数据从源Redis群组迁移至目标Redis群组,并在所述目标Redis群组中根据所述读写请求对所述目标用户数据进行读写,其中,所述迁移路径信息包括源Redis群组信息和目标Redis群组信息,所述ZooKeeper集群保存各分片的状态信息,所述迁移状态用于指示客户端在接收到与该迁移状态对应的目标用户数据的读写请求之后,将该目标用户数据从源Redis群组迁移至目标Redis群组以及所要迁移的用户数据的位置;
基于所述迁移路径信息和所述需要迁移的分片处于迁移状态,开始从所述源Redis群组获取所述需要迁移的分片中的用户数据,并将所述用户数据迁移至所述目标Redis群组进行存储;
若所述需要迁移的分片中的用户数据均已被存储至所述目标Redis群组,向所述ZooKeeper集群发送对需要迁移的分片的状态信息的第二更新指令,由所述ZooKeeper集群根据所述第二更新指令将所述需要迁移的分片的状态信息由迁移状态更新为正常状态。
2.根据权利要求1所述的方法,其特征在于,在向ZooKeeper集群发送迁移路径信息和对需要迁移的分片的状态信息的第一更新指令之前,所述方法还包括:
将在所述Redis集群中部署的Redis群组的Redis群组信息添加至所述ZooKeeper集群,以便将所述部署的Redis群组的Redis群组信息作为迁移路径信息中的目标Redis群组信息。
3.根据权利要求1所述的方法,其特征在于,在向ZooKeeper集群发送迁移路径信息和对需要迁移的分片的状态信息的第一更新指令之前,所述方法还包括:
获取所述Redis集群中各Redis群组的接入实例数量信息和内存使用信息并存储至所述ZooKeeper集群;
根据管理员的指令从所述ZooKeeper集群读取所述Redis集群中各Redis群组的接入实例数量信息和内存使用信息并进行展示,以便接收所述管理员根据展示出的接入实例数量信息和内存使用信息提交的源Redis群组信息和目标Redis群组信息,并发送至所述ZooKeeper集群,以作为迁移路径信息进行存储。
4.根据权利要求3所述的方法,其特征在于,所述获取所述Redis集群中各Redis群组的接入实例数量信息和内存使用信息并存储至所述ZooKeeper集群,包括:
在根据预定规则确定的时刻定期获取所述Redis集群中各Redis群组的接入实例数量信息和内存使用信息并存储至所述ZooKeeper集群。
5.根据权利要求1所述的方法,其特征在于,所述ZooKeeper集群保存了分片信息和对应的Redis群组信息,所述客户端通过如下方式处理接收到的读写请求:
对ZooKeeper集群中的分片信息和Redis群组信息进行监听,以将ZooKeeper集群中与该客户端对应的分片信息和Redis群组信息同步至该客户端;
当接收到对用户数据的读写请求,根据监听得到的与该客户端对应的分片信息和Redis群组信息确定所述用户数据对应的分片信息和Redis群组信息;
按照所述分片信息和Redi...
【专利技术属性】
技术研发人员:刘双叶,周晶,
申请(专利权)人:深圳壹账通智能科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。