【技术实现步骤摘要】
数据存储方法、装置、系统、服务器、控制节点及介质
本专利技术涉及数据存储
,特别是涉及一种数据存储方法、装置、系统、服务器、控制节点及介质。
技术介绍
随着信息技术的快速发展,数据存储系统中的数据量越来越大。为了满足大数据量的存储需求,在多台服务器上运行的分布式存储系统得到了广泛的应用。为了提高分布式存储系统的整体存储总量,在分布式存储系统中采用分片存储的方式,将数据存储至分片中,使得分布式存储系统可以扩展,从而增加分布式存储系统的整体存储总量。当数据要进行存储时,由于每一分片的数据存储范围不同,需要先确定该待存储数据应该存储到哪个分片,可以直接判断该待存储数据在哪个分片的数据存储范围之内,还可以通过一致性哈希算法确定该待存储数据存储在哪个数据分片上中。在确定分片之后,将数据存储至所确定的分片。为了保证数据和服务的高可用性,往往需要为分布式存储系统提供必要的容错机制,对各个分片进行冗余备份。在不同的服务器上存储相同的分片,可以避免由于单个服务器不可用时造成的数据丢失、存储服务不可用等情况的发生。需要说明的是,服务器分为主服务器和从服务器,这里所说的主服务器和 ...
【技术保护点】
1.一种数据存储方法,其特征在于,应用于待分裂分片所属的主服务器,所述方法包括:接收控制节点发送的针对待分裂分片的准备拆分指令;将所述准备拆分指令发送给所述待分裂分片所属的从服务器,以使每一所述从服务器在接收到所述准备拆分指令后,获得所述待分裂分片的数据拆分点,并将所述数据拆分点发送给所述主服务器;在接收到数据拆分点的数量大于第一数量阈值时,将所述数据拆分点发送给所述控制节点,以使所述控制节点向所述主服务器发送拆分存储指令;在接收到所述拆分存储指令后,将所述拆分存储指令发送给每一所述从服务器,以使每一所述从服务器将所述待分裂分片进行拆分存储,得到目标分片,在得到目标分片后, ...
【技术特征摘要】
1.一种数据存储方法,其特征在于,应用于待分裂分片所属的主服务器,所述方法包括:接收控制节点发送的针对待分裂分片的准备拆分指令;将所述准备拆分指令发送给所述待分裂分片所属的从服务器,以使每一所述从服务器在接收到所述准备拆分指令后,获得所述待分裂分片的数据拆分点,并将所述数据拆分点发送给所述主服务器;在接收到数据拆分点的数量大于第一数量阈值时,将所述数据拆分点发送给所述控制节点,以使所述控制节点向所述主服务器发送拆分存储指令;在接收到所述拆分存储指令后,将所述拆分存储指令发送给每一所述从服务器,以使每一所述从服务器将所述待分裂分片进行拆分存储,得到目标分片,在得到目标分片后,向所述主服务器发送第一消息,其中,所述第一消息为拆分存储完成的消息;在接收到所述第一消息的数量大于第二数量阈值时,将所述待分裂分片进行拆分存储,得到所述目标分片。2.根据权利要求1所述的方法,其特征在于,在所述在接收到所述第一消息的数量大于第二数量阈值时,将所述待分裂分片进行拆分存储,得到所述目标分片之后,所述方法还包括:向所述控制节点发送所述第一消息,以使所述控制节点在接收到所述第一消息后,根据所述数据拆分点和拆分存储之前的所述待分裂分片的数据存储范围,确定所述目标分片的数据存储范围和目标数据存储范围;将预先记录的待分裂分片对应的数据存储范围更新为所述目标数据存储范围,并记录所述目标分片与针对所述目标分片所确定的数据存储范围之间的关联关系,其中,所述目标数据存储范围为拆分存储之后的所述待分裂分片的数据存储范围。3.根据权利要求2所述的方法,其特征在于,在所述目标分片中所存储的数据与所述待分裂分片所存储的数据相同的情况下,所述方法还包括:获得分片与数据存储范围之间的关联关系;根据所获得的关联关系,判断自身所存储的每一分片是否存储了不在该分片数据存储范围内的数据;如果是,删除未在该分片的数据存储范围内的数据。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:获得针对所述待分裂分片的数据存储请求,其中,所述数据存储请求中包含待存储数据;判断当前是否已经接收到所述拆分存储指令;如果未接收到所述拆分存储指令,将所述数据存储请求发送给所述从服务器,以使得每一所述从服务器将所述待存储数据存储至所述待分裂分片;并将第二消息发送给所述主服务器;其中,所述第二消息为数据存储完成的消息;在接收到所述第二消息的数量大于第二数量阈值时,将所述待存储数据存储至所述待分裂分片;如果接收到所述拆分存储指令,判断当前是否已经向所述控制节点发送所述第一消息;如果是,将所述数据存储请求发送给所述从服务器,以使得每一所述从服务器从所述目标分片和拆分存储之后的待分裂分片中,确定存储所述待存储数据的分片,并将所述待存储数据存储至所确定的分片,并将所述第二消息发送给所述主服务器;在接收到所述第二消息的数量大于第二数量阈值时,从所述目标分片和拆分存储之后的待分裂分片中,确定存储所述待存储数据的分片,并将所述待存储数据存储至所确定的分片;如果否,在向所述控制节点发送所述第一消息后,执行将所述数据存储请求发送给所述从服务器的步骤。5.一种数据存储方法,其特征在于,应用于控制节点,所述方法包括:向待分裂分片所属的主服务器发送针对待分裂分片的准备拆分指令以使所述主服务器在接收到拆分存储指令后,将所述拆分存储指令发送给所述待分裂分片所属的从服务器;在接收到数据拆分点的数量大于第一数量阈值时,将所述数据拆分点发送给所述控制节点;在接收到所述数据拆分点后,向所述主服务器发送拆分存储指令;以使所述主服务器在接收到所述拆分存储指令后,将所述拆分存储指令发送给每一所述从服务器;在接收到所述第一消息的数量大于第二数量阈值时,将所述待分裂分片进行拆分存储,得到所述目标分片。6.根据权利要求5所述的方法,其特征在于,在接收到所述数据拆分点后,向所述主服务器发送拆分存储指令之后,所述方法还包括:在接收到所述主服务器发送的所述第一消息后,根据所述数据拆分点和拆分存储之前的所述待分裂分片对应的数据存储范围,确定所述目标分片对应的数据存储范围和目标数据存储范围;将预先记录的待分裂分片对应的数据存储范围更新为所述目标数据存储范围,并记录所述目标分片与针对所述目标分片所确定的数据存储范围之间的关联关系,其中,所述目标数据存储范围为拆分存储之...
【专利技术属性】
技术研发人员:李坚,王文姝,
申请(专利权)人:北京金山云网络技术有限公司,北京金山云科技有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。