数据写入方法及系统技术方案

技术编号:9569035 阅读:103 留言:0更新日期:2014-01-16 02:36
一种数据写入方法,包括:获取数据访问请求,获取所述数据访问请求对应的数据标识;根据缓存的路由信息获取所述数据标识的状态信息,在所述状态信息为迁移状态时,根据所述路由信息建立与所述数据标识对应的目标存储节点的连接;根据所述数据访问请求以互斥的方式更新所述目标存储节点上与所述数据标识对应的数据。此外,还提供了一种数据写入系统。上述数据写入方法和系统可以提高数据迁移时的完整性。

【技术实现步骤摘要】
【专利摘要】一种数据写入方法,包括:获取数据访问请求,获取所述数据访问请求对应的数据标识;根据缓存的路由信息获取所述数据标识的状态信息,在所述状态信息为迁移状态时,根据所述路由信息建立与所述数据标识对应的目标存储节点的连接;根据所述数据访问请求以互斥的方式更新所述目标存储节点上与所述数据标识对应的数据。此外,还提供了一种数据写入系统。上述数据写入方法和系统可以提高数据迁移时的完整性。【专利说明】数据写入方法及系统
本专利技术涉及计算机
,特别是涉及一种数据写入方法及系统。
技术介绍
分布式系统中通常包括多台存储节点,每个存储节点上的数据分为多组,对应不同的数据标识。当某个存储节点发生故障需要维修时,需要对存储节点进行数据迁移,即将源存储节点上的数据迁移到目标存储节点上进行存储,并将接入节点与源存储节点的连接重定向至目标存储节点。传统技术中,数据迁移工作由迁移服务器完成。迁移服务器先将源存储节点上的与数据标识对应的原始数据的置为迁移状态,然后读取该原始数据并写入到目标存储节点中。迁移服务器在迁移数据时,为了防止数据冲突,通常只允许接入节点对存储节点进行读操作,而禁止接入节点对存储节点进行写操作。而传统技术中,在某些允许写操作的数据迁移过程中,接入节点与源存储节点保持连接。可获取数据访问请求,并根据数据访问请求在源存储节点上写入增量内容。迁移服务器完成原始数据的迁移后,再读取源存储节点上的增量内容并写入到目标存储节点中。数据迁移完成后,接入节点再将与源存储节点的连接重定向至目标存储节点,并根据接收到的数据访问请求向接入节点写入数据。然而传统技术中的数据写入方法使得迁移过程需要很严格的执行顺序。若接入节点重定向过早,则迁移服务器还未将增量内容完全写入目标存储节点,接入节点对目标存储节点的写入操作可能会引起数据冲突;若接入节点重定向过晚,接入节点又会在源存储节点写入新的增量内容。因此,传统技术中,数据写入方法使得迁移过程容易造成数据的遗失和冲突,从而降低了数据迁移时的数据完整性。
技术实现思路
基于此,有必要提供一种能提高数据迁移时的数据完整性的数据写入方法。一种数据写入方法,包括:获取数据访问请求,获取所述数据访问请求对应的数据标识;根据缓存的路由信息获取所述数据标识的状态信息,在所述状态信息为迁移状态时,根据所述路由信息建立与所述数据标识对应的目标存储节点的连接;根据所述数据访问请求以互斥的方式更新所述目标存储节点上与所述数据标识对应的数据。此外,还有必要提供一种能提高数据迁移时的数据完整性的数据写入系统。一种数据写入系统,包括接入节点,所述接入节点包括:请求获取模块,用于获取数据访问请求,获取所述数据访问请求对应的数据标识;状态信息获取模块,用于根据缓存的路由信息获取所述数据标识的状态信息。连接建立模块,用于在所述状态信息为迁移状态时,根据所述路由信息建立与所述数据标识对应的目标存储节点的连接。互斥写入模块,用于根据所述数据访问请求以互斥的方式更新所述目标存储节点上与所述数据标识对应的数据。上述数据写入方法和系统,在获取到数据访问请求,并获取所述数据访问请求对应的数据标识后,根据与该数据标识对应的路由信息判断该数据标识对应的数据是否处于迁移状态中,并在该数据标识对应的数据处于迁移状态时,直接与目标存储节点建立连接,通过互斥写入的方式将增量内容写入目标存储节点。使得接入节点无需先在源存储节点上写入增量内容然后再重定向至目标存储节点,从而使得增量内容不会造成数据遗失和冲突,从而提高了数据完整性。【专利附图】【附图说明】图1为一个实施例中数据写入方法的流程图;图2为一个实施例中接入节点、路由节点、存储节点和迁移服务器的连接关系图;图3为一个实施例中数据写入系统的结构示意图;图4为另一个实施例中数据写入系统的结构示意图。【具体实施方式】在一个实施例中,如图1所示,一种数据写入方法,包括:步骤S102,获取数据访问请求,获取数据访问请求对应的数据标识。客户端可向接入节点发起数据访问请求。接入节点为对数据访问请求进行处理的服务器,用于根据数据访问请求对存储节点(存储服务器)进行读写操作。在一个实施例中,数据访问请求中可包括增量内容以及和增量内容对应的数据标识。接入节点可从接收到的数据访问请求中提取数据标识。在另一个实施例中,接入节点还可根据接收到的数据访问请求计算数据标识。具体的,数据访问请求中可包括增量内容的数据名称,可通过计算数据名称的哈希值来获取数据标识,即将数据名称的哈希值作为数据标识。步骤S104,根据缓存的路由信息获取数据标识的状态信息,在状态信息为迁移状态时,根据路由信息建立与数据标识对应的目标存储节点的连接。在一个实施例中,在步骤S104之前,还可获取路由节点下发的路由信息,并更新存储于缓存中。在本实施例中,如图2所示,接入节点、存储节点以及迁移服务器分别与路由节点连接。迁移服务器在接收到迁移指令后,获取迁移指令对应的数据标识,读取源存储节点上与该数据标识对应的数据,并将该数据对应写入目标存储节点。路由节点中存储有与数据标识对应的路由信息。路由节点可获取数据标识对应的存储节点(即存储了与数据标识对应的数据的存储节点)的标识或连接路由,并生成路由信息下发给各个接入节点。路由信息中包含有与数据标识对应的状态信息,状态信息可使用状态码表示,状态信息可包括迁移状态和正常状态。在本实施例中,迁移服务器在接收到迁移指令后,获取迁移指令对应的数据标识并通知路由节点,则路由节点更新路由信息中与数据标识对应的状态信息为迁移状态,然后将路由信息下发给各个接入节点。在本实施例中,迁移服务器完成与数据标识对应的数据的迁移后通知路由节点,则路由节点更新路由信息中与数据标识对应的状态信息为正常状态,然后将路由信息下发给各个接入节点。当数据标识对应的状态信息为正常状态时,路由信息中可包括与该数据标识对应的源存储节点的标识或连接路由;当数据标识对应的状态信息为迁移状态时,路由信息中可包括与该数据标识对应的源存储节点和目标存储节点这两者的标识或连接路由。在一个实施例中,接入节点接收到的路由信息如表1所示:【权利要求】1.一种数据写入方法,包括: 获取数据访问请求,获取所述数据访问请求对应的数据标识; 根据缓存的路由信息获取所述数据标识的状态信息,在所述状态信息为迁移状态时,根据所述路由信息建立与所述数据标识对应的目标存储节点的连接; 根据所述数据访问请求以互斥的方式更新所述目标存储节点上与所述数据标识对应的数据。2.根据权利要求1所述的数据写入方法,其特征在于,所述根据缓存的路由信息获取所述数据标识的状态信息的步骤之后还包括: 判断所述状态信息是否为正常状态,若是,则根据所述路由信息与源存储节点建立连接,根据数据访问请求对所述源存储节点进行读写操作。3.根据权利要求1所述的数据写入方法,其特征在于,所述根据所述路由信息建立与所述数据标识对应的目标存储节点的连接的步骤之后,还包括: 读取目标存储节点上与所述数据标识对应的数据,若未读取到,则根据所述路由信息读取源存储节点上与所述数据标识对应的数据; 将所述读取到的数据互斥写入所述目标存储节点。4.根据权利要求1所述的数据写入方法,其特征在于,所述本文档来自技高网
...

【技术保护点】
一种数据写入方法,包括:获取数据访问请求,获取所述数据访问请求对应的数据标识;根据缓存的路由信息获取所述数据标识的状态信息,在所述状态信息为迁移状态时,根据所述路由信息建立与所述数据标识对应的目标存储节点的连接;根据所述数据访问请求以互斥的方式更新所述目标存储节点上与所述数据标识对应的数据。

【技术特征摘要】

【专利技术属性】
技术研发人员:唐孟松
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1