CN106874457B - 一种通过虚拟目录来提升元数据集群性能的方法 - Google Patents

一种通过虚拟目录来提升元数据集群性能的方法 Download PDF

Info

Publication number
CN106874457B
CN106874457B CN201710078639.5A CN201710078639A CN106874457B CN 106874457 B CN106874457 B CN 106874457B CN 201710078639 A CN201710078639 A CN 201710078639A CN 106874457 B CN106874457 B CN 106874457B
Authority
CN
China
Prior art keywords
virtual
directory
subdirectory
metadata cluster
creating
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710078639.5A
Other languages
English (en)
Other versions
CN106874457A (zh
Inventor
陈贝贝
连双
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201710078639.5A priority Critical patent/CN106874457B/zh
Publication of CN106874457A publication Critical patent/CN106874457A/zh
Application granted granted Critical
Publication of CN106874457B publication Critical patent/CN106874457B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems

Abstract

本发明公开一种通过虚拟目录来提升元数据集群性能的方法,涉及数据集群管理领域;根据系统请求,建立元数据集群的虚拟子目录或者将普通目录设置为虚拟子目录,虚拟子目录建立后对元数据集群的操作请求,判断父目录是否为虚拟目录,不是则进行原有流程进行操作,否则进入虚拟目录,对操作名进行hash计算,根据hash值进入到相应的虚拟子目录中进行操作,利用本发明建立虚拟子目录既很好的提升了元数据性能,又很好的实现了压力的负载均衡。

Description

一种通过虚拟目录来提升元数据集群性能的方法
技术领域
本发明公开一种提升元数据集群性能的方法,涉及数据集群管理领域,具体的说是一种通过虚拟目录来提升元数据集群性能的方法。
背景技术
元数据是用来描述一个文件系统特征的数据。比如对于磁盘文件系统来说,关于文件组织和管理的信息就是该文件的元数据。在 UNIX 系统中,文件的元数据主要是文件目录项和索引节点结构。目录项和文件系统的名字空间相关,每个目录项对应一个文件名。索引节点结构中则存储着文件的很多重要信息,诸如访问权限、文件大小、文件的创建时间、最后存取时间、最后修改时间等属性信息,以及文件数据的物理分布信息,如直接块指针、间接块指针。此外,还有一些重要的系统数据,如超级块信息,记录了整个文件系统的使用情况,如空闲块的大小、己使用的空间大小等,也是一种元数据。
元数据的访问性能影响着分布式文件系统的性能。在分布式文件系统中,元数据的访问很频繁,而元数据文件通常又很小,这样对大量小文件的访问,会对系统性能造成冲击,不利于元数据的使用。本发明提供一种通过虚拟子目录来提升元数据集群性能的方法,为了提升元数据集群的性能,对虚拟子目录的创建,虚拟子目录可以分配不同的mds,实现负载均衡,单个目录可以利用多个mds,实现单目录小文件性能的提升,从而进一步实现元数据集群性能的提升。
发明内容
本发明针对目前技术发展的需求和不足之处,提供一种通过虚拟目录来提升元数据集群性能的方法,高效、便捷、实用性强、为元数据集群系统提升性能,解决瓶颈问题。
一种通过虚拟目录来提升元数据集群性能的方法,根据系统请求,建立元数据集群的虚拟子目录或者将普通目录设置为虚拟子目录,虚拟子目录建立后对元数据集群的操作请求,判断父目录是否为虚拟目录,不是则进行原有流程进行操作,否则进入虚拟目录,对操作名进行hash计算,根据hash值进入到相应的虚拟子目录中进行操作。
通过更改集群节点配置文件的参数,设置元数据集群的虚拟子目录的开启和关闭功能。
所述建立虚拟子目录,先创建虚拟父目录,再根据每个mds需要创建的目录个数,创建虚拟子目录,根据虚拟子目录导出规则将虚拟子目录导出到对应mds。
所述将普通目录设置为虚拟子目录:根据配置文件的参数创建虚拟子目录,遍历目录的一层通过hash算法计算存放位置,移动到对应的虚拟子目录。
先判断普通目录是否为虚拟子目录,不是则进行创建,是则结束创建。
通过更改配置文件目录inode中的xattr属性字段,设置元数据集群的虚拟子目录的开启和关闭功能。
更改目录inode中的xattr属性字段的User.vartualdir 的属性,设置元数据集群的虚拟子目录的开启和关闭功能。
本发明与现有技术相比具有的有益效果是:
本发明提供一种通过虚拟子目录来提升元数据集群性能的方法,根据系统请求,建立元数据集群的虚拟子目录或者将普通目录设置为虚拟子目录,虚拟子目录建立后对元数据集群的操作请求,判断父目录是否为虚拟目录,不是则进行原有流程进行操作,否则进入虚拟目录,对操作名进行hash计算,根据hash值进入到相应的虚拟子目录中进行操作。
为了提升元数据集群的性能,利用本发明对虚拟子目录的创建,虚拟子目录可以分配不同的mds,实现负载均衡,单个目录可以利用多个mds,实现单目录小文件性能的提升,从而进一步实现元数据集群性能的提升。
附图说明
图1本发明中建立虚拟子目录的流程示意图;
图2 本发明中对元数据集群的操作请求进行处理的流程示意图;
图3本发明中将普通目录设置为虚拟子目录的流程示意图;
图4本发明中虚拟子目录恢复成普通目录的流程示意图。
具体实施方式
本发明提供一种通过虚拟目录来提升元数据集群性能的方法,根据系统请求,建立元数据集群的虚拟子目录或者将普通目录设置为虚拟子目录,虚拟子目录建立后对元数据集群的操作请求,判断父目录是否为虚拟目录,不是则进行原有流程进行操作,否则进入虚拟目录,对操作名进行hash计算,根据hash值进入到相应的虚拟子目录中进行操作。
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施,对本发明进一步详细说明。
利用本发明方法,根据系统请求,建立元数据集群的虚拟子目录或者将普通目录设置为虚拟子目录,如下:
其中建立虚拟子目录,先创建虚拟父目录,再根据每个mds需要创建的目录个数n,创建n个虚拟子目录,根据虚拟子目录导出规则将虚拟子目录导出到对应mds;此外在创建虚拟父目录前,可以对创建目录请求进行问询,是否创建虚拟目录,如是则继续进行,否则按照原有创建流程创建普通目录,参考图1;
将普通目录设置为虚拟子目录:根据配置文件的参数设置虚拟子目录,比如更改目录inode中的xattr属性字段,增加user.virtualdir字段属性,用virtual_dir_num参数0-5来设置元数据集群的普通目录是否为虚拟子目录,其中数值是0则表明不是虚拟子目录,是普通目录;而参数是大于0的正数,则表明是虚拟子目录;
利用上述更改配置文件参数实例,普通目录设置为虚拟子目录流程可以参考图3,其中接收将普通目录设置为虚拟子目录的指令后,如启用更改配置文件参数来设置虚拟子目录,则创建虚拟子目录,然后遍历目录的一层通过hash算法计算存放位置,利用Mv移动到对应的虚拟子目录,导出虚拟子目录,设置user.virtualdir值等于1,大于0,因此为虚拟子目录;其中可以预先对普通目录是否为虚拟子目录进行判断,不是则进行创建,是则结束创建;
虚拟子目录建立后对元数据集群的操作请求,判断父目录是否为虚拟目录,不是则进行原有流程进行操作,否则进入虚拟目录,对操作名进行hash计算,根据hash值进入到相应的虚拟子目录中进行操作。
此外,普通目录可以通过更改配置文件目录inode中的xattr属性字段,设置元数据集群的虚拟子目录的开启和关闭功能,继续上述实施例,则利用将user.virtualdir值设置等于0,使虚拟子目录恢复成普通目录,恢复后相应虚拟子目录可被删除,此过程为:更改该目录的User.vartualdir 的属性为0,将该目录下的虚拟子目录的分配mds导回0,之后遍历目录的一层,通过Mv操作移动到上级目录下,相关目录操作完成后,将这些目录删除。
利用本发明方法可以高效、便捷地提升元数据集群系统的性能,实用性强,并且操作便利,不需要人为干预,在提升元数据性能的同时,还能够很好的隐藏目录。

Claims (4)

1.一种通过虚拟目录来提升元数据集群性能的方法,其特征在于根据系统请求,建立元数据集群的虚拟子目录或者将普通目录设置为虚拟子目录,并通过更改元数据集群节点配置文件目录inode中xattr属性字段的User.vartualdir的属性,设置元数据集群的虚拟子目录的开启和关闭功能,虚拟子目录建立后对元数据集群的操作请求,判断父目录是否为虚拟目录,不是则进行原有流程进行操作,否则进入虚拟目录,对操作名进行hash计算,根据hash值进入到相应的虚拟子目录中进行操作。
2.根据权利要求1所述的方法,其特征在于所述建立虚拟子目录,先创建虚拟父目录,再根据每个mds需要创建的目录个数,创建虚拟子目录,根据虚拟子目录导出规则将虚拟子目录导出到对应mds。
3.根据权利要求1或2所述的方法,其特征在于所述将普通目录设置为虚拟子目录:根据配置文件的参数创建虚拟子目录,遍历目录的一层通过hash算法计算存放位置,移动到对应的虚拟子目录。
4.根据权利要求3所述的方法,其特征在于先判断普通目录是否为虚拟子目录,不是则进行创建,是则结束创建。
CN201710078639.5A 2017-02-14 2017-02-14 一种通过虚拟目录来提升元数据集群性能的方法 Active CN106874457B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710078639.5A CN106874457B (zh) 2017-02-14 2017-02-14 一种通过虚拟目录来提升元数据集群性能的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710078639.5A CN106874457B (zh) 2017-02-14 2017-02-14 一种通过虚拟目录来提升元数据集群性能的方法

Publications (2)

Publication Number Publication Date
CN106874457A CN106874457A (zh) 2017-06-20
CN106874457B true CN106874457B (zh) 2020-03-06

Family

ID=59166898

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710078639.5A Active CN106874457B (zh) 2017-02-14 2017-02-14 一种通过虚拟目录来提升元数据集群性能的方法

Country Status (1)

Country Link
CN (1) CN106874457B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109189341B (zh) * 2018-08-30 2021-07-16 郑州云海信息技术有限公司 分布式存储系统的目录负载均衡方法、装置、设备及介质
CN114048185B (zh) * 2021-11-18 2022-09-02 北京聚存科技有限公司 一种分布式文件系统中海量小文件透明打包存储与访问的方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141287A (zh) * 2007-09-21 2008-03-12 华为技术有限公司 一种对多工作区的目录进行管理的方法及设备
CN101334785A (zh) * 2008-07-30 2008-12-31 浙江大学 分布式文件系统虚拟目录组织及命名空间管理的方法
CN101692239A (zh) * 2009-10-19 2010-04-07 浙江大学 一种分布式文件系统元数据分配方法
CN103916467A (zh) * 2014-03-25 2014-07-09 中国科学院计算技术研究所 一种元数据集群中负载转移方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2486462B (en) * 2010-12-16 2019-04-24 Maidsafe Found Distributed file system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101141287A (zh) * 2007-09-21 2008-03-12 华为技术有限公司 一种对多工作区的目录进行管理的方法及设备
CN101334785A (zh) * 2008-07-30 2008-12-31 浙江大学 分布式文件系统虚拟目录组织及命名空间管理的方法
CN101692239A (zh) * 2009-10-19 2010-04-07 浙江大学 一种分布式文件系统元数据分配方法
CN103916467A (zh) * 2014-03-25 2014-07-09 中国科学院计算技术研究所 一种元数据集群中负载转移方法及系统

Also Published As

Publication number Publication date
CN106874457A (zh) 2017-06-20

Similar Documents

Publication Publication Date Title
US11797498B2 (en) Systems and methods of database tenant migration
US10474631B2 (en) Method and apparatus for content derived data placement in memory
US9542409B2 (en) Deduplicated file system
CN103229173B (zh) 元数据管理方法及系统
US8849880B2 (en) Providing a shadow directory and virtual files to store metadata
CN111045857B (zh) 数据备份和恢复的方法、电子设备和计算机可读存储介质
US8095678B2 (en) Data processing
JP2015503777A (ja) ファイルクローンを利用したシングルインスタンス化方法及びそれを用いたファイルストレージ装置
CN100424699C (zh) 一种属性可扩展的对象文件系统
US9411526B1 (en) Filesystem management
US20190034447A1 (en) Methods and Apparatus for Filtering Dynamically Loadable Namespaces (DLNs)
CN106874457B (zh) 一种通过虚拟目录来提升元数据集群性能的方法
CN102253985A (zh) 一种文件系统数据的管理方法及系统
CN112685223A (zh) 基于文件类型的文件备份
CN110832473B (zh) 日志结构管理系统及方法
CN109858278B (zh) 文件权限设置方法、装置、计算机设备和存储介质
CN104537023B (zh) 一种反向索引记录的存储方法及装置
CN110837478A (zh) 文件管理方法、存储介质和电子设备
CN109241011B (zh) 一种虚拟机文件处理方法及装置
US10997126B1 (en) Methods and apparatus for reorganizing dynamically loadable namespaces (DLNs)
Prabavathy et al. Multi-index technique for metadata management in private cloud storage
US20220365905A1 (en) Metadata processing method and apparatus, and a computer-readable storage medium
US20230376451A1 (en) Client support of multiple fingerprint formats for data file segments
US20230376461A1 (en) Supporting multiple fingerprint formats for data file segment
CN113127717A (zh) 一种密钥检索方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant