分布式存储环境下的复制数据的方法及服务器技术

技术编号:17911885 阅读:50 留言:0更新日期:2018-05-10 17:58
本发明专利技术提出一种分布式存储环境下的复制数据的方法及服务器,所述方法包括:获取消息中间件中存储的复制请求;所述复制请求中包括源区域地址、源哈希桶和源对象;向目标区域的对象存储系统发送所述复制请求,以使得所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作。上述技术方案可以实现:使用消息中间件存储复制请求,保证复制请不会受到阻塞,而且消息中间件可保证消息的有序执行,消息中间件中的消息队列是按照发布消息的顺序将消息入队,在执行复制任务时,也是按照发布消息的顺序进行执行的,这样保证了复制任务的先产生,先执行。

【技术实现步骤摘要】
分布式存储环境下的复制数据的方法及服务器
本专利技术涉及通信网络
,尤其涉及一种分布式存储环境下的复制数据的方法及服务器。
技术介绍
在云计算服务中,对象存储服务是一个非常重要的基础服务。对象存储服务将数据作为对象写在用户的存储区域中,用户可以写入、读取和删除该存储区域中的对象。在现有的对象存储系统中,可以支持的最大单个对象数据的大小为5T。传统的对象存储系统在进行数据存储时,通常采用将数据切分成小块存储,并使用元数据来维护对象和各小块数据之间的关系。在对象存储系统中,当用户需要进行复制操作时,传统的技术为直接复制。但是,当对象数据较大时,有时甚至涉及到几十万数据块的复制,若处理过程中出现异常或失败,不仅可能导致垃圾数据或数据不完整的情况发生,还容易导致元数据不一致的情况发生。
技术实现思路
本专利技术实施例提供一种分布式存储环境下的复制数据的方法及服务器,以解决或缓解
技术介绍
中的一项或多项以上技术问题,至少提供一种有益的选择。第一方面,本专利技术实施例提供了一种分布式存储环境下的复制数据的方法,包括:获取消息中间件中存储的复制请求;所述复制请求中包括源区域地址、源哈希桶和源对象;向目标区域的对象存储系统发送所述复制请求,以使得所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作。结合第一方面,本专利技术在第一方面的第一种实施方式中,所述消息中间件中存储的复制请求为当源区域的对象存储系统存在复制请求时而存至消息中间件的。结合第一方面,本专利技术在第一方面的第二实施方式中,所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作时,所述目标区域的对象存储系统在所述目标区域构建与所述源对象名称相同的目标对象。结合第一方面的第二种实施方式,当所述源对象不存在时,所述目标区域的对象存储系统删除所述目标对象。结合第一方面,本专利技术在第一方面的第三实施方式中,获取消息中间件中存储的复制请求之后,包括:将所述源区域地址、源哈希桶和源对象作为一条记录存储至数据库中。结合第一方面的第三种实施方式,接收到所述目标区域的对象存储系统发送的复制成功的消息时,删除所述数据库中存储的所述源区域地址、源哈希桶和源对象的记录。第二方面,本专利技术实施例提供了一种服务器,包括:获取模块,配置为获取消息中间件中存储的复制请求;所述复制请求中包括源区域地址、源哈希桶和源对象;发送模块,配置为向目标区域的对象存储系统发送所述复制请求,以使得所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作。结合第二方面,在本专利技术第二方面的第一种实施方式中,所述消息中间件中存储的复制请求为当源区域的对象存储系统存在复制请求时而存入的。结合第二方面,在本专利技术第二方面的第二种实施方式中,所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作时,所述目标区域的对象存储系统在所述目标区域构建与所述源对象名称相同的目标对象。结合本专利技术第二方面的第二种实施方式,当所述源对象不存在时,所述目标区域的对象存储系统删除所述目标对象。第三方面,本专利技术实施例提供了一种计算机可读存储介质,用于存储上述服务器所用的计算机软件指令,其包括用于执行上述第一方面中分布式存储环境下的复制数据的方法所涉及的程序。上述技术方案中的一个技术方案具有如下优点或有益效果:使用消息中间件存储复制请求,保证复制请不会受到阻塞,而且消息中间件可保证消息的有序执行,消息中间件中的消息队列是按照发布消息的顺序将消息入队,在执行复制任务时,也是按照发布消息的顺序进行执行的,这样保证了复制任务的先产生,先执行。上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本专利技术进一步的方面、实施方式和特征将会是容易明白的。附图说明在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本专利技术公开的一些实施方式,而不应将其视为是对本专利技术范围的限制。图1为本专利技术实施例一的分布式存储环境下的复制数据的方法的流程图;图2为本专利技术实施例二的分布式存储环境下的复制数据的方法的流程图;图3为本专利技术实施例二的分布式存储环境下的复制数据的示意图;图4为本专利技术实施例三的服务器的示意图。具体实施方式在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本专利技术的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。实施例一本专利技术实施例提供一种分布式存储环境下的复制数据的方法。如图1所示,为本专利技术实施例的分布式存储环境下的复制数据的方法的流程图。本专利技术实施例的分布式存储环境下的复制数据的方法,包括如下步骤:S101,获取消息中间件中存储的复制请求;所述复制请求中包括源区域地址、源哈希桶(bucket)和源对象(object)。本专利技术实施例的执行主体为复制执行单元(ReplicationWorker),该复制执行单元可以存在于源区域的对象存储系统还可以存在于目标区域的对象存储系统,还可以存在于对象存储系统中的其他节点上,在此不做限定。下面简单介绍关于哈希桶的概念,哈希桶是与哈希表相关的概念。哈希表(Hashtable)又称为“散列”,Hashtable是会根据索引键的哈希程序代码组织成的索引键(Key)和值(Value)配对的集合。Hashtable对象是由包含集合中元素的哈希桶(Bucket)所组成的。而Bucket是Hashtable内元素的虚拟子群组,可以让大部分集合中的搜寻和获取工作更容易、更快速。本专利技术实施例中所涉及的消息中间件是指一种先进先出的消息队列,当用户发起将源区域中的数据复制到目标区域的请求时,向消息中间件中发布一条复制消息,这就代表消息中间件中存在一项复制任务。如果复制消息发布成功,还可向用户发送消息发布成功的提示。S102,向目标区域的对象存储系统发送所述复制请求,以使得所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作。当复制执行单元向消息中间件订阅了一条复制任务后,它开始向目标区域的对象存储系统发送相应的复制请求,该复制请求中包括源区域地址、源哈希桶和源对象等信息,这样目标区域的对象存储系统可以设置与源哈希桶同名的目标哈希桶,以及与源对象同名的目标对象,并根据源区域地址、源哈希桶和源对象等信息,向源区域中的源哈希桶下的源对象获取数据。上述技术方案可以实现:使用消息中间件存储复制请求,可以保证复制请求不会受到阻塞,而且消息中间件可保证消息的有序执行,消息中间件中的消息队列是按照发布消息的顺序将消息入队,在执行复制任务时,也是按照发布消息的顺序进行执行的,这样保证了复制任务的先产生,先执行。实施例二本专利技术实施例二提供一种分布式存储环境下的复制数据的方法。如图2所示本文档来自技高网...
分布式存储环境下的复制数据的方法及服务器

【技术保护点】
一种分布式存储环境下的复制数据的方法,其特征在于,所述方法包括:获取消息中间件中存储的复制请求;所述复制请求中包括源区域地址、源哈希桶和源对象;向目标区域的对象存储系统发送所述复制请求,以使得所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作。

【技术特征摘要】
1.一种分布式存储环境下的复制数据的方法,其特征在于,所述方法包括:获取消息中间件中存储的复制请求;所述复制请求中包括源区域地址、源哈希桶和源对象;向目标区域的对象存储系统发送所述复制请求,以使得所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作。2.根据权利要求1所述的方法,其特征在于,所述消息中间件中存储的复制请求为当源区域的对象存储系统存在复制请求时而存至消息中间件的。3.根据权利要求1所述的方法,其特征在于,所述目标区域的对象存储系统根据所述复制请求中的源区域地址、源哈希桶和源对象向源区域的对象存储系统发起获取复制数据的操作时,所述目标区域的对象存储系统在所述目标区域构建与所述源对象名称相同的目标对象。4.根据权利要求3所述的方法,其特征在于,当所述源对象不存在时,所述目标区域的对象存储系统删除所述目标对象。5.根据权利要求1所述的方法,其特征在于,获取消息中间件中存储的复制请求之后,包括:将所述源区域地址、源哈希桶和源对象作为一条记录存储至数据库中。6.根据权利要求5所述的方法,其特征在于,接收到所述目标区域的对象存...

【专利技术属性】
技术研发人员:贾宝雷施黄骏段立国
申请(专利权)人:北京百度网讯科技有限公司
类型:发明
国别省市:北京,11

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

1