CN105279095A - 创建jbod文件***的方法及装置 - Google Patents
创建jbod文件***的方法及装置 Download PDFInfo
- Publication number
- CN105279095A CN105279095A CN201410299366.3A CN201410299366A CN105279095A CN 105279095 A CN105279095 A CN 105279095A CN 201410299366 A CN201410299366 A CN 201410299366A CN 105279095 A CN105279095 A CN 105279095A
- Authority
- CN
- China
- Prior art keywords
- jbod
- file
- file system
- data
- path
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/80—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种创建JBOD文件***的方法,该创建JBOD文件***的方法包括:当侦测到JBOD文件***创建指令时,创建元数据文件;创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径;根据JBOD文件***的路径信息、格式化类型和挂载点路径,对JBOD文件***进行格式化和初始化;根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息。本发明还公开了一种创建JBOD文件***的装置。本发明能够在含有多个数据盘的JBOD上创建多盘JBOD文件***,而且提高了JBOD使用的可靠性。
Description
技术领域
本发明涉及计算机应用领域,尤其涉及一种创建JBOD文件***的方法及装置。
背景技术
JBOD(JustaBunchOfDisks,简单磁盘捆绑,也称磁盘簇)是在一个底板上安装的带有多个磁盘驱动器的存储设备,JBOD上的每个磁盘(即数据盘)都是单独寻址,作为分开的存储资源使用和管理。与传统的RAID(RedundantArrayofInexpensiveDisks,廉价磁盘冗余)阵列相比,JBOD的优势在于它的低成本,可以将多个磁盘合并到共享电源和风扇的盒子里,是一种经济的、节省空间的配置存储方式。随着更高容量的磁盘驱动器投入市场,采用具有几TB的磁盘建立JBOD成为可能。由于JBOD一般在使用中都包含多个磁盘,因此总的存储容量十分巨大。
目前常常通过虚拟卷管理器或者软件RAID的方式来管理多个磁盘,将多个磁盘虚拟成为一个硬盘,然后在所虚拟的硬盘上面创建文件***,提供统一的应用方式给应用层使用。采用上述方案,当有两块磁盘同时损坏的情况下,整个文件***将无法运行,而且磁盘中损坏的数据也将无法修复。究其原因,虽然虚拟卷管理器或者软件RAID能够在一定程度上保障存储的安全性,但是构建在上面的文件***,仍然是基于单盘来设计实现的,不能满足JBOD的应用场景。
发明内容
本发明的主要目的是在于创建JBOD文件***,提高JBOD使用的可靠性。
为了达到上述目的,本发明提供一种创建JBOD文件***的方法,该方法包括:
当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件;
创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径;
根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化;
根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化;
根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息。
优选地,所述创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径具体为:
创建配置文件,通过所述创建配置文件配置元数据文件的路径信息和格式化类型、数据盘的路径信息和格式化类型,以及JBOD文件***的挂载点路径。
优选地,所述根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化具体为:
根据元数据文件的路径信息和格式化类型,对元数据文件进行格式化;并根据数据盘的路径信息和格式化类型,对数据盘进行格式化。
优选地,所述根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化具体为:
根据元数据文件的路径信息和JBOD文件***的挂载点路径,对元数据文件中的元数据信息进行挂载;根据数据盘的路径信息,读取数据盘的序列号,并根据所述数据盘的序列号获取数据盘的挂载点路径,对数据盘进行挂载。
优选地,所述根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在数据盘上的路径信息包括:
根据JBOD文件***的挂载点路径,在JBOD文件***的挂载点路径下创建JBOD文件***的路径文件,将JBOD文件***的路径文件存放在所述元数据文件中;
根据预设的策略选择JBOD文件***的数据文件要存放的数据盘;
根据所选择数据盘的序列号和挂载点路径,在所选择数据盘的挂载点路径下创建JBOD文件***的数据文件,并确定JBOD文件***的数据文件在数据盘上的路径信息;
将JBOD文件***的数据文件的路径信息存放在所述JBOD文件***的路径文件中。
此外,为了达到上述目的,本发明还提供一种创建JBOD文件***的装置,该装置包括:
配置模块,用于创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径;
格式化处理模块,用于根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化;
初始化处理模块,用于根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化;
***盘,用于当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件;且用于根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息。
优选地,所述配置模块具体用于:
创建配置文件,通过所述创建配置文件配置元数据文件的路径信息和格式化类型、数据盘的路径信息和格式化类型,以及JBOD文件***的挂载点路径。
优选地,所述格式化处理模块具体用于:
根据元数据文件的路径信息和格式化类型,对元数据文件进行格式化;并根据数据盘的路径信息和格式化类型,对数据盘进行格式化。
优选地,所述初始化处理模块具体用于:
根据元数据文件的路径信息和JBOD文件***的挂载点路径,对元数据文件中的元数据信息进行挂载;根据数据盘的路径信息,读取数据盘的序列号,并根据所述数据盘的序列号获取数据盘的挂载点路径,对数据盘进行挂载。
优选地,所述***盘包括:
元数据文件创建单元,用于当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件;
路径文件创建单元,用于根据JBOD文件***的挂载点路径,在JBOD文件***的挂载点路径下创建JBOD文件***的路径文件,将JBOD文件***的路径文件存放在所述元数据文件中;
数据盘选择单元,用于根据预设的策略选择JBOD文件***的数据文件要存放的数据盘;
数据文件创建单元,用于根据所选择数据盘的序列号和挂载点路径,在所选择数据盘的挂载点路径下创建JBOD文件***的数据文件,并确定JBOD文件***的数据文件在数据盘上的路径信息;
文件关联单元,用于将JBOD文件***的数据文件的路径信息存放在所述JBOD文件***的路径文件中。
本发明提供的创建JBOD文件***的方法及装置,首先***盘在侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件,配置模块创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径;格式化处理模块根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化;初始化处理模块根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化;然后***盘根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息。本发明通过将JBOD文件***的数据文件在数据盘上的路径信息存放在JBOD文件***的路径文件中,实现JBOD文件***的路径文件与数据文件的关联对应,从而可以在含有多个数据盘的JBOD上创建多盘JBOD文件***,当JBOD上有一个或多个数据盘损坏时,只是丢失损坏的数据盘上的数据,而不影响JBOD文件***正常使用,提高了JBOD使用的可靠性。
附图说明
图1为本发明创建JBOD文件***的方法较佳实施例的流程示意图;
图2为图1中步骤S50的流程示意图;
图3为本发明创建JBOD文件***的装置较佳实施例的结构示意图;
图4为图3中***盘的结构示意图。
本发明的目的、功能特点及优点的实现,将结合实施例,并参照附图作进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种创建JBOD文件***的方法。
参照图1,图1为本发明创建JBOD文件***的方法较佳实施例的流程示意图。
本发明较佳实施例提供的创建JBOD文件***的方法包括以下步骤:
步骤S10:当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件。
为在含有多个数据盘的JBOD上创建多盘JBOD文件***,本实施例将JBOD连接到创建JBOD文件***的装置(如服务器主机)上,当创建JBOD文件***的装置侦测到JBOD文件***创建指令时,该JBOD文件***创建指令是JBOD首次连接创建JBOD文件***的装置时发起的,在***盘上创建元数据文件,利用该元数据文件存放JBOD文件***的路径文件,以建立JBOD文件***的路径文件与数据文件的关联对应。
步骤S20:创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径。
在创建用于存放JBOD文件***的路径文件的元数据文件后,创建JBOD文件***的装置创建配置文件,通过配置文件配置JBOD文件***的路径信息、格式化类型和挂载点路径,以便在创建JBOD文件***过程中对JBOD文件***进行格式化和初始化,为创建JBOD文件***做好准备。
步骤S30:根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化。
在对JBOD文件***的路径信息、格式化类型和挂载点路径进行配置,确定JBOD文件***的路径信息、格式化类型和挂载点路径之后,创建JBOD文件***的装置根据所配置的JBOD文件***的路径信息,按照所配置的JBOD文件***的格式化类型,对JBOD文件***进行格式化。
步骤S40:根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化。
经过对JBOD文件***进行格式化后,创建JBOD文件***的装置根据所配置的JBOD文件***的路径信息,以及所配置的JBOD文件***的挂载点路径,对JBOD文件***进行初始化,从而给应用层提供JBOD文件***的文件访问接口,使得在创建JBOD文件***后,应用层可以访问JBOD文件***。
步骤S50:根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息。
创建JBOD文件***的装置在侦测到JBOD文件***创建指令时,通过***盘在根目录下创建元数据文件,在对JBOD文件***进行格式化,以及对JBOD文件***进行初始化后,创建JBOD文件***的装置建立JBOD文件***的路径文件与JBOD文件***的数据文件的关联对应,具体为:创建JBOD文件***的装置根据所配置的JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,将JBOD文件***的数据文件在JBOD的数据盘上的路径信息存放在JBOD文件***的路径文件中,从而通过JBOD文件***的路径文件存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息,实现JBOD文件***的路径文件与JBOD文件***的数据文件的关联对应,完成JBOD文件***的创建。由于JBOD上包含多个数据盘,因此每个数据盘上存放的数据文件在路径文件中都有对应的路径信息,即路径文件存放每个数据盘中的数据文件的路径信息。
JBOD文件***的路径文件中不仅包含JBOD文件***的数据文件在JBOD的各个数据盘上的路径信息,还包含JBOD中各个数据盘的文件目录、文件名称。
本发明创建JBOD文件***的方法,通过将JBOD文件***的数据文件在数据盘上的路径信息存放在JBOD文件***的路径文件中,实现JBOD文件***的路径文件与数据文件的关联对应,从而可以在含有多个数据盘的JBOD上创建多盘JBOD文件***,当JBOD上有一个或多个数据盘损坏时,只是丢失损坏的数据盘上的数据,而不影响JBOD文件***正常使用,提高了JBOD使用的可靠性。
具体地,步骤S20具体为:
创建配置文件,通过所述创建配置文件配置元数据文件的路径信息和格式化类型、数据盘的路径信息和格式化类型,以及JBOD文件***的挂载点路径。
上述JBOD文件***的路径信息包括元数据文件的路径信息和数据盘的路径信息,上述JBOD文件***的格式化类型包括元数据文件的格式化类型和数据盘的格式化类型。
在侦测到有JBOD接入的情况下,创建JBOD文件***的装置配置元数据文件的路径信息和格式化类型、数据盘的路径信息和格式化类型,以及JBOD文件***的挂载点路径。
例如,要在创建JBOD文件***的装置的***盘的根目录/home下创建名为jbodfs.meta的元数据文件(用metafile表示),要在元数据文件中构建ext文件***,则可以将元数据文件的路径信息配置为“/home/jbodfs.meta”,将元数据文件的格式化类型(用metaformat表示)配置为“ext”。
例如,JBOD包含16个数据盘,且数据盘(用datadev表示)的设备名称分别为sdb,……,sdq,要在数据盘中构建xfs文件***,则可以将数据盘的路径信息配置为“/dev/sdb,/dev/sdc,……,/dev/sdq”,将数据盘的格式化类型(用dateformat表示)配置为“xfs”。
例如,要将JBOD文件***挂载在/jbodfs路径下,则可以将JBOD文件***的挂载点路径(用mountpath表示)配置为“/jbodfs”。
具体可根据如下示意的命令格式进行配置:
metafile=/home/jbodfs.meta;
metaformat=ext3;
datadev=/dev/sdb,/dev/sdc,……,/dev/sdq;
dateformat=xfs;
mountpath=/jbodfs。
具体地,步骤S30具体为:
根据元数据文件的路径信息和格式化类型,对元数据文件进行格式化;并根据数据盘的路径信息和格式化类型,对数据盘进行格式化。
在对元数据文件的路径信息、格式化类型,以及数据盘的路径信息、格式化类型进行配置,确定元数据文件的路径信息、格式化类型,以及数据盘的路径信息、格式化类型之后,创建JBOD文件***的装置根据所配置的元数据文件的路径信息,按照所配置的元数据文件的格式化类型,对元数据文件进行格式化;根据所配置的数据盘的路径信息,按照所配置的数据盘的格式化类型,对数据盘进行格式化。
例如,在将元数据文件的路径信息配置为“/home/jbodfs.meta”,将元数据文件的格式化类型配置为“ext”的情况下,具体可根据如下示意的命令格式对元数据文件进行格式化:
mkfs-text3/home/jbodfs.meta。
例如,在将数据盘的路径信息配置为“/dev/sdb,sdc,……,/dev/sdq”,将数据盘的格式化类型配置为“xfs”的情况下,具体可根据如下示意的命令格式对数据盘进行格式化:
mkfs–txfs/dev/sdb;
mkfs–txfs/dev/sdc;
……
mkfs–txfs/dev/sdq。
具体地,步骤S40具体为:
根据元数据文件的路径信息和JBOD文件***的挂载点路径,对元数据文件中的元数据信息进行挂载;根据数据盘的路径信息,读取数据盘的序列号,并根据所述数据盘的序列号获取数据盘的挂载点路径,对数据盘进行挂载。
经过对元数据文件中和数据盘进行格式化后,创建JBOD文件***的装置根据所配置的元数据文件的路径信息,以及所配置的JBOD文件***的挂载点路径,对元数据文件中的元数据信息(包括路径文件,以及路径文件中包含的各个数据盘的文件目录、文件名称,以及数据文件的路径信息)进行初始化,即对元数据文件中的元数据信息进行挂载;同时根据所配置的数据盘的路径信息,读取数据盘的序列号,并根据所述数据盘的序列号获取数据盘的挂载点路径,对数据盘进行初始化,即对数据盘进行挂载。从而给应用层提供JBOD文件***的文件访问接口,使得在创建JBOD文件***后,应用层可以访问JBOD文件***。
例如,在将元数据文件的路径信息配置为“/home/jbodfs.meta”,将JBOD文件***的挂载点路径配置为“/jbodfs”的情况下,具体可根据如下示意的命令格式对元数据文件中的元数据信息进行挂载:
mkdir/jbodfs;
mount–text3–oloop/home/jbodfs.meta/jbodfs。
例如,在将数据盘的路径信息配置为“/dev/sdb,/dev/sdc,……,/dev/sdq”的情况下,可读取出JBOD中/dev/sdb路径下数据盘的序列号、/dev/sdc路径下数据盘的序列号、……、/dev/sdq路径下数据盘的序列号,假设/dev/sdb路径下数据盘的序列号为SNB、/dev/sdc路径下数据盘的序列号为SNC、……、/dev/sdq路径下数据盘的序列号为SNQ,则可根据如下示意的目录格式为数据盘进行挂载:
mkdir/mnt/SNB;
mkdir/mnt/SNC;
……
mkdir/mnt/SNQ;
mount–txfs/dev/sdb/mnt/SNB;
mount–txfs/dev/sdb/mnt/SNC;
……
mount–txfs/dev/sdqmnt/SNQ。
再参照图2,图2为图1中步骤S50的流程示意图。
具体地,步骤S50具体包括以下步骤:
步骤S51:根据JBOD文件***的挂载点路径,在JBOD文件***的挂载点路径下创建JBOD文件***的路径文件,将JBOD文件***的路径文件存放在所述元数据文件中。
步骤S52:根据预设的策略选择JBOD文件***的数据文件要存放的数据盘。
步骤S53:根据所选择数据盘的序列号和挂载点路径,在所选择数据盘的挂载点路径下创建JBOD文件***的数据文件,并确定JBOD文件***的数据文件在数据盘上的路径信息。
步骤S54:将JBOD文件***的数据文件的路径信息存放在所述JBOD文件***的路径文件中。
创建JBOD文件***的装置在侦测到JBOD文件***创建指令时,通过***盘在根目录下创建元数据文件,在对元数据文件和数据盘进行格式化,以及对元数据文件和数据盘进行初始化后,创建JBOD文件***的装置建立JBOD文件***的路径文件与JBOD文件***的数据文件的关联对应,具体为:***盘根据所配置的JBOD文件***的挂载点路径,在JBOD文件***的挂载点路径下创建JBOD文件***的路径文件,将JBOD文件***的路径文件存放在该元数据文件中,例如,在JBOD文件***的挂载点路径/jbodfs/path下创建名为test.txt的路径文件,该路径文件的路径信息为/jbodfs/path/test.txt;而且根据预设的策略选择JBOD文件***的数据文件要存放的数据盘,例如,选择JBOD中最空闲的一个数据盘存放JBOD文件***的数据文件,且该最空闲的数据盘的序列号为SNB,该最空闲的数据盘的挂载点路径为/mnt/SNB。
在选择要存放数据文件的数据盘后,根据所选择数据盘的序列号和挂载点路径,在所选择数据盘的挂载点路径下创建JBOD文件***的数据文件,并确定JBOD文件***的数据文件在数据盘上的路径信息。例如,在所选择的数据盘的序列号为SNB,挂载点路径为/mnt/SNB的情况下,在/mnt/SNB/path下创建名为test.txt的数据文件,由此可确定该数据文件的路径信息为/mnt/SNB/path/test.txt。
在确定数据文件的路径信息为/mnt/SNB/path/test.txt后,将数据文件的路径信息“/mnt/SNB/path/test.txt”存放到/jbodfs/path路径下的路径文件test.txt中,至此,实现了元数据文件中存放的路径文件跟数据盘中存放的数据文件的关联对应,完成JBOD文件***的创建。从而应用层要对/jbodfs/path路径下的路径文件test.txt进行操作时,只要打开/mnt/SNB/path下的数据文件test.txt进行操作即可。
例如,JBOD文件***的数据文件存放在序列号为SNB的数据盘中,当应用层需要读写/jbodfs/path路径下的路径文件test.txt,先打开/jbodfs/path路径下的路径文件test.txt,从中获取数据文件实际存放的路径信息/mnt/SNB/path/test.txt,然后根据路径信息/mnt/SNB/path/test.txt读写序列号为SNB数据盘中的数据文件,进而完成对/jbodfs/path路径下的路径文件test.txt的读写操作。
又如,JBOD文件***的数据文件存放在序列号为SNB的数据盘中,当应用层需要删除/jbodfs/path路径下的路径文件test.txt,先打开/jbodfs/path路径下的路径文件test.txt,从中获取数据文件实际存放的路径信息/mnt/SNB/path/test.txt,然后根据路径信息/mnt/SNB/path/test.txt将序列号为SNB的数据盘中的数据文件test.txt删除,再将/jbodfs/path路径下的路径文件test.txt删除,进而完成对/jbodfs/path路径下的路径文件test.txt的删除操作。
本发明还提供一种创建JBOD文件***的装置。
参照图3,图3为本发明创建JBOD文件***的装置较佳实施例的结构示意图。
如图3所示,本发明较佳实施例中,创建JBOD文件***的装置包括配置模块100、格式化处理模块200、初始化处理模块300和***盘400。
其中,配置模块100用于当侦测到有JBOD(图未示)接入时,配置JBOD文件***的路径信息、格式化类型和挂载点路径。
格式化处理模块200用于根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化。
初始化处理模块300用于根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化。
***盘400用于当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件;且用于根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息。
为在含有多个数据盘的JBOD上创建多盘JBOD文件***,本实施例将JBOD连接到创建JBOD文件***的装置(如服务器主机)上,当创建JBOD文件***的装置侦测到JBOD文件***创建指令时,该JBOD文件***创建指令是JBOD首次连接创建JBOD文件***的装置时发起的,创建JBOD文件***的装置通过***盘400创建元数据文件,利用该元数据文件存放JBOD文件***的路径文件,以建立JBOD文件***的路径文件与数据文件的关联对应。
在创建用于存放JBOD文件***的路径文件的元数据文件后,通过配置模块100创建配置文件,通过配置文件配置JBOD文件***的路径信息、格式化类型和挂载点路径,以便在创建JBOD文件***过程中对JBOD文件***进行格式化和初始化,为创建JBOD文件***做好准备。
在配置模块100对JBOD文件***的路径信息、格式化类型和挂载点路径进行配置,确定JBOD文件***的路径信息、格式化类型和挂载点路径之后,创建JBOD文件***的装置中格式化处理模块200根据所配置的JBOD文件***的路径信息,按照所配置的JBOD文件***的格式化类型,对JBOD文件***进行格式化。
经过格式化处理模块200对JBOD文件***进行格式化后,创建JBOD文件***的装置中初始化处理模块300根据所配置的JBOD文件***的路径信息,以及所配置的JBOD文件***的挂载点路径,对JBOD文件***进行初始化,从而给应用层提供JBOD文件***的文件访问接口,使得在创建JBOD文件***后,应用层可以访问JBOD文件***。
创建JBOD文件***的装置在侦测到JBOD文件***创建指令时,通过***盘在根目录下创建元数据文件,在格式化处理模块200对JBOD文件***进行格式化,以及初始化处理模块300对JBOD文件***进行初始化后,创建JBOD文件***的装置建立JBOD文件***的路径文件与JBOD文件***的数据文件的关联对应,具体为:创建JBOD文件***的装置中***盘400根据所配置的JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,将JBOD文件***的数据文件在JBOD的数据盘上的路径信息存放在JBOD文件***的路径文件中,从而通过JBOD文件***的路径文件存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息,实现JBOD文件***的路径文件与JBOD文件***的数据文件的关联对应,完成JBOD文件***的创建。由于JBOD上包含多个数据盘,因此每个数据盘上存放的数据文件在路径文件中都有对应的路径信息,即路径文件存放每个数据盘中的数据文件的路径信息。
JBOD文件***的路径文件中不仅包含JBOD文件***的数据文件在JBOD的各个数据盘上的路径信息,还包含JBOD中各个数据盘的文件目录、文件名称。
本发明创建JBOD文件***的装置,通过将JBOD文件***的数据文件在数据盘上的路径信息存放在JBOD文件***的路径文件中,实现JBOD文件***的路径文件与数据文件的关联对应,从而可以在含有多个数据盘的JBOD上创建多盘JBOD文件***,当JBOD上有一个或多个数据盘损坏时,只是丢失损坏的数据盘上的数据,而不影响JBOD文件***正常使用,提高了JBOD使用的可靠性。
具体地,所述配置模块100具体用于:
创建配置文件,通过所述创建配置文件配置元数据文件的路径信息和格式化类型、数据盘的路径信息和格式化类型,以及JBOD文件***的挂载点路径。
上述JBOD文件***的路径信息包括元数据文件的路径信息和数据盘的路径信息,上述JBOD文件***的格式化类型包括元数据文件的格式化类型和数据盘的格式化类型。
在侦测到有JBOD接入的情况下,创建JBOD文件***的装置中配置模块100配置元数据文件的路径信息和格式化类型、数据盘的路径信息和格式化类型,以及JBOD文件***的挂载点路径。
例如,要在创建JBOD文件***的装置的***盘的根目录/home下创建名为jbodfs.meta的元数据文件(用metafile表示),要在元数据文件中构建ext文件***,则配置模块100可以将元数据文件的路径信息配置为“/home/jbodfs.meta”,将元数据文件的格式化类型(用metaformat表示)配置为“ext”。
例如,JBOD包含16个数据盘,且数据盘(用datadev表示)的设备名称分别为sdb,……,sdq,要在数据盘中构建xfs文件***,则配置模块100可以将数据盘的路径信息配置为“/dev/sdb,/dev/sdc,……,/dev/sdq”,将数据盘的格式化类型(用dateformat表示)配置为“xfs”。
例如,要将JBOD文件***挂载在/jbodfs路径下,则配置模块100可以将JBOD文件***的挂载点路径(用mountpath表示)配置为“/jbodfs”。
具体可根据如下示意的命令格式进行配置:
metafile=/home/jbodfs.meta;
metaformat=ext3;
datadev=/dev/sdb,/dev/sdc,……,/dev/sdq;
dateformat=xfs;
mountpath=/jbodfs。
具体地,所述格式化处理模块200具体用于:
根据元数据文件的路径信息和格式化类型,对元数据文件进行格式化;并根据数据盘的路径信息和格式化类型,对数据盘进行格式化。
在配置模块100对元数据文件的路径信息、格式化类型,以及数据盘的路径信息、格式化类型进行配置,确定元数据文件的路径信息、格式化类型,以及数据盘的路径信息、格式化类型之后,创建JBOD文件***的装置中格式化处理模块200根据所配置的元数据文件的路径信息,按照所配置的元数据文件的格式化类型,对元数据文件进行格式化;同时根据所配置的数据盘的路径信息,按照所配置的数据盘的格式化类型,对数据盘进行格式化。
例如,在将元数据文件的路径信息配置为“/home/jbodfs.meta”,将元数据文件的格式化类型配置为“ext”的情况下,格式化处理模块200具体可根据如下示意的命令格式对元数据文件进行格式化:
mkfs-text3/home/jbodfs.meta。
例如,在将数据盘的路径信息配置为“/dev/sdb,sdc,……,/dev/sdq”,将数据盘的格式化类型配置为“xfs”的情况下,格式化处理模块200具体可根据如下示意的命令格式对数据盘进行格式化:
mkfs–txfs/dev/sdb;
mkfs–txfs/dev/sdc;
……
mkfs–txfs/dev/sdq。
具体地,所述初始化处理模块300具体用于:
根据元数据文件的路径信息和JBOD文件***的挂载点路径,对元数据文件中的元数据信息进行挂载;根据数据盘的路径信息,读取数据盘的序列号,并根据所述数据盘的序列号获取数据盘的挂载点路径,对数据盘进行挂载。
经过格式化处理模块200对元数据文件中和数据盘进行格式化后,创建JBOD文件***的装置中初始化处理模块300根据所配置的元数据文件的路径信息,以及所配置的JBOD文件***的挂载点路径,对元数据文件中的元数据信息进行初始化,即对元数据文件中的元数据信息(包括路径文件,以及路径文件中包含的各个数据盘的文件目录、文件名称,以及数据文件的路径信息)进行挂载;同时根据所配置的数据盘的路径信息,读取数据盘的序列号,并根据所述数据盘的序列号获取数据盘的挂载点路径,对数据盘进行初始化,即对数据盘进行挂载。从而给应用层提供JBOD文件***的文件访问接口,使得在创建JBOD文件***后,应用层可以访问JBOD文件***。
例如,在将元数据文件的路径信息配置为“/home/jbodfs.meta”,将JBOD文件***的挂载点路径配置为“/jbodfs”的情况下,具体可根据如下示意的命令格式对元数据文件中的元数据信息进行挂载:
mkdir/jbodfs;
mount–text3–oloop/home/jbodfs.meta/jbodfs。
例如,在将数据盘的路径信息配置为“/dev/sdb,/dev/sdc,……,/dev/sdq”的情况下,可读取出JBOD中/dev/sdb路径下数据盘的序列号、/dev/sdc路径下数据盘的序列号、……、/dev/sdq路径下数据盘的序列号,假设/dev/sdb路径下数据盘的序列号为SNB、/dev/sdc路径下数据盘的序列号为SNC、……、/dev/sdq路径下数据盘的序列号为SNQ,则可根据如下示意的目录格式为数据盘进行挂载:
mkdir/mnt/SNB;
mkdir/mnt/SNC;
……
mkdir/mnt/SNQ;
mount–txfs/dev/sdb/mnt/SNB;
mount–txfs/dev/sdb/mnt/SNC;
……
mount–txfs/dev/sdqmnt/SNQ。
再参照图4,图4为图3中***盘的结构示意图。
如图3和图4所示,***盘400包括元数据文件创建单元410、路径文件创建单元420、数据盘选择单元430、数据文件创建单元440和文件关联单元450。
其中,元数据文件创建单元410用于当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件。
路径文件创建单元420用于根据JBOD文件***的挂载点路径,在JBOD文件***的挂载点路径下创建JBOD文件***的路径文件,将JBOD文件***的路径文件存放在所述元数据文件中。
数据盘选择单元430用于根据预设的策略选择JBOD文件***的数据文件要存放的数据盘。
数据文件创建单元440用于根据所选择数据盘的序列号和挂载点路径,在所选择数据盘的挂载点路径下创建JBOD文件***的数据文件,并确定JBOD文件***的数据文件在数据盘上的路径信息。
文件关联单元450用于将JBOD文件***的数据文件的路径信息存放在所述JBOD文件***的路径文件中。
创建JBOD文件***的装置在侦测到JBOD文件***创建指令时,通过***盘400中的元数据文件创建单元410在***盘400的根目录下创建元数据文件,在格式化处理模块200对元数据文件和数据盘进行格式化,以及初始化处理模块300对元数据文件和数据盘进行初始化后,创建JBOD文件***的装置建立JBOD文件***的路径文件与JBOD文件***的数据文件的关联对应,具体为:路径文件创建单元420根据所配置的JBOD文件***的挂载点路径,在JBOD文件***的挂载点路径下创建JBOD文件***的路径文件,将JBOD文件***的路径文件存放在该元数据文件中,例如,在JBOD文件***的挂载点路径/jbodfs/path下创建名为test.txt的路径文件,该路径文件的路径信息为/jbodfs/path/test.txt;而且数据盘选择单元430根据预设的策略选择JBOD文件***的数据文件要存放的数据盘,例如,选择JBOD中最空闲的一个数据盘存放JBOD文件***的数据文件,且该最空闲的数据盘的序列号为SNB,该最空闲的数据盘的挂载点路径为/mnt/SNB。
在数据盘选择单元430选择要存放数据文件的数据盘后,数据文件创建单元440根据所选择数据盘的序列号和挂载点路径,在所选择数据盘的挂载点路径下创建JBOD文件***的数据文件,并确定JBOD文件***的数据文件在数据盘上的路径信息。例如,在所选择的数据盘的序列号为SNB,挂载点路径为/mnt/SNB的情况下,在/mnt/SNB/path下创建名为test.txt的数据文件,由此可确定该数据文件的路径信息为/mnt/SNB/path/test.txt。
在数据文件创建单元440确定数据文件的路径信息为/mnt/SNB/path/test.txt后,文件关联单元450将数据文件的路径信息“/mnt/SNB/path/test.txt”存放到/jbodfs/path路径下的路径文件test.txt中,至此,实现了元数据文件中存放的路径文件跟数据盘中存放的数据文件的关联对应,完成JBOD文件***的创建。从而应用层要对/jbodfs/path路径下的路径文件test.txt进行操作时,只要打开/mnt/SNB/path下的数据文件test.txt进行操作即可。
例如,JBOD文件***的数据文件存放在序列号为SNB的数据盘中,当应用层需要读写/jbodfs/path路径下的路径文件test.txt,先打开/jbodfs/path路径下的路径文件test.txt,从中获取数据文件实际存放的路径信息/mnt/SNB/path/test.txt,然后根据路径信息/mnt/SNB/path/test.txt读写序列号为SNB数据盘中的数据文件,进而完成对/jbodfs/path路径下的路径文件test.txt的读写操作。
又如,JBOD文件***的数据文件存放在序列号为SNB的数据盘中,当应用层需要删除/jbodfs/path路径下的路径文件test.txt,先打开/jbodfs/path路径下的路径文件test.txt,从中获取数据文件实际存放的路径信息/mnt/SNB/path/test.txt,然后根据路径信息/mnt/SNB/path/test.txt将序列号为SNB的数据盘中的数据文件test.txt删除,再将/jbodfs/path路径下的路径文件test.txt删除,进而完成对/jbodfs/path路径下的路径文件test.txt的删除操作。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种创建JBOD文件***的方法,其特征在于,所述方法包括:
当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件;
创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径;
根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化;
根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化;
根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息。
2.如权利要求1所述的创建JBOD文件***的方法,其特征在于,所述创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径具体为:
创建配置文件,通过所述创建配置文件配置元数据文件的路径信息和格式化类型、数据盘的路径信息和格式化类型,以及JBOD文件***的挂载点路径。
3.如权利要求2所述的创建JBOD文件***的方法,其特征在于,所述根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化具体为:
根据元数据文件的路径信息和格式化类型,对元数据文件进行格式化;并根据数据盘的路径信息和格式化类型,对数据盘进行格式化。
4.如权利要求2或3所述的创建JBOD文件***的方法,其特征在于,所述根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化具体为:
根据元数据文件的路径信息和JBOD文件***的挂载点路径,对元数据文件中的元数据信息进行挂载;根据数据盘的路径信息,读取数据盘的序列号,并根据所述数据盘的序列号获取数据盘的挂载点路径,对数据盘进行挂载。
5.如权利要求4所述的创建JBOD文件***的方法,其特征在于,所述根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在数据盘上的路径信息包括:
根据JBOD文件***的挂载点路径,在JBOD文件***的挂载点路径下创建JBOD文件***的路径文件,将JBOD文件***的路径文件存放在所述元数据文件中;
根据预设的策略选择JBOD文件***的数据文件要存放的数据盘;
根据所选择数据盘的序列号和挂载点路径,在所选择数据盘的挂载点路径下创建JBOD文件***的数据文件,并确定JBOD文件***的数据文件在数据盘上的路径信息;
将JBOD文件***的数据文件的路径信息存放在所述JBOD文件***的路径文件中。
6.一种创建JBOD文件***的装置,其特征在于,所述装置包括:
配置模块,用于创建配置文件,以配置JBOD文件***的路径信息、格式化类型和挂载点路径;
格式化处理模块,用于根据JBOD文件***的路径信息和格式化类型,对JBOD文件***进行格式化;
初始化处理模块,用于根据JBOD文件***的路径信息和挂载点路径,对JBOD文件***进行初始化;
***盘,用于当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件,且用于根据JBOD文件***的挂载点路径,在元数据文件中创建JBOD文件***的路径文件,以存放JBOD文件***的数据文件在JBOD的数据盘上的路径信息。
7.如权利要求6所述的创建JBOD文件***的装置,其特征在于,所述配置模块具体用于:
创建配置文件,通过所述创建配置文件配置元数据文件的路径信息和格式化类型、数据盘的路径信息和格式化类型,以及JBOD文件***的挂载点路径。
8.如权利要求7所述的创建JBOD文件***的装置,其特征在于,所述格式化处理模块具体用于:
根据元数据文件的路径信息和格式化类型,对元数据文件进行格式化;并根据数据盘的路径信息和格式化类型,对数据盘进行格式化。
9.如权利要求7或8所述的创建JBOD文件***的装置,其特征在于,所述初始化处理模块具体用于:
根据元数据文件的路径信息和JBOD文件***的挂载点路径,对元数据文件中的元数据信息进行挂载;根据数据盘的路径信息,读取数据盘的序列号,并根据所述数据盘的序列号获取数据盘的挂载点路径,对数据盘进行挂载。
10.如权利要求9所述的创建JBOD文件***的装置,其特征在于,所述***盘包括:
元数据文件创建单元,用于当侦测到JBOD文件***创建指令时,创建元数据文件,以存放JBOD文件***的路径文件;
路径文件创建单元,用于根据JBOD文件***的挂载点路径,在JBOD文件***的挂载点路径下创建JBOD文件***的路径文件,将JBOD文件***的路径文件存放在所述元数据文件中;
数据盘选择单元,用于根据预设的策略选择JBOD文件***的数据文件要存放的数据盘;
数据文件创建单元,用于根据所选择数据盘的序列号和挂载点路径,在所选择数据盘的挂载点路径下创建JBOD文件***的数据文件,并确定JBOD文件***的数据文件在数据盘上的路径信息;
文件关联单元,用于将JBOD文件***的数据文件的路径信息存放在所述JBOD文件***的路径文件中。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410299366.3A CN105279095B (zh) | 2014-06-26 | 2014-06-26 | 创建jbod文件***的方法及装置 |
PCT/CN2015/072932 WO2015196820A1 (zh) | 2014-06-26 | 2015-02-12 | 创建jbod文件***的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410299366.3A CN105279095B (zh) | 2014-06-26 | 2014-06-26 | 创建jbod文件***的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105279095A true CN105279095A (zh) | 2016-01-27 |
CN105279095B CN105279095B (zh) | 2019-09-13 |
Family
ID=54936708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410299366.3A Active CN105279095B (zh) | 2014-06-26 | 2014-06-26 | 创建jbod文件***的方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105279095B (zh) |
WO (1) | WO2015196820A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108197291B (zh) * | 2018-01-19 | 2022-01-11 | 北京小米移动软件有限公司 | 操作执行方法及装置 |
CN113422791B (zh) * | 2020-06-08 | 2024-01-09 | 阿里巴巴集团控股有限公司 | 云服务配置方法和装置、电子设备以及计算机可读存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1268703A (zh) * | 1999-03-25 | 2000-10-04 | 戴尔美国公司 | 存储域管理*** |
US6148349A (en) * | 1998-02-06 | 2000-11-14 | Ncr Corporation | Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification |
US7293133B1 (en) * | 2003-12-31 | 2007-11-06 | Veritas Operating Corporation | Performing operations without requiring split mirrors in a multi-class file system |
CN101067822A (zh) * | 2006-05-03 | 2007-11-07 | 国际商业机器公司 | 用于元数据的分级存储管理的方法和*** |
CN101840314A (zh) * | 2010-05-05 | 2010-09-22 | 北京星网锐捷网络技术有限公司 | 扩展数据库存储空间的方法及装置、服务器 |
CN101923444A (zh) * | 2009-06-09 | 2010-12-22 | Lsi公司 | N路直接连接的任一控制器到任一控制器架构 |
CN101984399A (zh) * | 2010-10-29 | 2011-03-09 | 中兴通讯股份有限公司 | 一种软独立冗余磁盘阵列的管理方法和*** |
CN102598019A (zh) * | 2009-09-09 | 2012-07-18 | 弗森-艾奥公司 | 用于分配存储的设备、***和方法 |
-
2014
- 2014-06-26 CN CN201410299366.3A patent/CN105279095B/zh active Active
-
2015
- 2015-02-12 WO PCT/CN2015/072932 patent/WO2015196820A1/zh active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6148349A (en) * | 1998-02-06 | 2000-11-14 | Ncr Corporation | Dynamic and consistent naming of fabric attached storage by a file system on a compute node storing information mapping API system I/O calls for data objects with a globally unique identification |
CN1268703A (zh) * | 1999-03-25 | 2000-10-04 | 戴尔美国公司 | 存储域管理*** |
US7293133B1 (en) * | 2003-12-31 | 2007-11-06 | Veritas Operating Corporation | Performing operations without requiring split mirrors in a multi-class file system |
CN101067822A (zh) * | 2006-05-03 | 2007-11-07 | 国际商业机器公司 | 用于元数据的分级存储管理的方法和*** |
CN101923444A (zh) * | 2009-06-09 | 2010-12-22 | Lsi公司 | N路直接连接的任一控制器到任一控制器架构 |
CN102598019A (zh) * | 2009-09-09 | 2012-07-18 | 弗森-艾奥公司 | 用于分配存储的设备、***和方法 |
CN101840314A (zh) * | 2010-05-05 | 2010-09-22 | 北京星网锐捷网络技术有限公司 | 扩展数据库存储空间的方法及装置、服务器 |
CN101984399A (zh) * | 2010-10-29 | 2011-03-09 | 中兴通讯股份有限公司 | 一种软独立冗余磁盘阵列的管理方法和*** |
Also Published As
Publication number | Publication date |
---|---|
CN105279095B (zh) | 2019-09-13 |
WO2015196820A1 (zh) | 2015-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9336340B1 (en) | Evaluating management operations | |
CN103064765B (zh) | 数据恢复方法、装置及集群存储*** | |
US8122213B2 (en) | System and method for migration of data | |
CN102012789B (zh) | 集中管理式备份容灾*** | |
US8954663B1 (en) | System, method and computer program product for synchronizing data written to tape including writing an index into a data partition so that data can be recovered in case of failure | |
CN109542342B (zh) | 元数据管理与数据重构方法、设备及存储介质 | |
JP5871397B2 (ja) | 仮想環境におけるストレージの可視性 | |
US7864478B2 (en) | Verification of a tape data storage cartridge | |
US20100280998A1 (en) | Metadata for data storage array | |
EP4139802B1 (en) | Methods for managing input-ouput operations in zone translation layer architecture and devices thereof | |
CN103250143A (zh) | 数据存储方法和存储设备 | |
US20140075111A1 (en) | Block Level Management with Service Level Agreement | |
CN112269543B (zh) | 一种存储逻辑卷管理方法、装置及相关组件 | |
US20120317357A1 (en) | System And Method For Identifying Location Of A Disk Drive In A SAS Storage System | |
CN105589733B (zh) | 一种数据处理方法和装置 | |
CN107861693A (zh) | 一种分布式块存储***的osd进程部署方法、装置及介质 | |
CN101997919B (zh) | 一种存储资源的管理方法及管理装置 | |
US20160364302A1 (en) | Rebuilding damaged areas of a volume table using a volume data set | |
CN105279095A (zh) | 创建jbod文件***的方法及装置 | |
CN103049391B (zh) | 数据处理方法和设备 | |
US20070168609A1 (en) | System and method for the migration of storage formats | |
US20070162695A1 (en) | Method for configuring a storage drive | |
CN115826874A (zh) | 一种虚拟raid卡的实现方法、装置及组件 | |
US9665310B2 (en) | Storage control apparatus, storage control system, and control method | |
CN105827681B (zh) | 一种san网络下备份数据传输方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20190805 Address after: Yuhuatai District of Nanjing City, Jiangsu province 210012 Bauhinia Road No. 68 Applicant after: Nanjing Zhongxing New Software Co., Ltd. Address before: 518057 Nanshan District Guangdong high tech Industrial Park, South Road, science and technology, ZTE building, Ministry of Justice Applicant before: ZTE Corporation |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |