一种对象存储系统的对象存放策略和访问方法

文档序号:6335474阅读:440来源:国知局
专利名称:一种对象存储系统的对象存放策略和访问方法
技术领域
本发明涉及计算机存储领域,具体涉及一种基于对象存储系统的对象存放策略 及访问方法。
背景技术
随着信息化的发展,信息资源爆炸式的增长,存储技术在各个方面出现了前所 未有的发展。然而,存储容量的持续增长和存储设备成本的不断增加,存储技系统成为 提高计算机性能的关键。对象存储技术是充分利用对象存储设备(OSD)的功能和处理能力,对外提供对 象接口,基于此建立的对象存储系统具有很强的可扩展性、可共享性、高可靠性以及高 可用性等良好性能。对象存储系统具有用户多、用户类型多、网络环境复杂和存储对象 类型多种多样等特点,这对对象存储系统在提供持续稳定、高性能的存储服务方面提出 了更高的要求。为了保障对象存储系统能够稳定有效地提供高性能存储服务,将副本技 术引入对象存储系统,通过创建对象副本,将副本放置在合适的存储节点上,实现I/O 请求的就近响应,从而达到降低访问延迟、节约网络带宽、提高系统性能的目的。OSD通常使用廉价的普通磁盘作为存储设备,磁盘故障及OSD本身的故障发生 的概率较大,因此需要能够在线处理磁盘故障及单点故障。

发明内容
本发明的目的在于提供一种高可靠性,高可用性的基于对象存储的对象存放策 略和访问方法,一种对象存储系统的对象存放策略和访问方法,存放策略如下A、采用多副本的存储方式保存对象,同一对象的不同副本存储在不同的OSD 上;B、设定同一对象的一个副本为主副本,所有的修改操作都发给主副本;C、在MDS中保存对象的副本可用性信息;D、磁盘或OSD失效时,通过其他副本将对象修复;访问方法包括外部数据交互过程和内部数据交互过程所述外部数据交互过程是指用户通过客户端与系统进行数据读写,客户端提供 通用文件系统接口,用户使用时与使用本地文件系统没有区别;所述内部数据交互过程是指客户端向MDS获取对象的存储信息及副本信息,读 操作选择可用副本发送读请求,写操作向主副本发送写请求;OSD响应客户端请求,读 操作读取本地对象信息返回客户端,写操作进行本地写对象,同时将写信息发给其他可 用的从副本,主副本收集到所有的写结果后,回应客户端。本发明的一种优选技术方案在于所述步骤D中的修复过程如下
磁盘失效修复过程客户端写主副本时,如果从副本磁盘失效或坏道,使得写从副本失败,主副本 向MDS报告副本丢失,同时主副本所在的OSD记录该对象的副本信息,之后的写操作不 再向失效的副本发送。如果是主副本所在的磁盘失效或坏道,主副本本身写失败,主副本收集完所有 的从副本写结果,然后向MDS申请换主,换主成功后,删除本地的对象记录,回应客户 端,对象已换主。OSD失效修复过程客户端写主副本时,如果主副本所在的OSD单点故障,客户端向MDS申请换 主,MDS为对象选择新的主副本,客户端向新的主副本发送写操作。主副本向从副本发送写操作时,从副本所在的OSD单点故障,则主副本向MDS 报告对象丢失,回应客户端写结果。本发明的另一优选技术方案在于所述MDS中保存了所有对象的状态信息,通 过MDS能够获取所有丢失副本的对象,为这些对象选择新副本的存储位置并将这些对象 通过分批或全部发给对象主副本所在的OSD,由OSD负责为对象创建新的从副本,创建 新副本的过程中,阻止新的修改操作,同时在修复之前同步所有客户端缓存并在修复过 程中不允许客户端缓存MDS的信息,OSD每修复完一个对象,向MDS报告该对象的最 新副本信息。本发明带来的有益效果如下
1、具备在线处理故障能力;
2、具备在线修复故障能力;
3、修复时仅影响正在修复的对象
4、能够处理磁盘故障和单点故障
5、提供较高的读取性能。


图1为系统的交互模型工作过程图。
图2为系统的对象初次写操作流程图
图3为系统的对象后续的写操作流程图
图4为对象换主操作流程图
图5为OSD上磁盘故障
图6为单个OSD故障
具体实施方案下面结合附图举例对本发明做更细地描述图1为系统的交互模型工作过程图。客户端从MDS处获取对象信息,在OSD单点故障时,向MDS申请对象换主。MDS存储对象副本及状态信息,并处理对象换主,为对象选择新副本位置。OSD存储对象,提供对象的读写服务,并负责对象的副本同步和为对象创建新
4的从副本。图2为系统的对象初次写操作流程图。1客户端初次访问对象时,向MDS获取对象存储位置及副本信息,然后向主副 本所在的OSD发送写操作,同时对象的副本信息;2主副本所在的OSD2接到客户端的写请求后,异步发给从副本Sl和S2 ;3主副本得到所有副本成功应答后,向客户端回应写成功。图3为系统的后续对象写操作流程图。1客户端根据自身缓存的信息向主副本发送写操作,同时携带副本信息;2主副本所在OSD接受数据写操作,并向从副本发送写操作;3应答客户端。图4为系统的对象换主流程图。1当客户端读写主副本时,遇到主副本失效;2如果是写操作,主副本等待所有的副本写结果;
3向MDS发送换主请求;4MDS在可用的从副本中选择一个作为新的主副本;5旧主副本所在的OSD应答客户端,并告知客户端需更新对象副本信息。图5为系统的磁盘故障处理流程图OSD在写的过程中发现磁盘失效或坏道,向MDS报告,同时本地保存副本的状 态,后续的写操作不再发给这些从副本。图6为数据修复的流程图数据修复时,MDS为丢失副本的对象选择新的副本位置,然后发给主副本所在 的 OSD。OSD先设置该对象“不可修改”,然后分块读取该对象的内容发给MDS选择的 目的磁盘,直到完整创建新的从副本。OSD向MDS报告副本创建成功,MDS修改对象副本信息。OSD本地更新副本的状态,如果对象副本全部可用,从内存中删除该对象信 肩、ο
权利要求
1.一种对象存储系统的对象存放策略和访问方法,其特征在于存放策略如下A、采用多副本的存储方式保存对象,同一对象的不同副本存储在不同的OSD上;B、设定同一对象的一个副本为主副本,所有的修改操作都发给主副本;C、在MDS中保存对象的副本可用性信息;D、磁盘或OSD失效时,通过其他副本将对象修复;访问方法包括外部数据交互过程和内部数据交互过程所述外部数据交互过程是指用户通过客户端与系统进行数据读写,客户端提供通用 文件系统接口,用户使用时与使用本地文件系统没有区别;所述内部数据交互过程是指客户端向MDS获取对象的存储信息及副本信息,读操作 选择可用副本发送读请求,写操作向主副本发送写请求;OSD响应客户端请求,读操作 读取本地对象信息返回客户端,写操作进行本地写对象,同时将写信息发给其他可用的 从副本,主副本收集到所有的写结果后,回应客户端。
2.如权利要求1所述一种对象存储系统的对象存放策略和访问方法,其特征在于 所述步骤D中的修复过程如下磁盘失效修复过程客户端写主副本时,如果从副本磁盘失效或坏道,使得写从副本失败,主副本向 MDS报告副本丢失,同时主副本所在的OSD记录该对象的副本信息,之后的写操作不再 向失效的副本发送。如果是主副本所在的磁盘失效或坏道,主副本本身写失败,主副本收集完所有的从 副本写结果,然后向MDS申请换主,换主成功后,删除本地的对象记录,回应客户端, 对象已换主。OSD失效修复过程客户端写主副本时,如果主副本所在的OSD单点故障,客户端向MDS申请换上, MDS为对象选择新的主副本,客户端向新的主副本发送写操作。主副本向从副本发送写操作时,从副本所在的OSD单点故障,则主副本向MDS报告 对象丢失,回应客户端写结果。
3.如权利要求1所述一种对象存储系统的对象存放策略和访问方法,其特征在于 所述MDS中保存了所有对象的状态信息,通过MDS能够获取所有丢失副本的对象, 为这些对象选择新副本的存储位置并将这些对象通过分批或全部发给对象主副本所在的 0SD,由OSD负责为对象创建新的从副本,创建新副本的过程中,阻止新的修改操作, 同时在修复之前同步所有客户端缓存并在修复过程中不允许客户端缓存MDS的信息, OSD每修复完一个对象,向MDS报告该对象的最新副本信息。
全文摘要
本发明提供了一种对象存储系统的对象存放策略和访问方法。MDS根据一定的策略,将对象的副本分散在不同的数据服务器上;Client从MDS获取对象的分布信息;如果是读,任意选择一个副本进行读;如果是写,向主副本进行写,由主副本同步到从副本;从副本故障时,主副本通知MDS,MDS标识副本丢失,主副本所在的磁盘失效时,OSD向MDS提出换主请求,由MDS进行换主,MDS标记对象副本丢失;数据服务器宕机或退出时,由客户端向元数据提出换主请求,由元数据服务器进行换主,并标记副本丢失;MDS在合适的时机为丢失副本的对象生成新副本。本发明提供了对象访问的高可用性,能够在线处理磁盘故障和单点故障。
文档编号G06F3/06GK102023816SQ20101053648
公开日2011年4月20日 申请日期2010年11月4日 优先权日2010年11月4日
发明者付根希, 常涛, 张东阳, 王勇, 王飞良, 苗艳超, 马照云 申请人:天津曙光计算机产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1