[发明专利]一种对象存储方法和装置在审
申请号: | 201510640674.2 | 申请日: | 2015-09-30 |
公开(公告)号: | CN105278877A | 公开(公告)日: | 2016-01-27 |
发明(设计)人: | 罗治文;文松;张立;蔡勇 | 申请(专利权)人: | 成都华为技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 广州三环专利代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 610041 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 对象 存储 方法 装置 | ||
技术领域
本发明涉及存储技术领域,尤其涉及一种对象存储方法和装置。
背景技术
随着存储技术的发展,分布式存储系统应用得到广泛应用。其中,目前分布式存储系统在存储对象进行存储时,主要通过如下方式进行存储:
当客户端接收请请求后,根据路由获取复制状态机(ReplicationStateMachine,RSM)的主节点,发送写请求到主节点;主节点先写本地,若写失败,则返回失败给客户端,若成功,则并发向两个备节点发送写请求,备节点写入后,返回结果给主节点,主节点返回结果给客户端。
然而,上述技术中存储对象的所有内容都是从客户端到主节点要经过一次路由,同时主节点与备节点是顺序写,写操作的时延较大。
发明内容
本发明实施例提供了一种对象存储方法和装置,可以减少写操作的时延。
第一方面,本发明实施例提供一种对象存储方法,包括:
获取待存储对象的元数据,并向主节点发送携带所述元数据的写入请求,由所述主节点根据所述写入请求将所述元数据写入本地,并由所述主节点向至少一个备节点发送携带所述元数据的写入请求,以使所述至少一个备节点将所述元数据写入本地;
获取所述待存储对象的数据,并向至少一个存储节点发送携带有所述数据的写入请求,以使所述至少一个存储节点将所述数据写入本地。
在第一方面的第一种可能的实现方式中,所述方法还包括:
接收所述至少一个存储节点中每个存储节点发送的第一写入结果,其中,所述第一写入结果用于表示所述数据写入是否成功;
判断接收到的表示写入成功的第一写入结果的数量是否大于或者等于预设阈值时,若是,则确定所述待存储对象的数据写入成功。
结合第一方面,在第一方面的第二种可能的实现方式中,所述方法还包括:
接收所述主节点发送的用于表示所述元数据写入是否成功的第二写入结果,以及接收所述主节点发送的第三写入结果,其中,所述第三写入结果包括所述至少一个备节点中每个备节点发送的用于表示所述元数据写入是否成功的写入结果;
判断接收的所述第二写入结果和所述第三写入结果中是否存在表示所述元数据写入失败的写入结果,若是,则确定所述待存储对象的元数据写入失败,若否,则确定所述待存储对象的元数据写入成功。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述方法还包括:
在生成所述待存储对象的元数据时,在所述元数据中添加标记信息;
所述获取待存储对象的元数据,并向主节点发送携带所述元数据的写入请求,包括:
获取待存储对象的添加所述标记信息的元数据,并向主节点发送携带所述添加所述标记信息的元数据的写入请求。
结合第一方面或者第一方面的第一种可能的实现方式或者第一方面的第二种可能的实现方式,在第一方面的第四种可能的实现方式中,所述获取所述待存储对象的数据,并向至少一个存储节点发送携带有所述数据的写入请求,包括:
获取所述待存储对象的数据,并确定所述数据为无需更新操作的数据时,向至少一个存储节点发送携带有所述数据的写入请求。
第二方面,本发明实施例提供一种对象存储装置,包括:获取单元、第一写入单元和第二写入单元,其中:
所述获取单元,用于获取待存储对象的元数据;
所述第一写入单元,用于向主节点发送携带所述元数据的写入请求,由所述主节点根据所述写入请求将所述元数据写入本地,并由所述主节点向至少一个备节点发送携带所述元数据的写入请求,以使所述至少一个备节点将所述元数据写入本地;
所述获取单元还用于获取所述待存储对象的数据;
所述第二写入单元,用于向至少一个存储节点发送携带有所述数据的写入请求,以使所述至少一个存储节点将所述数据写入本地。
在第二方面的第一种可能的实现方式中,所述装置还包括:
第一接收单元,用于接收所述至少一个存储节点中每个存储节点发送的第一写入结果,其中,所述第一写入结果用于表示所述数据写入是否成功;
第一判断单元,用于判断接收到的表示写入成功的第一写入结果的数量是否大于或者等于预设阈值时,若是,则确定所述待存储对象的数据写入成功。
结合第二方面,在第二方面的第一种可能的实现方式中,所述装置还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都华为技术有限公司,未经成都华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510640674.2/2.html,转载请声明来源钻瓜专利网。