集群切换方法与设备与流程

文档序号:12752933阅读:来源:国知局

技术特征:

1.一种集群切换方法,其中,该方法包括:

在旧的主集群向新的主集群切换开始后,将旧的主集群上待同步的剩余原始数据同步到新的主集群上,其中,将新的主集群上所述剩余原始数据的优先级设置为低级;

在将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,在新的主集群上响应写操作请求,其中,将写操作请求对应的新数据的优先级设置为高级,并只允许在新的主集群上优先级为高级的数据的版本覆盖优先级为低级或高级的同一数据的另一版本;

在将旧的主集群上待同步的剩余原始数据同步到新的主集群结束后,在新的主集群上响应写操作请求。

2.如权利要求1所述的方法,其中,在将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,还包括:

在旧的和新的主集群上响应的读操作请求;

在将旧的主集群上待同步的剩余原始数据同步到新的主集群结束后,还包括:

在新的主集群上响应读操作请求。

3.如权利要求1或2所述的方法,其中,所述写操作请求包括对数据的新增、改写和删除操作请求。

4.如权利要求3所述的方法,其中,当所述写操作请求为对数据的新增或改写时,在将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,在新的主集群上响应写操作请求的同时,还包括:

将所述新增或改写操作请求写入消息队列;

从所述消息队列中读取新增或改写操作请求,将读取到的新增或改写操作请求所对应的新的主集群上的新增或改写数据同步到旧的主集群上后,删除消息队列中所述读取到的写操作请求。

5.如权利要求4所述的方法,其中,读取到的新增或改写操作请求所对应的新的主集群上的新增或改写数据同步到旧的主集群上后,删除消息队列中所述读取到的写操作请求,包括:

判断新的主集群上是否存在读取到的新增或改写操作请求所对应的新增或改写数据,

若存在,将该新增或改写数据同步到旧的主集群上,删除消息队列中所述读取到的新增或改写操作请求;

若不存在,删除消息队列中所述读取到的新增或改写操作请求。

6.如权利要求3所述的方法,其中,当所述写操作请求为对数据的删除操作请求时,在将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,在新的主集群上响应写操作请求的同时,还包括:

将所述删除操作请求写入消息队列;

从消息队列中读取删除操作请求,根据读取到删除操作请求使所述旧的和新的主集群上的对应数据保持一致后,删除消息队列中所述读取到的删除操作请求。

7.如权利要求6所述的方法,其中,根据读取到删除操作请求使所述旧的和新的主集群上的对应数据保持一致后,删除消息队列中所述读取到的删除操作请求,包括:

若读取到删除操作请求所对应的删除数据在旧的和新的主集群上都不存 在,则删除消息队列中所述读取到的删除操作请求;

若读取到删除操作请求所对应的删除数据在新的主集群上不存在,而在旧的主集群上存在,则删除旧的主集群上对应的删除数据后,删除消息队列中所述读取到的删除操作请求;

若读取到删除操作请求所对应的删除数据在旧的主集群上不存在,而在新的主集群上存在,则将新的主集群上对应的删除数据同步到旧的主集群上后,删除消息队列中所述读取到的删除操作请求;

若读取到删除操作请求所对应的删除数据在旧的和新的主集群上都存在,则删除消息队列中所述读取到的删除操作请求。

8.如权利要求2至7任一项所述的方法,其中,将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,在旧的和新的主集群上响应的读操作请求,包括:

判断是否从旧的和新的主集群上读取到所述读操作请求所对应的数据,

若在旧的或新的主集群读取到对应的数据,则返回该数据;

若在旧的和新的主集群都读取到对应的数据,则返回新的主集群上读取到的对应的数据。

9.一种集群切换设备,其中,该设备包括:

同步装置,用于在旧的主集群向新的主集群切换开始后,将旧的主集群上待同步的剩余原始数据同步到新的主集群上,其中,将新的主集群上所述剩余原始数据的优先级设置为低级;

同步期间写响应装置,用于在将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,在新的主集群上响应写操作请求,其中,将写操作 请求对应的新数据的优先级设置为高级,并只允许在新的主集群上优先级为高级的数据的版本覆盖优先级为低级或高级的同一数据的另一版本;

同步结束写响应装置,用于在将旧的主集群上待同步的剩余原始数据同步到新的主集群结束后,在新的主集群上响应写操作请求。

10.如权利要求9所述的设备,其中,所述设备还包括同步期间读响应装置,用于在将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,在旧的和新的主集群上响应的读操作请求;

所述设备还包括同步结束读响应装置,用于在将旧的主集群上待同步的剩余原始数据同步到新的主集群结束后,在新的主集群上响应读操作请求。

11.如权利要求9或10所述的设备,其中,所述写操作请求包括对数据的新增、改写和删除操作请求。

12.如权利要求11所述的设备,其中,所述设备还包括新增或改写请求消息队列装置,用于当所述写操作请求为对数据的新增或改写时,在将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,在新的主集群上响应写操作请求的同时,将所述新增或改写操作请求写入消息队列,从所述消息队列中读取新增或改写操作请求,将读取到的新增或改写操作请求所对应的新的主集群上的新增或改写数据同步到旧的主集群上后,删除消息队列中所述读取到的写操作请求。

13.如权利要求12所述的设备,其中,所述新增或改写请求消息队列装置,用于判断新的主集群上是否存在读取到的新增或改写操作请求所对应的新增或改写数据,若存在,将该新增或改写数据同步到旧的主集群上,删 除消息队列中所述读取到的新增或改写操作请求;若不存在,删除消息队列中所述读取到的新增或改写操作请求。

14.如权利要求11所述的设备,其中,所述设备还包括删除请求消息队列装置,用于当所述写操作请求为对数据的删除操作请求时,在将旧的主集群上待同步的剩余原始数据同步到新的主集群期间,在新的主集群上响应写操作请求的同时,将所述删除操作请求写入消息队列,从消息队列中读取删除操作请求,根据读取到删除操作请求使所述旧的和新的主集群上的对应数据保持一致后,删除消息队列中所述读取到的删除操作请求。

15.如权利要求14所述的设备,其中,所述删除请求消息队列装置,用于若读取到删除操作请求所对应的删除数据在旧的和新的主集群上都不存在,则删除消息队列中所述读取到的删除操作请求;若读取到删除操作请求所对应的删除数据在新的主集群上不存在,而在旧的主集群上存在,则删除旧的主集群上对应的删除数据后,删除消息队列中所述读取到的删除操作请求;若读取到删除操作请求所对应的删除数据在旧的主集群上不存在,而在新的主集群上存在,则将新的主集群上对应的删除数据同步到旧的主集群上后,删除消息队列中所述读取到的删除操作请求;若读取到删除操作请求所对应的删除数据在旧的和新的主集群上都存在,则删除消息队列中所述读取到的删除操作请求。

16.如权利要求10至15任一项所述的设备,其中,所述同步期间读响应装置,用于判断是否从旧的和新的主集群上读取到所述读操作请求所对应的数据,若在旧的或新的主集群读取到对应的数据,则返回该数据;若在旧的和新的主集群都读取到对应的数据,则返回新的主集群上读取到的对应的数据。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1