一种数据传输方法、设备及系统的制作方法

文档序号:6438468阅读:188来源:国知局
专利名称:一种数据传输方法、设备及系统的制作方法
技术领域
本发明涉及数据传输技术领域,尤其涉及一种数据传输方法、设备及系统。
背景技术
分布式存储系统是将数据存储在多个独立存储设备的集群系统。为了保证数据的可靠性,同一份数据需要在多个独立存储设备上存储,一般会对同一份数据在系统中保存三份。如果其中任意一个独立存储设备出现问题,如故障或负载较重,则需要由另外两个独立存储设备之中任意一个将所述三个独立存储设备上共同存储的数据重新在这三个独立存储设备以外的另一个独立存储设备上分布,以使得分布式存储系统中重新形成三份同样的数据。其重新分布过程,如图1所示,与设备A存储有部分相同数据的设备出现问题后, 设备A将该部分相同数据复制传输至设备B。现有技术中,设备A复制传输该部分相同数据给设备B的过程中(时间T1-T2内), 该部分相同数据是不可访问的,如果该部分相同数据容量较大,复制传输的过程较长,导致其不可访问时间较长。

发明内容
本发明的实施例提供一种数据传输方法、设备及系统,能够解决现有技术中由于在独立存储设备间进行基础数据的重新分布时,基础数据在数据复制传输时间内不可访问的问题。为达到上述目的,本发明的实施例采用如下技术方案—种数据传输方法,包括根据触发条件和预先配置的分片参数值创建数据分片,所述数据分片用于临时数据存储;接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片;在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备,以使得所述目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。一种源独立存储设备,包括创建分片单元,用于根据触发条件和预先配置的分片参数值创建数据分片,所述数据分片用于临时数据存储;数据存储单元,用于接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片;数据发送单元,用于在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备,以使得所述目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。一种数据传输系统,包括上述的源独立存储设备和目的独立存储设备,其中,所述源独立存储设备,用于根据触发条件和预先配置的分片参数值创建数据分片,接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片,在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备;所述目的独立存储设备,用于接收源独立存储设备的更新操作和更新内容,并根据所述更新操作和更新内容更新所述基础数据。本发明实施例提供的数据传输方法、设备及系统,由于通过源独立存储设备创建的数据分片保存更新操作和更新内容,实现了在源独立存储设备向目的独立存储设备传输数据时,处于传输状态的数据能够访问。与现有技术相比,本发明实施例能够解决现有技术中由于在独立存储设备间进行数据的重新分布时,这部分数据在数据复制时间内不可访问的问题。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为现有技术提供的数据重新分布过程示意图;图2为本发明实施例提供的数据传输方法流程图;图3为本发明又一实施例提供的数据传输方法流程图;图4为本发明实施例提供的源独立存储设备结构示意图一;图5为本发明实施例提供的源独立存储设备结构示意图二 ;图6为本发明实施例提供的数据传输系统结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。为使本发明技术方案的优点更加清楚,下面结合附图和实施例对本发明作详细说明。如图2所示,本发明实施例提供的数据传输方法,所述方法包括步骤101、根据触发条件和预先配置的分片参数值创建数据分片。其中,所述数据分片用于临时数据存储。在本实施例中,所述预先配置的分片参数值包括但不限于数据分片的初始大小、 数据分片的数量上限和数据分片的工作时间,所述触发条件可以是接收到向目的独立存储设备传输基础数据的请求或者当前数据分片的存储状态为饱和状态,但不仅局限于此。
步骤102、接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片。步骤103、在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备,以使得所述目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。上述各个步骤的执行主体是待传输基础数据的源独立存储设备,可以是分布式存储系统中存储基础数据的独立存储设备,可以是数据库系统中存储业务表的独立存储设备,此处不作限定。本发明实施例提供的数据传输方法,由于通过源独立存储设备创建的数据分片保存更新操作和更新内容,实现了源独立存储设备向目的独立存储设备传输数据时,处于传输状态的基础数据能够更新。与现有技术相比,本发明实施例能够解决现有技术中由于在独立存储设备间进行数据的重新分布时,处于传输状态的基础数据在数据复制时间内不可访问的问题。为了使得本领域的技术人员更好的理解本发明实施例提供过的技术方案,下面将通过又一个具体实例来进一步介绍本发明实施例中提供的数据传输方法。如图3所示,本发明又一实施例提供的的数据传输方法,所述方法包括步骤301、源独立存储设备根据基础数据的访问频率和所述基础数据的存储容量配置数据分片的分片参数值。其中,所述分片参数值包括但不限于数据分片的初始大小、数据分片的数量上限和数据分片的工作时间。通过配置分片参数值,控制在基础数据由源独立存储设备向目的独立存储设备传输完成时,源独立存储设备创建的最后一个数据分片也达到存储状态为饱和状态,避免产生过多的数据分片而增加整个系统的传输负担,所述最后一个数据分片由所述分片参数值决定。优选的,所述分片的初始大小按照创建顺序依次减小,使得源独立存储设备创建的最后一个数据分片容量最小,进而所述最后一个数据分片存储的更新操作及更新内容最少。源独立存储设备关闭最后一个数据分片并将该数据分片发送到目的独立存储设备所占用的时间会很短。值得说明的是,所述分片参数值也可以根据经验来进行设置,此处不作限定,优选实现方式为步骤301。步骤302、源独立存储设备在接收到向目的独立存储设备传输数据的请求时,源独立存储设备根据预先配置的分片参数值创建第一个数据分片。数据分片创建完成后,执行步骤303。在本实施例中,所述请求包括但不限于基础数据的名称、地址以及目的独立存储设备的地址。并且该请求是基于事件触发的,所述事件可以是系统中独立存储设备发生故障,也可以是系统中独立存储设备负载过重。值得说明的是,在所述方法应用在分布式存储系统时,所述数据分片的逻辑结构没有约束,数据分片能够存储更新操作及更新内容即可。但在所述方法应用在数据库系统时,所述数据分片的逻辑结构和数据库中业务表逻辑结构一致。步骤303、源独立存储设备发送基础数据到目的独立存储设备。在源独立存储设备发送基础数据到目的独立存储设备的过程中,如果有处于传输状态的基础数据更新请求, 执行步骤304。步骤304、源独立存储设备在接收到处于传输状态的基础数据的更新请求时,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片。在所述数据分片的存储状态为饱和状态时,执行步骤305。其中,所述饱和状态为更新过程中达到所述预先配置的分片参数值的阈值,例如达到分片的初始大小、达到数据分片的数量上限或达到数据分片的工作时间。步骤305、源独立存储设备关闭所述数据分片,并将所述数据分片发送到目的独立存储设备,在源独立存储设备侧根据所述数据分片保存的内容更新所述基础数据,并判断所述数据分片是否达到所述分片参数值的阈值,若是达到所述分片参数值的阈值,则执行步骤307,若不是,则执行步骤306。其中,所述分片参数值的阈值包括但不限于数据分片的数量上限及数据分片的工作时间。步骤306、源独立存储设备根据所述预先配置的分片参数值创建下一个数据分片。 返回执行步骤304。步骤307、目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。具体的,其数据更新过程按照源独立存储设备创建数据分片的顺序更新。例如,第一个数据分片和第二个数据分片都对同一个数值进行了修改,则需按照创建数据分片的顺序更新,先按照第一个数据分片的更新操作和更新内容更新所述基础数据,再按照第二个数据分片的更新操作和更新内容更新所述基础数据。步骤308、当源独立存储设备创建的最后一个数据分片的存储状态为饱和状态时, 关闭并发送所述最后一个数据分片到目的独立存储设备,根据所述最后一个数据分片的更新操作和更新内容更新所述基础数据。所述数据更新完成后执行步骤309。步骤309、目的独立存储设备发送数据更新完成指令给所述源独立存储设备。所述发送数据更新完成指令给所述源独立存储设备后,目的独立存储设备正常启用,接收更新操作和更新内容,标志整个数据重新分布的完成。值得说明的是,上述方法同样可以应用到在线系统的数据实时复制,例如分布式关系数据库、分布式列式数据库、分布式图数据库、数据库备份系统或数据库实时复制系统。本发明又一实施例提供的数据传输方法,由于通过源独立存储设备创建的数据分片保存更新操作和更新内容,实现了源独立存储设备向目的独立存储设备传输数据时,处于传输状态的数据能够更新。与现有技术相比,本发明实施例能够解决现有技术中由于在独立存储设备间进行数据的重新分布时,处于传输状态的数据在数据复制时间内不可访问的问题。本发明实施例提供的源独立存储设备,如图4所示,包括创建分片单元41,用于根据触发条件和预先配置的分片参数值创建数据分片。其具体实现方式参见图2中步骤101所示,此处不再赘述。数据存储单元42,用于接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片。其具体实现方式参见图2中步骤102所示,此处不再赘述。数据发送单元43,用于在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备,以使得所述目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。其具体实现方式参见图2中步骤 103所示,此处不再赘述。进一步的,如图5所示,所述源独立存储设备,还包括分片参数单元44,用于根据基础数据的访问频率和所述基础数据的存储容量配置所述数据分片的分片参数值。其中,所述分片参数值包括但不限于数据分片的初始大小、数据分片的数量上限和数据分片的工作时间。其具体实现方式参见图3中步骤301所示,此处不再赘述。具体的,如图5所示,所述创建分片单元41,包括第一创建子单元411,用于在接收到向目的独立存储设备传输基础数据的请求时, 根据预先配置的分片参数值创建数据分片;其具体实现方式参见图3中步骤302所示,此处不再赘述。第二创建子单元412,用于在当前数据分片的存储状态为饱和状态时,根据所述预先配置的分片参数值创建下一个数据分片。其具体实现方式参见图3中步骤306所示,此处不再赘述。进一步的,所述源独立存储设备,如图5所示,还包括数据更新单元45,用于在源独立存储设备关闭所述数据分片,并将所述数据分片发送到目的独立存储设备后,在源独立存储设备侧根据所述数据分片中的更新操作和更新内容更新所述基础数据。其具体实现方式参见图3中步骤305所示,此处不再赘述。本发明实施例提供的源独立存储设备,由于通过源独立存储设备创建的数据分片保存更新操作和更新内容,实现了源独立存储设备向目的独立存储设备传输基础数据时, 处于传输状态的基础数据能够访问。与现有技术相比,本发明实施例能够解决现有技术中由于在独立存储设备间进行数据的重新分布时,这部分数据在数据复制时间内不可访问的问题。如图6所示,本发明实施例提供的数据传输系统,包括上述源独立存储设备51和目的独立存储设备52,其中,所述源独立存储设备51,用于根据触发条件和预先配置的分片参数值创建数据分片,接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片,在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备52 ;所述目的独立存储设备52,用于接收源独立存储设备51的更新操作和更新内容, 并根据所述更新操作和更新内容更新所述基础数据。其具体实现方式参见上述源独立存储设备和目的独立存储设备的具体实施例,此处不再赘述。本发明实施例提供的数据传输系统,由于通过源独立存储设备创建的数据分片保存更新操作和更新内容,并发送所述更新操作和更新内容到目的独立存储设备,使得所述目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。实现了源独立存储设备向目的独立存储设备传输基础数据时,处于传输状态的基础数据能够访问。与现有技术相比,本发明实施例能够解决现有技术中由于在独立存储设备间进行数据的重新分布时, 这部分数据在数据复制时间内不可访问的问题。通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机, 服务器,或者网络设备等)执行本发明各个实施例所述的方法。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
权利要求
1.一种数据传输方法,其特征在于,包括根据触发条件和预先配置的分片参数值创建数据分片,所述数据分片用于临时数据存储;接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片;在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备,以使得所述目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。
2.根据权利要求1所述的方法,其特征在于,还包括根据基础数据的访问频率和所述基础数据的存储容量配置所述数据分片的分片参数值,所述分片参数值包括数据分片的初始大小、数据分片的数量上限和数据分片的工作时间。
3.根据权利要求2所述的方法,其特征在于,所述分片的初始大小按照创建顺序依次减小。
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述根据触发条件和预先配置的分片参数值创建数据分片,包括在接收到向目的独立存储设备传输基础数据的请求时,根据预先配置的分片参数值创建第一个数据分片;在当前数据分片的存储状态为饱和状态时,根据所述预先配置的分片参数值创建下一个数据分片。
5.根据权利要求1所述的方法,其特征在于,将所述更新操作和更新内容发送给目的独立存储设备后,还包括根据所述数据分片中的更新操作和更新内容更新所述基础数据。
6.一种源独立存储设备,其特征在于,包括创建分片单元,用于根据触发条件和预先配置的分片参数值创建数据分片,所述数据分片用于临时数据存储;数据存储单元,用于接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片;数据发送单元,用于在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备,以使得所述目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。
7.根据权利要求6所述的设备,其特征在于,还包括分片参数单元,用于根据基础数据的访问频率和所述基础数据的存储容量配置所述数据分片的分片参数值,所述分片参数值包括数据分片的初始大小、数据分片的数量上限和数据分片的工作时间。
8.根据权利要求6-7任意一项所述的设备,其特征在于,所述创建分片单元,包括第一创建子单元,用于在接收到向目的独立存储设备传输基础数据的请求时,根据预先配置的分片参数值创建第一个数据分片;第二创建子单元,用于在当前数据分片的存储状态为饱和状态时,根据所述预先配置的分片参数值创建下一个数据分片。
9.根据权利要求6所述的设备,其特征在于,在所述数据发送单元后,还包括 数据更新单元,根据所述数据分片中的更新操作和更新内容更新所述基础数据。
10.一种数据传输系统,其特征在于,包括权利要求6-9任意一项所述的源独立存储设备和目的独立存储设备,其中,所述源独立存储设备,用于根据触发条件和预先配置的分片参数值创建数据分片,接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片,在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备;所述目的独立存储设备,用于接收源独立存储设备的更新操作和更新内容,并根据所述更新操作和更新内容更新所述基础数据。
全文摘要
本发明实施例公开了一种数据传输方法、设备及系统,涉及数据传输技术领域,解决了现有技术中独立存储设备间进行数据重新分布时,这部分数据在数据复制时间内不可访问的问题。所述数据传输方法包括根据触发条件和预先配置的分片参数值创建数据分片,接收到处于传输状态的基础数据的更新请求,将所述更新请求中携带的更新操作和更新内容保存到所述数据分片,在所述数据分片的存储状态为饱和状态时,关闭所述数据分片,并将所述更新操作和更新内容发送给目的独立存储设备,以使得所述目的独立存储设备根据所述更新操作和更新内容更新所述基础数据。本发明适用于数据传输技术领域,如分布式存储系统、分布式数据库、数据库备份系统。
文档编号G06F12/02GK102436355SQ20111036196
公开日2012年5月2日 申请日期2011年11月15日 优先权日2011年11月15日
发明者张宇, 阿尔维斯·莱克, 陈坚, 马苏德·莫塔扎维 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1