CN101398822B - 利用虚拟文件系统技术实现动态扩展网络存储空间的方法 - Google Patents
利用虚拟文件系统技术实现动态扩展网络存储空间的方法 Download PDFInfo
- Publication number
- CN101398822B CN101398822B CN2007101224461A CN200710122446A CN101398822B CN 101398822 B CN101398822 B CN 101398822B CN 2007101224461 A CN2007101224461 A CN 2007101224461A CN 200710122446 A CN200710122446 A CN 200710122446A CN 101398822 B CN101398822 B CN 101398822B
- Authority
- CN
- China
- Prior art keywords
- file system
- virtual file
- virtual
- battle array
- network storage
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于网络数据存储技术领域,具体涉及一种利用虚拟文件系统技术实现动态扩展网络存储空间的方法。该方法在应用系统的工作站上设置虚拟文件系统软件,通过该软件在工作站上虚拟出硬盘驱动器并实现数据转发,虚拟硬盘驱动器与存储控制服务器之间建立数据连接,通过虚拟驱动器将多个网络盘阵绑定到一起。本发明实现了网络存储容量的平滑升级,并保留原来的存储设备以及里面存储的数据,可以在不间断当前工作的情况下实现动态容量的扩展。
Description
技术领域
本发明属于网络数据存储技术领域,具体涉及一种利用虚拟文件系统技术实现动态扩展网络存储空间的方法。该方法可以应用到IT相关行业的各种网络数据存储领域,可以在不降低存储性能、不修改应用软件配置的前提下对网络存储进行扩容。
背景技术
随着信息化的快速发展,各个行业在数据存储方面的需求越来越大,并且这些需求的增长集中体现在数据量的增长上。一般来说,网络存储的扩容都会对上层的应用系统产生一定的影响,尤其是在应用系统没有考虑扩容这种需求的情况下,影响会更大,甚至导致整个系统的彻底升级,造成原有投资的浪费。如果能够有一种通用的办法,在不修改原有软件甚至原有软件配置的情况下,仅仅增加盘阵等硬件设备就可以实现系统网络存储容量的扩展,肯定会获得良好的效果,这样即不需要更多的软件投入,也可以继续使用原来的存储设备,更重要的是升级的过程几乎对应用系统的使用没有任何影响,可以实现后台的平滑升级。
发明内容
本发明的目的在于针对目前网络存储扩容中存在的问题,提供一种利用虚拟文件系统技术实现动态扩展网络存储空间的方法,以实现网络存储容量的平滑升级,并可以节省更多的升级投入。
本发明的技术方案如下:一种利用虚拟文件系统技术实现动态扩展网络存储空间的方法,该方法在应用系统的工作站上设置虚拟文件系统软件,通过该软件在工作站上虚拟出硬盘驱动器并实现数据转发,虚拟硬盘驱动器与存储控制服务器之间建立数据连接,通过虚拟驱动器将多个网络盘阵绑定到一起;通过存储控制服务器记录可以绑定在一起的盘阵信息,并同时记录完整的目录结构信息,并对跨盘阵的文件分布信息进行记录,以供虚拟文件系统获取使用。
如上所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其中,对于windows操作系统,使用DDK开发包创建驱动级程序,实现虚拟文件系统的设置;对于Linux操作系统,使用其自身的虚拟文件系统架构。
如上所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其中,上层应用系统以访问普通的存储设备方式,在虚拟驱动器上创建、修改、删除文件,虚拟文件系统将上层的操作转移到实际的存储设备上。
如上所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其中,在上层应用新建文件时,按照容量均衡的逻辑进行盘阵的选择,优先使用可用空间大的盘阵写入文件。
如上所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其中,当新加入盘阵时,首先修改存储控制服务器的配置,确定新加入盘阵所对应的虚拟硬盘驱动器,并将信息提供给当前运行的虚拟文件系统,以启用新的网络存储服务。
本发明的有益效果如下:本发明将多个盘阵通过虚拟驱动器绑定到一起,让用户或上层应用感觉是在使用一个驱动器,而不是多个。应用系统可以像访问普通的存储设备一样,在虚拟出来的设备上创建、修改、删除文件,虚拟文件系统负责将上层的这些操作转移到实际的存储设备上。如果要动态扩容,只需要让虚拟文件系统确认新加入的设备也负责以前某个虚拟驱动器的数据存储即可。该方法实现了网络存储容量的平滑升级,并保留原来的存储设备以及里面存储的数据,可以在不间断当前工作的情况下实现动态容量的扩展。
附图说明
图1为简单磁盘捆绑JBOD的实现原理图。
图2为本发明方法的实现原理图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细的描述。
实现网络存储容量的平滑升级,并保留原来的存储设备以及里面存储的数据,这是本发明要解决的主要问题,其大致思路是:引入虚拟文件系统技术,在应用系统的工作站上部署虚拟文件系统软件(以后简称VFS),该软件负责在工作站上虚拟出硬盘驱动器,应用系统可以像访问普通的存储设备一样,在虚拟出来的设备上创建、修改、删除文件,VFS负责将上层的这些操作转移到实际的存储设备上,如果要动态扩容,只要让VFS认为新加入的设备也负责以前某个虚拟驱动器的数据存储就可以了。
这种处理盘阵的模式和磁盘的“简单磁盘捆绑”(JBOD)非常类似,JBOD的原理如图1所示。JBOD是在逻辑上把几个物理磁盘一个接一个串联到一起,从而提供一个大的逻辑磁盘。JBOD上的数据简单的从第一个磁盘开始存储,当第一个磁盘的存储空间用完后,再依次从后面的磁盘开始存储数据。JBOD存取性能完全等同于对单一磁盘的存取操作。JBOD不提供数据安全保障,它只是简单的提供一种利用磁盘空间的方法,JBOD的存储容量等于组成JBOD的所有磁盘的容量的总和。
本发明在逻辑上和JBOD非常类似,只不过是把普通硬盘换成了网络存储盘阵。另外一个特点就是可以在不间断当前工作的情况下实现动态容量的扩展。其实现原理如图2所示。该方法在应用系统的工作站上设置虚拟文件系统软件,通过该软件在工作站上虚拟出硬盘驱动器并实现数据转发,虚拟硬盘驱动器与存储控制服务器之间建立数据连接,通过虚拟驱动器将多个网络盘阵绑定到一起,通过存储控制服务器记录可以绑定在一起的盘阵信息,并同时记录完整的目录结构信息,以供虚拟文件系统获取使用。图中VFS的作用比较清楚,就是将盘阵A、B、X通过虚拟驱动器绑定到一起,让用户或上层应用感觉是在使用一个驱动器,而不是多个。存储控制服务器是实现动态扩展的核心,在该服务器上记录了哪些盘阵可以绑定到一起,各个工作站上的VFS需要随时获取这些信息,以便将数据写入正确的盘阵中,另外该服务还要记录目录结构信息,因为如果想将多个盘阵绑定到一起,那么这些盘阵上肯定有自己的目录结构,这些目录结构是不完整的,当客户端检索文件的时候就需要有一个完整的目录,那么这些数据就需要由存储控制服务器提供。
本发明的实现没有对操作系统的限制,可以应用到任何的操作系统当中。
创建虚拟硬盘驱动器是VFS实现的关键,但这与具体的操作系统有关,对于Windows系列来说,需要使用DDK开发包创建驱动级程序,对于Linux系列来说,本身就有VFS架构,开发相对来说要简单一些,只要对其架构熟悉一下就可以了。在前面的基础上,数据的转发从原理上来说相对要容易一些,只要注意不要漏掉一些文件操作即可。这些具体的操作对于不同的操作系统可能也略有差异,但还是建议尽可能的支持操作系统常用的文件系统,而不要引入新的文件系统。比如:对于Windows系统来说,虚拟出来的文件系统最好支持NTFS。
当上层应用新建文件时,VFS按照容量均衡的逻辑进行盘阵的选择。假设将盘阵A和盘阵B通过VFS绑定成Z盘,盘阵A和盘阵B的容量都是2TB,那么对于Z盘来说可用的容量就是4TB,在使用的时候A和B的使用容量要尽可能的保持一致,也就是说优先使用可用空间大的盘阵写入文件,这样处理可以获得较高的性能。数据均匀分布后,实际上也将读写操作均匀分布开,网络存储的整体带宽在实际使用时会大于单个盘阵的带宽,同时实现逻辑也比较简单。
文件跨盘阵存储出现的概率是比较低的,原因就是单个盘阵的容量远远大于常见的单个文件的大小,但是这种情况也需要仔细考虑。本发明中设计了“存储控制服务器”,它的工作之一就是要记录所有文件的分布信息,也就是目录存储结构,在实现存储控制服务器的时候,要能够对跨盘阵的文件分布信息进行记录。
当新加入一个盘阵之后,如何解决动态扩容的问题是本发明的一个关键之处。首先需要在存储控制服务器上进行配置,要配置的内容主要就是告诉系统,新加入的这个盘阵用来对目前的哪一个虚拟存储驱动器扩容。当配置修改以后,存储控制服务器要立即通知当前活动的VFS,VFS在获得这些信息之后,要立即启用新的网络存储服务,不要用户做更多的干涉。
考虑到在此公开的对本发明的描述和特殊的实施例,本发明的其他实施例对于本领域的技术人员来说是显而易见的。这些说明和实施例仅作为例子来考虑,它们都属于由所附权利要求所指示的本发明的保护范围和精神之内。
Claims (6)
1.一种利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其特征在于:该方法在应用系统的工作站上设置虚拟文件系统软件,通过该软件在工作站上虚拟出硬盘驱动器并实现数据转发,虚拟硬盘驱动器与存储控制服务器之间建立数据连接,通过虚拟驱动器将多个网络盘阵绑定到一起;通过存储控制服务器记录可以绑定在一起的盘阵信息,并同时记录完整的目录结构信息,并对跨盘阵的文件分布信息进行记录,以供虚拟文件系统获取使用。
2.如权利要求1所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其特征在于:对于windows操作系统,使用DDK开发包创建驱动级程序,实现虚拟文件系统的设置。
3.如权利要求1所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其特征在于:对于Linux操作系统,使用其自身的虚拟文件系统架构。
4.如权利要求1所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其特征在于:上层应用系统以访问普通的存储设备方式,在虚拟驱动器上创建、修改、删除文件,虚拟文件系统将上层的操作转移到实际的存储设备上。
5.如权利要求4所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其特征在于:在上层应用新建文件时,按照容量均衡的逻辑进行盘阵的选择,优先使用可用空间大的盘阵写入文件。
6.如权利要求1所述的利用虚拟文件系统技术实现动态扩展网络存储空间的方法,其特征在于:当新加入盘阵时,首先修改存储控制服务器的配置,确定新加入盘阵所对应的虚拟硬盘驱动器,并将信息提供给当前运行的虚拟文件系统,以启用新的网络存储服务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101224461A CN101398822B (zh) | 2007-09-26 | 2007-09-26 | 利用虚拟文件系统技术实现动态扩展网络存储空间的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2007101224461A CN101398822B (zh) | 2007-09-26 | 2007-09-26 | 利用虚拟文件系统技术实现动态扩展网络存储空间的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101398822A CN101398822A (zh) | 2009-04-01 |
CN101398822B true CN101398822B (zh) | 2012-05-09 |
Family
ID=40517385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007101224461A Expired - Fee Related CN101398822B (zh) | 2007-09-26 | 2007-09-26 | 利用虚拟文件系统技术实现动态扩展网络存储空间的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101398822B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102117184B (zh) | 2010-01-05 | 2017-06-27 | 联想(北京)有限公司 | 用于多存储器的控制器、终端设备及其启动和访问方法 |
CN102419693B (zh) * | 2010-09-28 | 2016-03-30 | 联想(北京)有限公司 | 一种管理存储单元的磁盘空间的方法和电子设备 |
CN102566938A (zh) * | 2011-12-16 | 2012-07-11 | 云海创想信息技术(天津)有限公司 | 一种实现源卷与多个相关卷关联的方法 |
CN104375813B (zh) * | 2013-08-14 | 2019-11-22 | 腾讯科技(深圳)有限公司 | 一种存储空间填充方法及装置 |
CN108304200B (zh) * | 2017-01-12 | 2022-02-22 | 阿里巴巴集团控股有限公司 | 一种驱动程序升级的方法、装置以及电子设备 |
CN112765107A (zh) * | 2019-10-21 | 2021-05-07 | 伊姆西Ip控股有限责任公司 | 用于调整存储空间的方法、设备和计算机程序产品 |
WO2021174515A1 (en) * | 2020-03-06 | 2021-09-10 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for data storage in the expansion of object-based storage systems |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002054266A1 (en) * | 2001-01-02 | 2002-07-11 | Han-Gyoo Kim | Disk system adapted to be directly attached to network |
-
2007
- 2007-09-26 CN CN2007101224461A patent/CN101398822B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002054266A1 (en) * | 2001-01-02 | 2002-07-11 | Han-Gyoo Kim | Disk system adapted to be directly attached to network |
Non-Patent Citations (3)
Title |
---|
.基于视频网络的存储技术方案确定.《信息技术》.2006,(第5期),144-146. |
卢霞,杨建平,权晓红 |
卢霞,杨建平,权晓红;.基于视频网络的存储技术方案确定.《信息技术》.2006,(第5期),144-146. * |
Also Published As
Publication number | Publication date |
---|---|
CN101398822A (zh) | 2009-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101398822B (zh) | 利用虚拟文件系统技术实现动态扩展网络存储空间的方法 | |
JP5411250B2 (ja) | 冗長データ記憶システムへの指示に従ってのデータ配置 | |
CN102880424B (zh) | 用于raid管理、重新分配以及重新分段的系统和方法 | |
CN101840308B (zh) | 一种分级存储系统及其逻辑卷管理方法 | |
CN102405460B (zh) | 虚拟存储系统及其运行方法 | |
CN102511036B (zh) | 数据存储 | |
CN102096557B (zh) | 一种独立磁盘冗余阵列的扩容方法、装置及系统 | |
KR100834574B1 (ko) | 파일 저장 시스템 및 그 시스템에서의 파일 저장 및 검색방법 | |
CN103503414A (zh) | 一种计算存储融合的集群系统 | |
CN104395904A (zh) | 高效的数据对象存储和检索 | |
JP2017091546A (ja) | 多重モード動作のための多重パーティションを含む格納装置、及びその動作方法 | |
US20130290281A1 (en) | Storage apparatus and data management method | |
CN102652423A (zh) | 用于集群选择和协作复制的集群族 | |
US20080256145A1 (en) | Apparatus for Migrating Data Between Heterogeneous Data Storage Devices | |
CN103562886B (zh) | 在多盘主机中隔离虚拟机i/o的方法和系统 | |
US20030105923A1 (en) | Raid system and mapping method thereof | |
CN104272242B (zh) | 创建加密存储体 | |
Raghavan et al. | Tiera: Towards flexible multi-tiered cloud storage instances | |
CN101815989A (zh) | 获取和命名动态存储分层配置以支持数据预登台 | |
CN103617006A (zh) | 存储资源的管理方法与装置 | |
WO2009131560A1 (en) | Distributed cache system in a drive array | |
CN103150123B (zh) | 存储系统 | |
TW201502777A (zh) | 群組表資料沖除技術 | |
CN102446072B (zh) | 用于池式存储中的raid 阵列变换的系统和方法 | |
CN103823641B (zh) | 一种在线扩容的虚拟卷系统及其实现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120509 Termination date: 20120926 |