CN105516230B - 一种数据处理方法及装置 - Google Patents
一种数据处理方法及装置 Download PDFInfo
- Publication number
- CN105516230B CN105516230B CN201410545693.2A CN201410545693A CN105516230B CN 105516230 B CN105516230 B CN 105516230B CN 201410545693 A CN201410545693 A CN 201410545693A CN 105516230 B CN105516230 B CN 105516230B
- Authority
- CN
- China
- Prior art keywords
- data
- copy
- version number
- multiple copies
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据处理方法及装置,其中方法可包括:在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,其中,多份副本数据为分别存储在不同的存储服务器中的副本数据;判断目标数据的多份副本数据是否一致;若不一致,从目标数据的多份副本数据中确定一份正确的副本数据;根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理。采用本发明实施例,可检测到副本数据的不一致,且可确定正确的副本数据,从而根据正确的副本数据进行业务处理,保证了数据的一致性,提高了数据的读写性能。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种数据处理方法及装置。
背景技术
传统的网络存储系统将所有数据集中存储在一台设备中,而分布式存储系统是指将数据分散存储在多台独立的设备上,在每台独立的设备上存储数据的副本。GFS(GoogleFile system,一种可扩展的分布式文件系统)中的多副本读写采用WARO(write all readone,写所有副本,读一份),一个写请求在成功写完数据到的所有副本后有效,若写一份副本失败,则写失败。在由设备异常、网络问题等情况导致写副本失败时,导致数据的副本不一致,数据的写性能差,无法确保数据的一致性。
发明内容
本发明实施例提供一种数据处理方法及装置。可检测到副本数据的不一致,且可确定正确的副本数据,从而根据正确的副本数据进行业务处理,保证了数据的一致性。
本发明第一方面提供一种数据处理方法,可包括:
在接收到对目标数据的业务请求时,读取所述目标数据的多份副本数据,其中,所述多份副本数据为分别存储在不同的存储服务器中的副本数据;
判断所述目标数据的多份副本数据是否一致;
在所述目标数据的多份副本数据不一致时,从所述目标数据的多份副本数据中确定一份正确的副本数据;
根据所述确定的正确的副本数据对所述目标数据的多份副本数据进行业务处理。
本发明第二方面提供一种数据处理装置,可包括:
读取模块,用于在接收到对目标数据的业务请求时,读取所述目标数据的多份副本数据,其中,所述多份副本数据为分别存储在不同的存储服务器中的副本数据;
判断模块,用于判断所述目标数据的多份副本数据是否一致;
确定模块,用于在所述判断模块的判断结果为否时,从所述目标数据的多份副本数据中确定一份正确的副本数据;
业务处理模块,用于根据所述确定的正确的副本数据对所述目标数据的多份副本数据进行业务处理。
本发明第三方面提供一种访问服务器,可包括如第二方面所述的装置。
实施本发明实施例,具有如下有益效果:
在分布式存储系统中,目标数据的多份副本数据可分别在不同的存储服务器中,在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,在判断到目标数据的多份副本数据不一致时,从目标数据的多份副本数据中确定一份正确的副本数据,进而可根据正确的副本数据对目标数据的多份副本数据进行业务处理。通过本发明实施例,可检测到副本数据的不一致,且可确定正确的副本数据,从而根据正确的副本数据进行业务处理,保证了数据的一致性,提高了数据的读写性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据处理方法的流程图;
图2为本发明实施例提供的写副本数据的示意图;
图3为本发明实施例提供的修复副本数据的示意图;
图4为本发明实施例提供的搬迁副本数据的示意图;
图5为本发明实施例提供的一种数据处理装置的结构示意图;
图6为本发明实施例提供的一种访问服务器的结构示意图;
图7为本发明实施例提供的一种数据处理系统的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的数据处理方案可以应用于分布式存储系统中对数据的读、写或搬迁等业务操作,可包括客户端(client)、访问服务器(access server)以及存储服务器,进一步的,还可以包括:修复服务器或搬迁服务器。进一步的,还可以包括分布式管理单元。
具体的,目标数据的多份副本数据可分别存储于不同的存储服务器中,可部署多个存储服务器,其中,存储服务器用于数据的磁盘存储,可接收并处理访问服务器发送的数据访问请求。
访问服务器可控制数据的读取、更新和修复流程,访问服务器可转发客户端的请求,进行路由查找以及访问流程控制。
访问服务器在目标数据的多份副本数据不一致时,向修复服务器提交该目标数据的数据标识,从而修复服务器可对副本数据不一致的目标数据的数据标识进行管理。
搬迁服务器用于在存储服务器存在异常或者扩容等情况时,控制将存储服务器上的数据搬迁到其他存储服务器中。
分布式管理单元用于管理存储的数据和数据的路由信息等。
现有技术的分布式文件系统中在由设备异常、网络问题等情况导致写副本失败时,导致数据的副本不一致,数据的写性能差,没有对副本数据的一致性进行检测,无法确保数据的一致性。
本发明实施例中,副本数据不一致的出现原因例如,当目标数据的多份副本数据中出现部分副本数据离线,例如设备异常网络问题等情况时,导致部分副本数据更新失败,则会出现副本数据的不一致;又当业务请求在不同的访问服务器上出现并发访问时,比如某个访问服务器坏死、过载时,客户端切换部分业务请求道新扩容的访问服务器上,并发更新相同的副本数据,导致副本数据不一致。
而本发明实施例中,在分布式存储系统中,目标数据的多份副本数据可分别在不同的存储服务器中,在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,在判断到目标数据的多份副本数据不一致时,从目标数据的多份副本数据中确定一份正确的副本数据,进而可根据正确的副本数据对目标数据的多份副本数据进行业务处理。通过本发明实施例,可检测到副本数据的不一致,且可确定正确的副本数据,从而根据正确的副本数据进行业务处理,保证了数据的一致性,提高了数据的读写性能。
下面将结合附图1~附图4,对本发明实施例提供的数据处理方法进行详细介绍。
请参见图1,为本发明实施例提供的一种数据处理方法的流程图,本发明实施例以访问服务器作为执行主体进行描述。如图1所示,该方法可包括以下步骤:S101~S104。
S101,在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,其中,多份副本数据为分别存储在不同的存储服务器中的副本数据。
作为一种可选的实施方式,访问服务器可接收客户端发送的对目标数据的业务请求,其中,对目标数据的业务请求可包括:读数据请求、写数据请求或更新数据请求等等。进一步的,业务请求可包括目标数据的数据标识,其中,目标数据的数据标识可以为目标数据在存储时用于唯一标识目标数据的键值、流水号、字符串等,具体不受本发明实施例的限制。
进一步的,访问服务器可读取目标数据的多份副本数据,其中,多份副本数据为分别存储在不同的存储服务器中的副本数据。访问服务器可分别读取到每个存储服务器中的副本数据。具体的,可读取副本数据的版本号。
S102,判断目标数据的多份副本数据是否一致。在S102的判断结果为否时,执行步骤S103。如果S102的判断结果为是,根据业务请求对目标数据的多份副本数据进行业务处理。
作为一种可选的实施方式,可判断目标数据的多份副本数据是否一致,具体的,可判断目标数据的多份副本数据的版本号是否一致。
具体实现中,可判断目标数据的各个副本数据的版本号是否一致,其中,副本数据的版本号可以包括:序列号、副本状态以及访问服务器的标识,例如,48bit的版本号(version)可以为:
其中,Sequence(32bit)为自增长的序列号(从0开始,每次更新加1),Duplicate_ver(3bit)为多份副本数据的副本状态,例如可以设定副本状态正常为0,副本状态异常为1,Access_id(13bit)为访问服务器的标识,例如可以为访问服务器的编号,用于区分不同访问服务器的请求,还可以用于发现串行化请求修改导致的副本数据不一致。
在判断目标数据的各个副本数据的版本号是否一致时,可分别比较版本号中的本号中的序列号、副本状态和访问服务器的标识,进而判断目标数据的多份副本数据是否一致。
S103,从目标数据的多份副本数据中确定一份正确的副本数据。
作为一种可选的实施方式,在判断到目标数据的多份副本数据不一致时,从目标数据的多份副本数据中确定一份正确的副本数据。具体的,例如,步骤S103中,若确定的正确的副本数据为副本数据A,则返回副本数据A和副本数据A的版本号;若确定的正确的副本数据为副本数据B,则返回副本数据B和副本数据B的版本号等等。
进一步的,从目标数据的多份副本数据中确定一份正确的副本数据具体可以包括:
比较目标数据的多份副本数据的版本号,将多份副本数据的版本号中最新的版本号确定为目标数据的正确版本号;
将正确版本号对应的副本数据确定为正确的副本数据。
具体实现中,可比较目标数据的多份副本数据的版本号,将多份副本数据的版本号中最新的版本号确定为目标数据的正确版本号。具体的,可分别比较版本号中的本号中的序列号、副本状态和访问服务器的标识。可将序列号最新的版本号确定为目标数据的正确版本号。进一步的,还可依据版本号中的副本状态确定正确的副本数据。进一步可选的,在多个访问服务器并发时,还可以依据访问服务器的标识确定正确的副本数据。
例如,若目标数据A的3份副本数据为:副本数据V1、副本数据V2以及副本数据V3,如下表所示:
其中,行编号1所在行为版本号的初始值,1/000/10,1为序列号,000分别为3个副本数据的副本状态,10为访问服务器的标识。行编号2所在行对应为无异常请求时三个副本数据V1、V2、V3对应的版本号,则判断的结果为三个副本数据一致。行编号3所在行对应两台访问服务器并发时对应的三个副本数据V1、V2、V3对应的版本号,序列号、副本状态相同,可通过访问服务器的标识进行区别。行编号4所在行对应的副本数据V1、V2写失败,副本数据V3写成功,则可依据序列号进行比较,将序列号最大的确定为正确的版本号。行编号5所在行对应的副本数据中不能获取到全部版本号,则依据副本状态进行比较,则4/001/10中3个副本数据的副本状态分别为:V1正常、V2正常、V3异常,以此可依据副本状态发现副本数据的不一致,并将副本状态正常的副本数据确定为正确的副本数据。
S104,根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理。
作为一种可选的实施方式,可将根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理。具体的,业务处理可以包括:读操作、写操作、数据搬迁、数据修复等等。
进一步可选的,若业务请求包括:目标数据的数据标识,则根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理具体可以包括:
向修复服务器发送修复信息,以使修复服务器根据修复服务器控制访问服务器执行数据修复,其中,修复信息包括目标数据的数据标识。
具体实现中,在访问服务器发送副本数据的不一致,且确定正确的副本数据后,可向修复服务器发送修复信息,其中,修复信息可包括目标数据的数据标识,以使修复服务器根据修复服务器控制访问服务器执行数据修复。
进一步的,访问服务器在接收到客户端发送的业务更新请求时,业务更新请求中包括目标数据的数据标识,访问服务器在发现副本数据的不一致,且确定正确的副本数据后,先执行数据修复,再执行数据更新。
进一步的,在向修复服务器发送修复信息之后,根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理具体还可以包括:
接收修复服务器发送的修复请求,其中,修复请求包括目标数据的数据标识;
确定目标数据的数据标识对应的多份副本数据的版本号中与正确版本号不一致的版本号,对不一致的版本号对应的副本数据进行修复。
具体实现中,访问服务器在目标数据的多份副本数据不一致时,可向修复服务器发生修复信息,其中,修复信息可包括目标数据的数据标识,从而修复服务器可对副本数据不一致的目标数据的数据标识进行管理。修复服务器可向访问服务器发送修复请求,从而访问服务器可接收到修复请求,其中,修复请求包括目标数据的数据标识,访问服务器可确定目标数据的数据标识对应的多份副本数据的版本号中与正确版本号不一致的版本号,读取正确版本号对应的副本数据,对不一致的版本号对应的副本数据进行修复,具体的,写每个版本号与正确版本号不一致的副本数据,在全部写成功时,向修复服务器返回成功响应。
进一步可选的,修复服务器可向访问服务器发送修复请求,其中,修复请求包括目标数据的数据标识,从而访问服务器可重新读取目标数据的标识对应的多份副本数据,判断多份副本数据是否一致,若不一致,对不一致的副本数据进行修复。具体的,可比较多份副本数据的版本号是否一致,若不一致,确定正确版本号,并确定与正确版本号不一致的版本号,对不一致的版本号对应的副本数据进行修复。
进一步可选的,业务请求可以包括:目标数据的数据标识,则本发明实施例提供的方法还可以包括步骤:
向搬迁服务器发送数据搬迁请求,其中,数据搬迁请求包括目标数据的数据标识和目标存储服务器的标识,以使搬迁服务器控制将目标数据的数据标识对应的正确的副本数据写入目标存储服务器标识对应的目标存储服务器。
具体实现中,访问服务器在发现副本数据不一致后,确定正确的副本数据,读取该正确的副本数据,向搬迁服务器发送数据搬迁请求,其中,数据搬迁请求包括目标数据的数据标识和目标存储服务器的标识,以使搬迁服务器控制将目标数据的数据标识对应的正确的副本数据写入目标存储服务器标识对应的目标存储服务器。例如,若访问服务器确定的正确的副本数据为数据A,则可将数据A写入目标存储服务器中。进一步的,若发现数据一致,则将目标数据的副本数据写到目标存储服务器中。
进一步可选的,访问服务器可向搬迁服务器发送数据搬迁请求,其中,数据搬迁请求包括目标数据的数据标识,搬迁服务器可读取目标数据的标识的多份副本数据,并判断多份副本数据是否一致,若不一致,确定目标数据的标识对应的正确的副本数据,并将正确的副本数据写入目标存储服务器。
进一步可选的,若业务请求包括:携带指定版本号的写数据请求,则根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理具体可以包括:
判断正确版本号与指定版本号是否相同;
若正确版本号与指定版本号相同,更新指定版本号对应的副本数据;
若正确版本号与指定版本号不相同,向客户端返回失败响应。
具体实现中,在正确版本号与指定版本号相同时,更新指定版本号对应的副本数据,写每个版本号与指定版本号一致的副本。
进一步可选的,本发明实施例中写操作采用NRW策略。若业务请求包括:客户端发送的写数据请求;业务处理包括:写操作;若目标数据的副本数据的总数量为N,N为大于1的正整数;读取的目标数据的副本数据的最小数量为R,R为大于0的正整数;则完成写操作所需要写入的副本数据的最小数量为W;
则根据确定的正确的副本数据对所述目标数据的多份副本数据进行业务处理之后,本发明实施例提供的方法还可以包括:
在满足R+W>N的条件时,向客户端返回成功响应。
进一步可选的,如果业务请求中包括的写数据请求未携带指定版本号,则在写操作成功的副本数据的数量大于或等于W时,返回成功响应。在写操作成功的副本数据的数量小于N时或者判断到目标数据的多份副本数据不一致时,向修复服务器发送修复信息。
例如,N=3,W=2时,则在目标数据的3份副本数据中,至少2份副本数据写操作成功才返回成功响应,否则返回失败响应。其中,允许写操作的副本数据的版本号,与步骤S103中确定的正确版本号相一致。
进一步可选的,客户端发送的业务请求中可包括目标数据的标识,若访问服务器接收到多个客户端分别发送的业务请求,则访问服务器可对目标数据的标识相同的业务请求作串行化处理,对于目标数据的标识相同的业务请求,确保同一时刻仅对一个请求更新数据。例如,对于相同的目标数据的标识的业务请求,第一个业务请求可进行处理,第二个业务请求、第三个业务请求,则进入排队等候队列;或者,第一个业务请求在进行业务处理,则第二个业务请求则返回失败响应,具体不受本发明实施例的限制。
进一步的,副本数据的版本号中包括访问服务器的标识。在多台访问服务器并发访问时,例如,多台访问服务器向修复服务器发送修复消息时,对于目标数据的标识相同的修复消息,可通过比对副本数据的版本号确定是哪一台访问服务器的访问请求。进而可避免串行化出错或并发请求导致副本数据的不一致。进一步的,在存储服务器中,可支持CAS(Compare and swap,比较和交换),进而可防止并发修改。
进一步可选的,如图2所示,是本发明实施例提供的写副本数据的示意图,如图所示,客户端21向访问服务器22发送业务请求,访问服务器22读取目标数据的多份副本数据,具体的,分别读取存储服务器23中存储的目标数据的副本数据201、存储服务器24中存储的目标数据的副本数据202、存储服务器25中存储的目标数据的副本数据203,访问服务器判断目标数据的多份副本数据是否一致,若不一致,从目标数据的多份副本数据中确定一份正确的副本数据,本实施例中,设存储服务器23中存储的副本数据201和存储服务器24中存储的副本数据202一致,副本数据201与存储服务器25中存储的副本数据203不一致,且可确定存储服务器24中存储的副本数据202为正确的副本数据,则访问服务器22在存储服务器23和存储服务器24执行写两份副本数据的操作。
进一步可选的,如图3所示,是本发明实施例提供的修复副本数据的示意图,如图所示,客户端31向访问服务器32发送业务请求,访问服务器32读取目标数据的多份副本数据,具体的,分别读取存储服务器33中存储的目标数据的副本数据301、存储服务器34中存储的目标数据的副本数据302、存储服务器35中存储的目标数据的副本数据303,访问服务器判断目标数据的多份副本数据是否一致,若不一致,从目标数据的多份副本数据中确定一份正确的副本数据,本实施例中,设存储服务器33中存储的副本数据301、存储服务器34中存储的副本数据302与存储服务器35中存储的副本数据303均不一致,且可确定存储服务器34中存储的副本数据302为正确的副本数据,则访问服务器32向修复服务器36发送修复消息,修复服务器36向访问服务器32返回修复请求,从而访问服务器32根据修复请求对存储服务器33中存储的副本数据301和存储服务器35中存储的副本数据303执行数据修复。进一步的,访问服务器32还可在接收到修复请求后,再次读取目标数据的标识对应的多份副本数据,判断该多份副本数据是否一致,若不一致,对不一致的副本数据进行修复。
进一步可选的,如图4所示,是本发明实施例提供的搬迁副本数据的示意图,如图所示,访问服务器41向搬迁服务器42发送数据搬迁请求搬迁服务器42读取目标数据的标识对应的多份副本数据,具体的,分别读取存储服务器43中存储的目标数据的副本数据401、存储服务器44中存储的目标数据的副本数据402、存储服务器35中存储的目标数据的副本数据303,搬迁服务器42判断目标数据的多份副本数据是否一致,若不一致,从目标数据的多份副本数据中确定一份正确的副本数据,本实施例中,设存储服务器43中存储的副本数据401、存储服务器44中存储的副本数据402与存储服务器45中存储的副本数据403均不一致,且可确定存储服务器44中存储的副本数据402为正确的副本数据,则搬迁服务器42向控制将存储服务器44中存储的副本数据402分别写入目标存储服务器46、目标存储服务器47和目标存储服务器48中。
本发明实施例提供一种数据处理方法,在分布式存储系统中,目标数据的多份副本数据可分别在不同的存储服务器中,在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,在判断到目标数据的多份副本数据不一致时,从目标数据的多份副本数据中确定一份正确的副本数据,进而可根据正确的副本数据对目标数据的多份副本数据进行业务处理。通过本发明实施例,可检测到副本数据的不一致,且可确定正确的副本数据,从而根据正确的副本数据进行业务处理,保证了数据的一致性,提高了数据的读写性能。
进一步的,还可在检测到副本数据不一致时,对不一致的副本数据执行修复操作,还可以控制将正确的副本数据进行搬迁写入目标存储服务器。进一步的,还可以规避并发修改引发的副本数据不一致的情况,在请求版本号与副本数据版本号一致时才允许执行对副本数据的修复,避免覆盖已经更新的副本数据。进而可提高业务请求的成功率,确保了副本数据在修复、搬迁等业务操作过程中的一致性。
下面将结合附图5,对本发明实施例提供的数据处理装置进行详细介绍。需要说明的是,附图5所示的数据处理装置,用于执行本发明图1所示实施例的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明图1所示的实施例。
请参见图5,为本发明实施例提供的一种数据处理装置的结构示意图;该装置可包括:读取模块51、判断模块52、确定模块53以及业务处理模块54。
读取模块51,用于在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,其中,多份副本数据为分别存储在不同的存储服务器中的副本数据。
作为一种可选的实施方式,访问服务器可接收客户端发送的对目标数据的业务请求,其中,对目标数据的业务请求可包括:读数据请求、写数据请求或更新数据请求等等。进一步的,业务请求可包括目标数据的数据标识,其中,目标数据的数据标识可以为目标数据在存储时用于唯一标识目标数据的键值、流水号、字符串等,具体不受本发明实施例的限制。
进一步的,读取模块51可读取目标数据的多份副本数据,其中,多份副本数据为分别存储在不同的存储服务器中的副本数据。读取模块51可分别读取到每个存储服务器中的副本数据。具体的,读取模块51可读取副本数据的版本号。
判断模块52,用于判断目标数据的多份副本数据是否一致。
作为一种可选的实施方式,判断模块52可判断目标数据的多份副本数据是否一致,具体的,判断模块52可判断目标数据的多份副本数据的版本号是否一致。
具体实现中,判断模块52可判断目标数据的各个副本数据的版本号是否一致,其中,副本数据的版本号可以包括:序列号、副本状态以及访问服务器的标识,例如,48bit的版本号(version)可以为:
其中,Sequence(32bit)为自增长的序列号(从0开始,每次更新加1),Duplicate_ver(3bit)为多份副本数据的副本状态,例如可以设定副本状态正常为0,副本状态异常为1,Access_id(13bit)为访问服务器的标识,例如可以为访问服务器的编号,用于区分不同访问服务器的请求,还可以用于发现串行化请求修改导致的副本数据不一致。
在判断目标数据的各个副本数据的版本号是否一致时,判断模块52可分别比较版本号中的本号中的序列号、副本状态和访问服务器的标识,进而判断目标数据的多份副本数据是否一致。
确定模块53,用于在判断模块52的判断结果为否时,从目标数据的多份副本数据中确定一份正确的副本数据。
作为一种可选的实施方式,在判断模块52的判断结果为否时,即目标数据的多份副本数据不一致时,从从目标数据的多份副本数据中确定一份正确的副本数据。具体的,例如,若确定的正确的副本数据为副本数据A,则返回副本数据A和副本数据A的版本号;若确定的正确的副本数据为副本数据B,则返回副本数据B和副本数据B的版本号等等。
进一步的,确定模块53可具体用于:比较目标数据的多份副本数据的版本号,将多份副本数据的版本号中最新的版本号确定为目标数据的正确版本号;将正确版本号对应的副本数据确定为正确的副本数据。
具体实现中,可比较比较目标数据的多份副本数据的版本号,将多份副本数据的版本号中最新的版本号确定为目标数据的正确版本号。具体的,可分别比较版本号中的本号中的序列号、副本状态和访问服务器的标识。可将序列号最新的版本号确定为目标数据的正确版本号。进一步的,还可依据版本号中的副本状态确定正确的副本数据。进一步可选的,在多个访问服务器并发时,还可以依据访问服务器的标识确定正确的副本数据。
例如,若目标数据A的3份副本数据为:副本数据V1、副本数据V2以及副本数据V3,如下表所示:
行编号 | 请求情况 | V1 | V2 | V3 | 判断一致性 |
1 | 1/000/10 | 1/000/10 | 1/000/10 | ||
2 | 无异常请求 | 2/000/10 | 2/000/10 | 2/000/10 | 一致 |
3 | 两台access并发 | 3/000/10 | 3/000/11 | 3/000/10 | access_id区分 |
4 | 只写一台成功 | 4/000/10 | 依赖sequence偏序 | ||
5 | 获取不到全部版本号 | 4/001/10 | 依赖Duplicate_ver偏序 |
其中,行编号1所在行为版本号的初始值,1/000/10,1为序列号,000分别为3个副本数据的副本状态,10为访问服务器的标识。行编号2所在行对应为无异常请求时三个副本数据V1、V2、V3对应的版本号,则判断的结果为三个副本数据一致。行编号3所在行对应两台访问服务器并发时对应的三个副本数据V1、V2、V3对应的版本号,序列号、副本状态相同,可通过访问服务器的标识进行区别。行编号4所在行对应的副本数据V1、V2写失败,副本数据V3写成功,则可依据序列号进行比较,将序列号最大的确定为正确的版本号。行编号5所在行对应的副本数据中不能获取到全部版本号,则依据副本状态进行比较,则4/001/10中3个副本数据的副本状态分别为:V1正常、V2正常、V3异常,以此可依据副本状态发现副本数据的不一致,并将副本状态正常的副本数据确定为正确的副本数据。
业务处理模块54,用于根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理。
作为一种可选的实施方式,业务处理模块54可将根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理。具体的,业务处理可以包括:读操作、写操作、数据搬迁、数据修复等等。
进一步可选的,若业务请求包括:目标数据的数据标识,则业务处理模块54可以包括:修复信息发送单元。
修复信息发送单元,用于向修复服务器发送修复信息,以使修复服务器根据修复服务器控制所述装置执行数据修复,其中,修复信息包括目标数据的数据标识。
具体实现中,在访问服务器发送副本数据的不一致,且确定正确的副本数据后,可向修复服务器发送修复信息,其中,修复信息可包括目标数据的数据标识,以使修复服务器根据修复服务器控制访问服务器执行数据修复。
进一步的,访问服务器在接收到客户端发送的业务更新请求时,业务更新请求中包括目标数据的数据标识,访问服务器在发现副本数据的不一致,且确定正确的副本数据后,先执行数据修复,再执行数据更新。
进一步可选的,业务处理模块54还可以包括:修复请求接收单元和修复单元。
修复请求接收单元,用于接收修复服务器发送的修复请求,其中,修复请求包括目标数据的数据标识;
修复单元,用于确定目标数据的数据标识对应的多份副本数据的版本号中与正确版本号不一致的版本号,对所述不一致的版本号对应的副本数据进行修复。
具体实现中,访问服务器在目标数据的多份副本数据不一致时,可向修复服务器发生修复信息,其中,修复信息可包括目标数据的数据标识,从而修复服务器可对副本数据不一致的目标数据的数据标识进行管理。修复服务器可向访问服务器发送修复请求,从而访问服务器可接收到修复请求,其中,修复请求包括目标数据的数据标识,访问服务器可确定目标数据的数据标识对应的多份副本数据的版本号中与正确版本号不一致的版本号,读取正确版本号对应的副本数据,对不一致的版本号对应的副本数据进行修复,具体的,写每个版本号与正确版本号不一致的副本数据,在全部写成功时,向修复服务器返回成功响应。
进一步可选的,修复服务器可向访问服务器发送修复请求,从而修复请求接收单元可接收到修复请求,其中,修复请求包括目标数据的数据标识,从而读取模块51可重新读取目标数据的标识对应的多份副本数据,判断模块52可判断多份副本数据是否一致,若不一致,业务处理模块54可对不一致的副本数据进行修复。具体的,可比较多份副本数据的版本号是否一致,若不一致,确定正确版本号,并确定与正确版本号不一致的版本号,对不一致的版本号对应的副本数据进行修复。
进一步的,若业务请求包括:目标数据的数据标识,则本发明实施例提供的装置还可以包括:搬迁请求发送模块。
搬迁请求发送模块,用于向搬迁服务器发送数据搬迁请求,其中,数据搬迁请求包括目标数据的数据标识和目标存储服务器的标识,以使搬迁服务器控制将目标数据的数据标识对应的正确的副本数据写入目标存储服务器标识对应的目标存储服务器。
具体实现中,访问服务器在发现副本数据不一致后,确定正确的副本数据,读取该正确的副本数据,向搬迁服务器发送数据搬迁请求,其中,数据搬迁请求包括目标数据的数据标识和目标存储服务器的标识,以使搬迁服务器控制将目标数据的数据标识对应的正确的副本数据写入目标存储服务器标识对应的目标存储服务器。例如,若访问服务器确定的正确的副本数据为数据A,则可将数据A写入目标存储服务器中。进一步的,若发现数据一致,则将目标数据的副本数据写到目标存储服务器中。
进一步可选的,访问服务器可向搬迁服务器发送数据搬迁请求,其中,数据搬迁请求包括目标数据的数据标识,搬迁服务器可读取目标数据的标识的多份副本数据,并判断多份副本数据是否一致,若不一致,确定目标数据的标识对应的正确的副本数据,并将正确的副本数据写入目标存储服务器。
进一步可选的,若业务请求包括:携带指定版本号的写数据请求,则业务处理模块54还可以包括:判断单元、更新单元和响应单元。
判断单元,用于判断正确版本号与指定版本号是否相同;
更新单元,用于在判断单元的判断结果为是时,更新指定版本号对应的副本数据;
响应单元,用于在判断单元的判断结果为否时,向客户端返回失败响应。
具体实现中,在正确版本号与指定版本号相同时,更新指定版本号对应的副本数据,写每个版本号与指定版本号一致的副本。
进一步可选的,本发明实施例提供的数据处理装置还可以包括:响应模块。具体实现中,本发明实施例中写操作采用NRW策略。若业务请求包括:客户端发送的写数据请求;业务处理包括:写操作;若目标数据的副本数据的总数量为N,N为大于1的正整数;读取模块读取的目标数据的副本数据的最小数量为R,R为大于0的正整数;则完成写操作所需要写入的副本数据的最小数量为W。
响应模块,用于在满足R+W>N的条件时,向所述客户端返回成功响应。
进一步可选的,如果业务请求中包括的写数据请求未携带指定版本号,则在写操作成功的副本数据的数量大于或等于W时,返回成功响应。在写操作成功的副本数据的数量小于N时或者判断到目标数据的多份副本数据不一致时,向修复服务器发送修复信息。
例如,N=3,W=2时,则在目标数据的3份副本数据中,至少2份副本数据写操作成功才返回成功响应,否则返回失败响应。其中,允许写操作的副本数据的版本号,与确定模块53确定的正确版本号相一致。
进一步可选的,客户端发送的业务请求中可包括目标数据的标识,若访问服务器接收到多个客户端分别发送的业务请求,则访问服务器可对目标数据的标识相同的业务请求作串行化处理,对于目标数据的标识相同的业务请求,确保同一时刻仅对一个请求更新数据。例如,对于相同的目标数据的标识的业务请求,第一个业务请求可进行处理,第二个业务请求、第三个业务请求,则进入排队等候队列;或者,第一个业务请求在进行业务处理,则第二个业务请求则返回失败响应,具体不受本发明实施例的限制。
进一步的,副本数据的版本号中包括访问服务器的标识。在多台访问服务器并发访问时,例如,多台访问服务器向修复服务器发送修复消息时,对于目标数据的标识相同的修复消息,可通过比对副本数据的版本号确定是哪一台访问服务器的访问请求。进而可避免串行化出错或并发请求导致副本数据的不一致。进一步的,在存储服务器可支持CAS,进而可防止并发修改。
进一步的,还可分别参见如图2、图3以及图4所示的本发明实施例提供的写副本数据的示意图、修复副本数据的示意图、搬迁副本数据的示意图,在此不重复。
本发明实施例提供一种数据处理装置,在分布式存储系统中,目标数据的多份副本数据可分别在不同的存储服务器中,读取模块课在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,在判断模块的判断结果为否,即判断到目标数据的多份副本数据不一致时,确定模块课从目标数据的多份副本数据中确定一份正确的副本数据,进而业务处理模块可根据正确的副本数据对目标数据的多份副本数据进行业务处理。通过本发明实施例,可检测到副本数据的不一致,且可确定正确的副本数据,从而根据正确的副本数据进行业务处理,保证了数据的一致性,提高了数据的读写性能。
进一步的,还可在检测到副本数据不一致时,对不一致的副本数据执行修复操作,还可以将正确的副本数据进行搬迁写入目标存储服务器。进一步的,还可以规避并发修改引发的副本数据不一致的情况,在请求版本号与副本数据版本号一致时才允许执行对副本数据的修复,避免覆盖已经更新的副本数据。进而可提高业务请求的成功率,确保了副本数据在修复、搬迁等业务操作过程中的一致性。
参见图6,是本发明实施例提供的一种访问服务器的结构示意图,本发明实施例提供的访问服务器包括图5所示的装置;该访问服务器的结构和功能可参见图5所示实施例的相关描述,在此不赘述。需要说明的是,本实施例的访问服务器可应用于上述方法中,本实施例提供的访问服务器与图1所示的数据处理方法相对应,为基于图1所示的应用方法的执行主体。
如图6所示,所述访问服务器600可以包括:至少一个处理器601,例如CPU,至少一个网络接口604,用户接口603,存储器605,至少一个通信总线602。其中,通信总线602用于实现这些组件之间的连接通信。其中,用户接口603可以包括显示屏(Display)、键盘(Keyboard),可选用户接口603还可以包括标准的有线接口、无线接口。网络接口604可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。网络接口604可与存储服务器、修复服务器或搬迁服务器等进行通信。存储器605可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器605可选的还可以是至少一个位于远离前述处理器601的存储装置。如图6所示,作为一种计算机存储介质的存储器605中可以包括操作系统、网络通信模块、用户接口模块以及数据写入应用程序。处理器601可以用于调用存储器605中存储的数据写入应用程序,并具体执行以下步骤:
在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,其中,多份副本数据为分别存储在不同的存储服务器中的副本数据;
判断目标数据的多份副本数据是否一致;
在目标数据的多份副本数据不一致时,从目标数据的多份副本数据中确定一份正确的副本数据;
根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理。
在一个实施例中,处理器601在执行读取目标数据的多份副本数据时,具体执行:读取目标数据的多份副本数据的版本号;
处理器601在执行判断目标数据的多份副本数据是否一致时,具体执行:判断目标数据的多份副本数据的版本号是否一致;
处理器601在执行从目标数据的多份副本数据中确定一份正确的副本数据时,具体执行以下步骤:
比较目标数据的多份副本数据的版本号,将多份副本数据的版本号中最新的版本号确定为目标数据的正确版本号;
将正确版本号对应的副本数据确定为正确的副本数据。
在一个实施例中,业务请求包括:所目标数据的数据标识;
处理器601在执行根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理时,具体执行以下步骤:
向修复服务器发送修复信息,以使修复服务器根据修复服务器控制访问服务器执行数据修复,其中,修复信息包括目标数据的数据标识。
在一个实施例中,处理器601在执行根据所述确定的正确的副本数据对目标数据的多份副本数据进行业务处理时,具体执行以下步骤:
接收修复服务器发送的修复请求,其中,修复请求包括目标数据的数据标识;
确定目标数据的数据标识对应的多份副本数据的版本号中与正确版本号不一致的版本号,对不一致的版本号对应的副本数据进行修复。
在一个实施例中,业务请求包括:目标数据的数据标识;
处理器601还用于执行以下步骤:
向搬迁服务器发送数据搬迁请求,其中,数据搬迁请求包括目标数据的数据标识和目标存储服务器的标识,以使搬迁服务器控制将目标数据的数据标识对应的正确的副本数据写入目标存储服务器标识对应的目标存储服务器。
在一个实施例中,业务请求包括:携带指定版本号的写数据请求;
处理器601在执行根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理时,具体执行以下步骤:
判断正确版本号与指定版本号是否相同;
若正确版本号与指定版本号相同,更新指定版本号对应的副本数据;
若正确版本号与指定版本号不相同,向客户端返回失败响应。
在一个实施例中,业务请求包括:客户端发送的写数据请求;业务处理包括:写操作;
若目标数据的副本数据的总数量为N,N为大于1的正整数;读取的所述目标数据的副本数据的最小数量为R,R为大于0的正整数;则完成写操作所需要写入的副本数据的最小数量为W;
处理器601在执行根据确定的正确的副本数据对目标数据的多份副本数据进行业务处理之后,还用于执行:
在满足R+W>N的条件时,向客户端返回成功响应。
本发明实施例提供一种数据处理方法,在分布式存储系统中,目标数据的多份副本数据可分别在不同的存储服务器中,在接收到对目标数据的业务请求时,读取目标数据的多份副本数据,在判断到目标数据的多份副本数据不一致时,从目标数据的多份副本数据中确定一份正确的副本数据,进而可根据正确的副本数据对目标数据的多份副本数据进行业务处理。通过本发明实施例,可检测到副本数据的不一致,且可确定正确的副本数据,从而根据正确的副本数据进行业务处理,保证了数据的一致性,提高了数据的读写性能。
本发明实施例还公开了一种数据处理系统,如图7所示,是本发明实施例提供的一种数据处理系统的示意图。如图7所示,本发明实施例提供的数据处理系统可包括:客户端71、访问服务器72、存储服务器731、存储服务器732……存储服务器73N,进一步可选的,还可以包括修复服务器74、搬迁服务器75。其中,N为大于1的正整数。其中,访问服务器72如图5所示实施例中的装置。进一步可选的,本发明实施例提供的数据处理系统还可以包括:分布式管理单元76,用于管理存储的数据和数据的路由信息等,分布式管理单元76可分别与访问服务器72和搬迁服务器75连接。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (24)
1.一种数据处理方法,其特征在于,所述方法包括:
在接收到对目标数据的业务请求时,读取所述目标数据的多份副本数据,其中,所述多份副本数据为分别存储在不同的存储服务器中的副本数据,所述业务请求包括客户端发送的写数据请求;
判断所述目标数据的多份副本数据是否一致;
在所述目标数据的多份副本数据不一致时,从所述目标数据的多份副本数据中确定一份正确的副本数据;
根据所述确定的正确的副本数据对所述目标数据的多份副本数据进行业务处理,所述业务处理包括写操作;
若所述目标数据的副本数据的总数量为N,N为大于1的正整数;所述读取的所述目标数据的副本数据的最小数量为R,R为大于0的正整数;完成所述写操作所需要写入的副本数据的最小数量为W;
在满足R+W>N的条件时,向所述客户端返回成功响应。
2.如权利要求1所述的方法,其特征在于,所述读取所述目标数据的多份副本数据包括:读取所述目标数据的多份副本数据的版本号;
所述判断所述目标数据的多份副本数据是否一致包括:
判断所述目标数据的多份副本数据的版本号是否一致;
所述从所述目标数据的多份副本数据中确定一份正确的副本数据,包括:
比较所述目标数据的多份副本数据的版本号,将所述多份副本数据的版本号中最新的版本号确定为所述目标数据的正确版本号;
将所述正确版本号对应的副本数据确定为所述正确的副本数据。
3.如权利要求2所述的方法,其特征在于,所述副本数据的版本号包括序列号;
所述将所述多份副本数据的版本号中最新的版本号确定为所述目标数据的正确版本号为:
将序列号最新的版本号确定为目标数据的正确版本号。
4.如权利要求1所述的方法,其特征在于,所述读取所述目标数据的多份副本数据包括:读取所述目标数据的多份副本数据的版本号,所述副本数据的版本号包括副本状态;
所述判断所述目标数据的多份副本数据是否一致包括:
判断所述目标数据的多份副本数据的版本号是否一致;
所述从所述目标数据的多份副本数据中确定一份正确的副本数据包括:
依据版本号中的副本状态确定正确的副本数据。
5.如权利要求1所述的方法,其特征在于,所述读取所述目标数据的多份副本数据包括:读取所述目标数据的多份副本数据的版本号,所述副本数据的版本号包括访问服务器的标识;
所述判断所述目标数据的多份副本数据是否一致包括:
判断所述目标数据的多份副本数据的版本号是否一致;
所述从所述目标数据的多份副本数据中确定一份正确的副本数据包括:
依据所述访问服务器的标识确定正确的副本数据。
6.如权利要求1所述的方法,其特征在于,所述业务请求包括:所述目标数据的数据标识;
所述根据所述确定的指定的副本数据对所述目标数据的多份副本数据进行业务处理,包括:
向修复服务器发送修复信息,以使所述修复服务器根据所述正确的副本数据控制访问服务器执行数据修复,其中,所述修复信息包括所述目标数据的数据标识。
7.如权利要求2所述的方法,其特征在于,所述根据所述确定的正确的副本数据对所述目标数据的多份副本数据进行业务处理包括:
接收修复服务器发送的修复请求,其中,所述修复请求包括所述目标数据的数据标识;
确定所述目标数据的数据标识对应的多份副本数据的版本号中与所述正确版本号不一致的版本号,对所述不一致的版本号对应的副本数据进行修复。
8.如权利要求1所述的方法,其特征在于,所述业务请求包括所述目标数据的数据标识;所述方法还包括:
向搬迁服务器发送数据搬迁请求,其中,所述数据搬迁请求包括所述目标数据的数据标识和目标存储服务器的标识,以使所述搬迁服务器控制将所述目标数据的数据标识对应的正确的副本数据写入所述目标存储服务器标识对应的目标存储服务器。
9.如权利要求2所述的方法,其特征在于,所述业务请求包括:携带指定版本号的写数据请求;
所述根据所述确定的正确的副本数据对所述目标数据的多份副本数据进行业务处理,包括:
判断所述正确版本号与所述指定版本号是否相同;
若所述正确版本号与所述指定版本号相同,更新所述指定版本号对应的副本数据;
若所述正确版本号与所述指定版本号不相同,向客户端返回失败响应。
10.一种数据处理装置,其特征在于,所述装置包括:
读取模块,用于在接收到对目标数据的业务请求时,读取所述目标数据的多份副本数据,其中,所述多份副本数据为分别存储在不同的存储服务器中的副本数据,所述业务请求包括客户端发送的写数据请求;
判断模块,用于判断所述目标数据的多份副本数据是否一致;
确定模块,用于在所述判断模块的判断结果为否时,从所述目标数据的多份副本数据中确定一份正确的副本数据;
业务处理模块,用于根据所述确定的正确的副本数据对所述目标数据的多份副本数据进行业务处理,所述业务处理包括写操作;
响应模块,用于在满足R+W>N的条件时,向所述客户端返回成功响应,其中所述目标数据的副本数据的总数量为N,N为大于1的正整数;所述读取模块读取的所述目标数据的副本数据的最小数量为R,R为大于0的正整数;完成所述写操作所需要写入的副本数据的最小数量为W。
11.如权利要求10所述的装置,其特征在于,所述读取模块具体用于:读取所述目标数据的多份副本数据的版本号;
所述判断模块具体用于:判断所述目标数据的多份副本数据的版本号是否一致;
所述确定模块具体用于:比较所述目标数据的多份副本数据的版本号,将所述多份副本数据的版本号中最新的版本号确定为所述目标数据的正确版本号;将所述正确版本号对应的副本数据确定为所述正确的副本数据。
12.如权利要求11所述的装置,其特征在于,所述副本数据的版本号包括序列号;
所述确定模块具体用于:将序列号最新的版本号确定为目标数据的正确版本号;将所述正确版本号对应的副本数据确定为所述正确的副本数据。
13.如权利要求10所述的装置,其特征在于,所述读取模块具体用于:读取所述目标数据的多份副本数据的版本号,所述副本数据的版本号包括副本状态;
所述判断模块具体用于:判断所述目标数据的多份副本数据的版本号是否一致;
所述确定模块具体用于:依据版本号中的副本状态确定正确的副本数据。
14.如权利要求10所述的装置,其特征在于,所述读取模块具体用于:读取所述目标数据的多份副本数据的版本号,所述副本数据的版本号包括访问服务器的标识;
所述判断模块具体用于:判断所述目标数据的多份副本数据的版本号是否一致;
所述确定模块具体用于:依据所述访问服务器的标识确定正确的副本数据。
15.如权利要求11所述的装置,其特征在于,所述业务请求包括:所述目标数据的数据标识;
所述业务处理模块包括:
修复信息发送单元,用于向修复服务器发送修复信息,以使所述修复服务器根据所述正确的副本数据控制所述装置执行数据修复,其中,所述修复信息包括所述目标数据的数据标识。
16.如权利要求11所述的装置,其特征在于,所述业务处理模块包括:
修复请求接收单元,用于接收修复服务器发送的修复请求,其中,所述修复请求包括所述目标数据的数据标识;
修复单元,用于确定所述目标数据的数据标识对应的多份副本数据的版本号中与所述正确版本号不一致的版本号,对所述不一致的版本号对应的副本数据进行修复。
17.如权利要求10所述的装置,其特征在于,所述业务请求包括:所述目标数据的数据标识;
所述装置还包括:
搬迁请求发送模块,用于向搬迁服务器发送数据搬迁请求,其中,所述数据搬迁请求包括所述目标数据的数据标识和目标存储服务器的标识,以使所述搬迁服务器控制将所述目标数据的数据标识对应的正确的副本数据写入所述目标存储服务器标识对应的目标存储服务器。
18.如权利要求11所述的装置,其特征在于,所述业务请求包括:携带指定版本号的写数据请求;
所述业务处理模块,包括:
判断单元,用于判断所述正确版本号与所述指定版本号是否相同;
更新单元,用于在所述判断单元的判断结果为是时,更新所述指定版本号对应的副本数据;
响应单元,用于在所述判断单元的判断结果为否时,向客户端返回失败响应。
19.一种访问服务器,其特征在于,包括如权利要求10~18任一所述的装置。
20.一种数据处理系统,其特征在于,包括:客户端、访问服务器、和N个存储服务器,其中,N为大于1的正整数;其中:
访问服务器包括如权利要求10~18任一所述的装置。
21.如权利要求20所述的数据处理系统,其特征在于,还包括修复服务器和搬迁服务器。
22.如权利要求21所述的数据处理系统,其特征在于,所述数据处理系统还包括:
分布式管理单元,用于管理存储的数据和数据的路由信息,分布式管理单元分别与访问服务器和搬迁服务器连接。
23.一种访问服务器,其特征在于,包括处理器和存储器,所述处理器和所述存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行如权利要求1-9任一项所述的方法。
24.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410545693.2A CN105516230B (zh) | 2014-10-15 | 2014-10-15 | 一种数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410545693.2A CN105516230B (zh) | 2014-10-15 | 2014-10-15 | 一种数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105516230A CN105516230A (zh) | 2016-04-20 |
CN105516230B true CN105516230B (zh) | 2019-06-25 |
Family
ID=55723862
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410545693.2A Active CN105516230B (zh) | 2014-10-15 | 2014-10-15 | 一种数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105516230B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107809326B (zh) * | 2016-09-09 | 2021-07-06 | 阿里巴巴集团控股有限公司 | 数据一致性的处理方法、装置和设备 |
CN107872490B (zh) * | 2016-09-28 | 2020-11-03 | 北京京东尚科信息技术有限公司 | 智能电器及在其与云端之间实现业务数据一致性的方法 |
CN106406770A (zh) * | 2016-09-28 | 2017-02-15 | 乐视控股(北京)有限公司 | 一种数据写入方法及系统 |
CN108572793B (zh) * | 2017-10-18 | 2021-09-10 | 北京金山云网络技术有限公司 | 数据写入和数据恢复方法、装置、电子设备及存储介质 |
CN110196680B (zh) * | 2018-03-27 | 2021-10-26 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置及存储介质 |
CN112148528A (zh) * | 2020-09-14 | 2020-12-29 | 北京同邦卓益科技有限公司 | 一种实现自动容错的方法和装置 |
CN112052226B (zh) * | 2020-09-29 | 2023-10-10 | 北京罗克维尔斯科技有限公司 | 一种车机服务数据的处理方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753625A (zh) * | 2009-12-28 | 2010-06-23 | 北京理工大学 | 对等网络环境下副本服务的部署及副本创建方法 |
CN101778131A (zh) * | 2010-01-05 | 2010-07-14 | 深圳中兴网信科技有限公司 | 数据同步系统 |
CN102521084A (zh) * | 2011-12-20 | 2012-06-27 | 惠州市亿能电子有限公司 | 一种数据存储以及读取方法 |
CN102646127A (zh) * | 2012-02-29 | 2012-08-22 | 浪潮(北京)电子信息产业有限公司 | 分布式文件系统副本选择方法和装置 |
CN103428288A (zh) * | 2013-08-13 | 2013-12-04 | 浙江大学 | 基于分区状态表和协调节点的副本同步方法 |
CN103729352A (zh) * | 2012-10-10 | 2014-04-16 | 腾讯科技(深圳)有限公司 | 分布式文件系统对多个副本数据进行处理的方法及该系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277316A (zh) * | 2008-05-21 | 2008-10-01 | 中兴通讯股份有限公司 | 一种文件下载的交互式纠错方法和系统 |
CN101364186B (zh) * | 2008-09-27 | 2012-01-25 | 腾讯科技(深圳)有限公司 | 数据迁移方法、数据迁移服务器及数据接口服务器 |
-
2014
- 2014-10-15 CN CN201410545693.2A patent/CN105516230B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101753625A (zh) * | 2009-12-28 | 2010-06-23 | 北京理工大学 | 对等网络环境下副本服务的部署及副本创建方法 |
CN101778131A (zh) * | 2010-01-05 | 2010-07-14 | 深圳中兴网信科技有限公司 | 数据同步系统 |
CN102521084A (zh) * | 2011-12-20 | 2012-06-27 | 惠州市亿能电子有限公司 | 一种数据存储以及读取方法 |
CN102646127A (zh) * | 2012-02-29 | 2012-08-22 | 浪潮(北京)电子信息产业有限公司 | 分布式文件系统副本选择方法和装置 |
CN103729352A (zh) * | 2012-10-10 | 2014-04-16 | 腾讯科技(深圳)有限公司 | 分布式文件系统对多个副本数据进行处理的方法及该系统 |
CN103428288A (zh) * | 2013-08-13 | 2013-12-04 | 浙江大学 | 基于分区状态表和协调节点的副本同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105516230A (zh) | 2016-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105516230B (zh) | 一种数据处理方法及装置 | |
US11340672B2 (en) | Persistent reservations for virtual disk using multiple targets | |
CN105027068B (zh) | 在存储系统中执行复制 | |
CN103136243B (zh) | 基于云存储的文件系统去重方法及装置 | |
CN103095686B (zh) | 热点元数据访问控制方法和服务器 | |
TWI782487B (zh) | 利用索引物件來進行簡易儲存服務無縫遷移的方法、主裝置以及儲存伺服器 | |
US20150236974A1 (en) | Computer system and load balancing method | |
CN104067240A (zh) | 块级存储 | |
CN103516755A (zh) | 虚拟存储方法及设备 | |
JP2022500759A (ja) | 不揮発性メモリエクスプレスデバイスのネットワークをサニタイズするときに使用する方法および装置 | |
US11516287B2 (en) | Method and apparatus for performing simple storage service seamless migration using index objects | |
CN107391050A (zh) | 一种数据迁移方法、系统、装置和计算机可读存储介质 | |
CN109407975B (zh) | 写数据方法与计算节点以及分布式存储系统 | |
CN105607968B (zh) | 一种增量备份方法及设备 | |
CN108475201A (zh) | 一种虚拟机启动过程中的数据获取方法和云计算系统 | |
CN107277022B (zh) | 进程标记方法及装置 | |
CN110119388B (zh) | 文件读写方法、装置、系统、设备及计算机可读存储介质 | |
JP6510446B2 (ja) | 情報処理システム、情報処理装置及び情報処理方法 | |
JP5673396B2 (ja) | 情報処理システム、情報処理プログラム、情報処理方法 | |
CN105988724B (zh) | 多副本写入存储设备的方法及存储设备 | |
US7318168B2 (en) | Bit map write logging with write order preservation in support asynchronous update of secondary storage | |
CN110096295A (zh) | 基于ReactNative的多模块移动应用的热更新方法及系统 | |
KR101797482B1 (ko) | 데이터베이스 시스템에서 블록 복구 방법, 장치 및 컴퓨터 판독가능 매체에 저장된 컴퓨터-프로그램 | |
JP6172294B2 (ja) | トランザクション分散処理装置、方法、システム、および、記憶媒体 | |
CN115756998B (zh) | 缓存数据重取标记验证方法、装置及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |