元数据管理方法及系统技术方案

技术编号:8983346 阅读:143 留言:0更新日期:2013-08-01 02:07
本发明专利技术涉及一种元数据管理方法及系统,其中,元数据管理方法包括:以目录层次结构作为元数据组织结构,并以对象系统中的用户名作为目录层次结构中根目录下的第一层目录;以对象系统中用户名对应的桶作为目录层次结构中该用户名目录下的目录;根据对象系统中与每个桶关联的对象名中的分割符“/”将对象名分割为对应桶目录下的目录名或文件名;以相同目录的索引节点集合为存储单位存储元数据,并以目录名或文件名所在目录的绝对路径名计算的hash值作为存储单位的标识存储在目录索引节点中。本发明专利技术应用于与将文件系统和对象系统的元数据进行统一存储管理的元数据存储系统中。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及计算机技术,尤其涉及一种元数据管理方法及系统
技术介绍
元数据是保存于存储介质上的用于管理数据的数据,其可使用户根据该元数据进行定位获取其管理的数据。现有技术中的元数据的组织结构分为两类:文件系统元数据和对象系统元数据,其中,文件系统元数据以文件/目录为单位,该元数据组织结构中的各个文件和目录采用层级结构的目录树,以索引节点(inode)为存储单位进行存储,在查询定位时以各级inode为标识进行逐级多次输入输出(IO)定位;对象系统元数据组织结构以桶/对象(Bucket/object)为存储单位进行存储,object是没有目录层级结构的名称,在查询定位时以全路径名为标识进行一次IO定位。由于现有的元数据管理在文件系统和对象系统中的数据组织结构不同,因此两类系统分别需要相应的元数据存储,即需要两套元数据存储系统,所以,实际应用中需要一种元数据存储管理结构在不影响两类系统各自应用特点和操作效率的情况下,能够同时实现两类系统的元数据管理。
技术实现思路
本专利技术提供一种元数据管理方法及系统,用以在保证文件系统和对象系统各自应用特点和操作效率的情况下,统一文件系统和对象系统的元数据存储。本专利技术的第一个方面 是提供一种元数据管理方法,包括:以目录层次结构作为元数据组织结构,并以对象系统中的用户名作为目录层次结构中根目录下的第一层目录;以对象系统中用户名对应的桶作为目录层次结构中该用户名目录下的目录;根据对象系统中与每个桶关联的对象名中的分割符将对象名分割为对应桶目录下的目录名或文件名;以相同目录的索引节点集合为存储单位存储元数据,并以目录名或文件名所在目录的绝对路径名计算的哈希(hash)值作为存储单位的标识存储在目录索引节点中。结合第一个方面的元数据管理方法,在第一种实现方式中,若相同目录中的索引节点个数大于预设的个数时,对该相同目录中的索引节点进行二叉树分片存储在同一标识对应的不同存储单位中。结合第一个方面的元数据管理方法或第一种实现方式,在第二种实现方式中,若根据不同绝对路径名计算得到相同的hash值,则将该不同绝对路径对应的目录存放于该相同的hash值标识对应的不同存储单位中。本专利技术的第二个方面是提供一种元数据管理系统,包括:组织模块,用于以目录层次结构作为元数据组织结构,并以对象系统中的用户名作为目录层次结构中根目录下的第一层目录;以对象系统中用户名对应的桶作为目录层次结构中该用户名目录下的目录;根据对象系统中与每个桶关联的对象名中的分割符将对象名分割为对应桶目录下的目录名或文件名;存储模块,用于以相同目录的索引节点集合为存储单位存储元数据,并以目录名或文件名所在目录的绝对路径名计算的hash值作为存储单位的标识存储在目录索引节点中。结合第二个方面的元数据管理系统,在第一种实现方式中,所述存储模块,还用于若相同目录中的索引节点个数大于预设的个数时,对该相同目录中的索引节点进行二叉树分片存储在同一标识对应的不同存储单位中。结合第二个方面的元数据管理系统或第一种实现方式,在第二种实现方式中,所述存储模块,还用于若根据不同绝对路径名计算得到相同的hash值,则将该不同绝对路径对应的目录存放于该相同的hash值标识对应的不同存储单位中。本专利技术通过以目录层次结构作为元数据组织结构,并以对象系统中与每个桶关联的对象名中的分割符“/”将对象名分割为对应桶目录下的目录名或文件名,并以目录名或文件名所在目录的绝对路径名计算的hash值作为存储单位的标识存储在目录索引节点中,实现了文件系统和对象系统共用一份元数据管理系统而且由于采用这种元数据管理方法,对文件系统和对象系统的各自性能和目录操作效率并没有影响,所以对文件系统和对象系统的用户来说,不会出现任 何使用不便的问题;进一步通过二叉树分片技术以克服同一标识具有较多节点索引时查询效率问题;同时,当出现计算的hash值出现冲突时,进一步通过将不同目录存放在标识相同的一组存储单位中以克服,还可配合分片技术以避免降低效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术元数据管理方法实施例的流程图;图2为本专利技术元数据管理方法具体应用例的示意图;图3为本专利技术元数据管理系统实施例的结构示意图;图4为本专利技术元数据管理系统一个应用例的结构示意5为本专利技术元数据管理系统另一个应用例的结构示意图。具体实施例方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1为本专利技术元数据管理方法实施例的流程图,如图1所示,本实施例的方法包括:步骤101、以目录层次结构作为元数据组织结构,并以对象系统中的用户名作为目录层次结构中根目录下的第一层目录;以对象系统中用户名对应的桶作为目录层次结构中该用户名目录下的目录;根据对象系统中与每个桶关联的对象名中的分割符“/”将对象名分割为对应桶目录下的目录名或文件名。本专利技术实施例中,逻辑上将文件系统和对象系统的元数据进行了统一,文件系统和对象系统使用存储的同一份元数据。该元数据的数据组织结构采用文件系统的目录层次结构,而将对象系统中各个对象名按照分割符“/”进行分割,得到对应桶目录下的目录名或文件名,以便于后续根据各个目录或文件所在的绝对路径名确定存储单位的标识。步骤102、以相同目录的索引节点集合为存储单位存储元数据,并以目录名或文件名所在目录的绝对路径名计算的hash值作为存储单位的标识存储在目录索引节点中。在上述步骤的目录组织结构的基础上,本步骤计算获取各个目录或文件所在的目录的绝对路径名对应的目录标识(dir_id),即存储单位的标识,并存储该目录标识,使后续目录操作时根据该目录标识可直接一次获取对应的数据。本实施例中,通过计算目录名或文件名所在目录的绝对路径名的hash值获取相应的目录标识,由于以路径结构层次化的方法获取的hash值中包含层次化hash算法,所以能够减少标识冲突。而且通过计算hash值的方法可以非顺序分配存储单位的标识,且标识中含有路径快速定位信息的分配算法,保证了目录操作的快速定位,提高了操作效率。由于采用本专利技术的方法存储的元数据,并不影响文件系统和对象系统的各自性能和目录操作效率,因此用户在使用两类系统时不会出现使用不便的问题;而且由于两类系统采用同一份元数据存储,当用户在文件系统中进行元数据更新时,在对象系统中可以看到更新的数据,反之亦然。根据上述方法存储的元数据,文件系统可以直接使用,对象系统也可以直接使用,即两类系统统一采用一份元数据存储系统进行元数据管理,而且,对采用本专利技术的方法存储的元数据进行操作时,对象系统可通过其与元数据管理系统的接口模块一次IO操作即可获取相应的数据。在实际应用中,以相同目录的索引节点集合为存储单位存储元数据本文档来自技高网...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】

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

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

1