处理存储系统的方法和装置制造方法及图纸

技术编号:9223494 阅读:109 留言:0更新日期:2013-10-04 17:31
本发明专利技术公开了一种处理存储系统的方法和装置,该方法包括:确定用于记录存储系统的系统信息的超级块;创建根对象;创建对象集,该对象集用于存储该根对象和对象的标识以及位置信息,该根对象与该对象的标识不同,并且每个该对象的标识互不相同;将该对象集的位置信息记录到该超级块中;将该根对象的名称和标识记录到该超级块中。根据本发明专利技术实施例的处理存储系统的方法和装置,能够将目标对象的关联操作对象的数量控制在较少的数量上,从而能够提升存储系统的操作效率,并提高用户体验。

【技术实现步骤摘要】
处理存储系统的方法和装置
本专利技术涉及存储系统领域,尤其涉及存储系统领域中处理存储系统的方法和装置。
技术介绍
在例如包括文件系统、类文件系统或数据库系统的存储系统中,通常会采用B树(btree)类型的数据结构,对目录或索引信息进行存储,从而便于用户通过键值对(key,value)进行快速地查询、插入、删除等操作。存储系统一方面与各应用逻辑连接,另一方面与存储器的逻辑单元号(LogicalUnitNumber,简称为“LUN”)逻辑连接,以对存储器空间进行组织和分配,并对文件/数据实施存储、保护和检索等操作。本文中将这些树、表、目录或文件等统称为对象,该对象独立于根对象。还应理解,在本文中,子对象与父对象只是相对的位置概念,除了根对象外,其他对象都可以称为子对象,另外,除了最底层的对象之外,其他对象或根对象都可以称为父对象。存储系统通常可以包括超级块(SuperBlock)和根对象(例如,$root)。其中,超级块中存储或记录该存储系统的最重要的信息,这些信息也可以称为系统信息。根据这些系统信息,用户可以找到存储系统中所存储的所有文件或数据,并进而可以对文件或数据进行进一步的操作,这些重要的系统信息包括但不限于根对象的位置,存储系统的总存储空间,剩余存储空间等。例如,如图1所示,在此类存储系统中,各对象之间的组织通常可以表现为文件系统中的目录树形式。当用户需要操作对象G时,首先需要在存储系统的固定位置读出超级块(SuperBlock),并通过解析超级块而找到根对象$root;然后,通过查找对象$root中的成员,可以找到对象B;并通过查找对象B中的成员,可以找到对象E,以及通过查找对象E中的成员,可以找到对象G;最后就可以对对象G进行操作了。应理解,如果将图1所示的数据结构理解成一个存储系统的目录树结构,那么根对象$root就是存储系统的根目录,对象A和B是根目录下的子目录,而对象C、D和E就是子目录B下的文件或子目录,并且对象F和G就是子目录E下的文件或子目录。在存储系统中,写时复制(CopyOnWrite,简称为“COW”)技术是对B树类型的数据结构进行修改操作的一种常用方法,该方法可以不借助日志,就可以保证异常情况下存储介质上元数据的一致性。当需要修改对象G时,为了保证不覆盖旧数据,就需要修改后的对象的位置发生变化,即修改后的对象变成了新对象GN,如图1中的S11所示;由于对象E中记录的是旧对象G,为了使得修改后的新对象GN可以被查询到,就需要将对象E修改为新对象EN,并使得新对象GN登记在新对象EN中,如图1中的S12所示;类似地,需要将对象B修改为新对象BN,将根对象修改为新根对象N,并且需要将超级块SuperBlock修改为新的超级块N,如图1中的S13、S14和S15所示。该超级块N通常具有固定的位置,以便存储系统通过扫描这些固定位置的超级块,能够找到最新的超级块,从而可以找到最新的超级块,并能够找到最新的根对象以及对象。因此,当需要对目标对象进行更新时,还需要对目标对象的所有上层对象进行更新;并且当目标对象的位置处于底层时,需要更新的对象非常多,存储系统的操作效率较低。
技术实现思路
本专利技术实施例提供了一种处理存储系统的方法和装置,能够提高存储系统的操作效率,并提高用户体验。第一方面,提供了一种处理存储系统的方法,该方法包括:确定用于记录存储系统的系统信息的超级块;创建根对象;创建对象集,该对象集用于存储该根对象和对象的标识以及位置信息,该根对象与该对象的标识不同,并且每个该对象的标识互不相同;将该对象集的位置信息记录到该超级块中;将该根对象的名称和标识记录到该超级块中。结合第一方面,在第一方面的第一种可能的实现方式中,该方法还包括:确定该对象集的标识,该对象集的标识与该根对象的标识不同,并且与该对象的标识不同;将该对象集的标识和名称记录到该根对象中。结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,该对象集存储的对象的标识和位置信息包括第一对象的标识和位置信息,该第一对象的标识与该根对象的标识不同,该方法还包括:将该第一对象修改为第二对象,该第二对象的标识为该第一对象的标识;将该对象集中存储的该第一对象的位置信息,更新为该第二对象的位置信息;根据更新后的该对象集的位置信息,对该超级块中存储的更新前的该对象集的位置信息进行更新。结合第一方面、第一方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,该方法还包括:确定对象标识,该对象标识与该对象集的标识不同,并且该对象标识与该对象集中包括的其它对象的标识不同;创建该第三对象,并将该对象标识确定为该第三对象的标识;将该第三对象的对象信息记录到该第三对象的父对象中,并将该第三对象的标识和位置信息记录到该对象集中,其中,该第三对象的对象信息至少包括该第三对象的名称和标识。结合第一方面或第一方面的第一种至第三种可能的实现方式中的任一种可能的实现方式,在第一方面的第四种可能的实现方式中,该方法还包括:根据待访问对象的标识,在该对象集中确定该待访问对象的位置信息;根据该待访问对象的位置信息,加载该待访问对象,以便于对该待访问对象进行访问,其中,该待访问对象包括该根对象和该对象。结合第一方面或第一方面的第一种至第三种可能的实现方式中的任一种可能的实现方式,在第一方面的第五种可能的实现方式中,该方法还包括:根据待访问对象的路径,确定该路径包括的该待访问对象;在该待访问对象的父对象中,确定该待访问对象的标识;根据该待访问对象的标识,在该对象集中确定该待访问对象的位置信息;根据该待访问对象的位置信息,加载该待访问对象,以便于对该待访问对象进行访问,其中,该待访问对象包括该根对象和该对象。第二方面,提供了一种处理存储系统的装置,该装置包括:确定模块,确定用于记录存储系统的系统信息的超级块;创建模块,用于创建根对象和对象集,该对象集用于存储该根对象和对象的标识以及位置信息,该根对象与该对象的标识不同,并且每个该对象的标识互不相同;记录模块,用于将该创建模块创建的该对象集的位置信息记录到该确定模块确定的该超级块中;其中,该记录模块还用于将该创建模块创建的该根对象的名称和标识记录到该确定模块确定的该超级块中。结合第二方面,在第二方面的第一种可能的实现方式中,该确定模块还用于确定该对象集的标识,该对象集的标识与该根对象的标识不同,并且与该对象的标识不同;该记录模块还用于将该对象集的标识和名称记录到该根对象中。结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,该创建模块创建的该对象集存储的对象的标识和位置信息包括第一对象的标识和位置信息,该第一对象的标识与该根对象的标识不同;其中,该装置还包括:修改模块,用于将该第一对象修改为第二对象,该第二对象的标识为该第一对象的标识;更新模块,用于将该对象集中存储的该第一对象的位置信息,更新为该第二对象的位置信息;其中,该更新模块还用于根据更新后的该对象集的位置信息,对该超级块中存储的更新前的该对象集的位置信息进行更新。结合第二方面、第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,该确定模块还用于:确定对象标识,该本文档来自技高网
...
处理存储系统的方法和装置

【技术保护点】
一种处理存储系统的方法,其特征在于,包括:确定用于记录存储系统的系统信息的超级块;创建根对象;创建对象集,所述对象集用于存储所述根对象和对象的标识以及位置信息,所述根对象与所述对象的标识不同,并且每个所述对象的标识互不相同;将所述对象集的位置信息记录到所述超级块中;将所述根对象的名称和标识记录到所述超级块中。

【技术特征摘要】
1.一种处理存储系统的方法,其特征在于,包括:确定用于记录存储系统的系统信息的超级块;创建根对象;创建对象集,所述对象集用于存储所述根对象和对象的标识以及位置信息,所述根对象与所述对象的标识不同,并且每个所述对象的标识互不相同,所述根对象中没有存储所述根对象的子对象的位置信息,每个所述对象中没有存储每个所述对象的子对象的位置信息,每个所述对象中存储有每个所述对象的子对象的标识;将所述对象集的位置信息记录到所述超级块中;将所述根对象的名称和标识记录到所述超级块中。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:确定所述对象集的标识,所述对象集的标识与所述根对象的标识不同,并且与所述对象的标识不同;将所述对象集的标识和名称记录到所述根对象中。3.根据权利要求1或2所述的方法,其特征在于,所述对象集存储的对象的标识和位置信息包括第一对象的标识和位置信息,所述第一对象的标识与所述根对象的标识不同,所述方法还包括:将所述第一对象修改为第二对象,所述第二对象的标识为所述第一对象的标识;将所述对象集中存储的所述第一对象的位置信息,更新为所述第二对象的位置信息;根据更新后的所述对象集的位置信息,对所述超级块中存储的更新前的所述对象集的位置信息进行更新。4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:确定对象标识,所述对象标识与所述对象集的标识不同,并且所述对象标识与所述对象集中包括的其它对象的标识不同;创建第三对象,并将所述对象标识确定为所述第三对象的标识;将所述第三对象的对象信息记录到所述第三对象的父对象中,并将所述第三对象的标识和位置信息记录到所述对象集中,其中,所述第三对象的对象信息至少包括所述第三对象的名称和标识。5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:根据待访问对象的标识,在所述对象集中确定所述待访问对象的位置信息;根据所述待访问对象的位置信息,加载所述待访问对象,以便于对所述待访问对象进行访问,其中,所述待访问对象包括所述根对象和所述对象。6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:根据待访问对象的路径,确定所述路径包括的所述待访问对象;在所述待访问对象的父对象中,确定所述待访问对象的标识;根据所述待访问对象的标识,在所述对象集中确定所述待访问对象的位置信息;根据所述待访问对象的位置信息,加载所述待访问对象,以便于对所述待访问对象进行访问,其中,所述待访问对象包括所述根对象和所述对象。7.一种处理存储系统的装置,其特征在于,包括:确定模块,确定用于记录存储系统的系统信息的超级块;创建模块,用于创建根对象和对象集,所述对象集用于存储所述根对象和对象的标识以及位置...

【专利技术属性】
技术研发人员:曾华荣
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1