CN1408083A - 可升级存储器架构 - Google Patents

可升级存储器架构 Download PDF

Info

Publication number
CN1408083A
CN1408083A CN00816854A CN00816854A CN1408083A CN 1408083 A CN1408083 A CN 1408083A CN 00816854 A CN00816854 A CN 00816854A CN 00816854 A CN00816854 A CN 00816854A CN 1408083 A CN1408083 A CN 1408083A
Authority
CN
China
Prior art keywords
data
storage
metadata
file
ifs
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.)
Pending
Application number
CN00816854A
Other languages
English (en)
Inventor
丹尼斯V·格拉西莫夫
伊琳娜V·格拉西莫夫
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.)
Data Foundation Inc
Original Assignee
Data Foundation Inc
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 Data Foundation Inc filed Critical Data Foundation Inc
Publication of CN1408083A publication Critical patent/CN1408083A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality
    • G06F11/2092Techniques of failing over between control units

Abstract

可升级存储器架构(SSA)系统集成了网络存储所需的所有组件,并提供了高度可升级和冗余的存储空间。SSA包括用于保持数据完整性的集成的和即时的备份,从而使得无需外部备份。SSA还提供了用于存储和取出历史数据的归档和分级存储管理(HSM)功能。保持了一组元数据,其描述所有存储设备的布置。因而,存储空间的管理对于用户是透明的。

Description

可升级存储器架构
在此结合优先权文件,1999年12月7日递交的美国临时申请No.60/169,373作为参考。
技术领域
本发明涉及数据存储领域。
可升级存储器架构(Scalable Storage Architecture,SSA)是一种集成的存储解决方案,它在硬件和软件上都具有很高的可升级性和冗余性。
可升级存储器架构系统集成了网络存储所需的所有组件,并提供了可升级和冗余的存储空间,以及具有灾难恢复能力。其特点在于包括集成的和即时的备份,这保持了数据的完整性,使得无需外部备份。它还为历史数据的存储和检索提供了归档和分级存储管理(HSM)的功能。
背景技术
越来越多的行业依赖于数量渐增的数据。随着电子商务的出现,这种现象更为突出。随着因特网使用的增加,对于因特网用户信息的渴望也在增加。这增加了企业的负担,即要保证它们所存储和维护的数据是投资者、用户、职员和具有适当需求的其他人所需要的。数据仓库对于许多需要服务器、可控的数据存储和数据访问与数据检索的企业是一项昂贵的投资。在很多情况下,这对于单个企业独立承担来说是一项太昂贵的投资。进一步的数据管理会引起一个严重问题。许多企业不知道他们应该保留数据多久;应该怎样将数据入库;通常应该怎样管理他们的数据保留需求。
随着新的数据应用的增加,数据存储的需求也在增加。例如,娱乐需要存储大量视频、音频和其它类型的文档数据。科学市场需要大量数据的存储。在医学领域,需要存储多种来源的数据,以满足因特网用户检索和利用那些健康相关数据的需求。
于是,积累数据的需求导致了存储需求的危机。并且,在单个企业中缺乏信息技术和存储人员来管理这样一个存储需求任务。并且,具有作为关键组件的存储功能的网络管理日益复杂。还有,现存的存储技术被自己的体系结构所限制,因此,它们不具有显著的易访问性和可升级性。
因此,所需要的是具有高的可升级性、易管理性、广泛分布性、完全冗余性和投资效率高的数据存储和访问的方法。这样的性能对于数据所属的个人和组织来说可能是很遥远的。并且,这种数据存储性能可以满足娱乐业、化学和地质部门、金融部门、医疗档案和图像部门通信、因特网和政府存储的需要。
发明内容
因此,本发明的一个目的是提供一种以集成和易访问的方式存储相对于数据拥有者远程的存储在系统中的数据的方法。
本发明的进一步的目的是向个人和企业提供数据入库操作。
本发明的另一个目的是为娱乐、科学、医疗和其它数据密集型行业提供增长和数据存储。
本发明的另一个目的是消除单个企业对信息技术和进行数据存储和检索的人员的需求。
本发明的另一个目的是为信息存储提供可访问和可升级的存储体系结构。
通过以下的说明,本领域的技术人员可以更清楚地理解本发明的这些和其它目的。
本发明包括一种以易访问和可升级方式存储大量数据的系统和方法。本发明是一种完全集成的系统,包括:主存储介质,例如固态磁盘阵列和硬盘列阵;副存储介质,例如磁带和磁光库;和用于从各种存储设备访问信息的控制器。存储设备本身是高度集成的,并且允许存储和快速访问存储在系统中的数据。并且,本发明提供了冗余的副存储器,所以在发生故障的情况下可以恢复数据并快速高效地提供给用户。
本发明包括连接本发明的存储系统的专用高速网络。根据数据需要、数据使用期限、数据访问次数和其它标准,可以在存储设备之间高速传送文件和数据。冗余性消除了发生故障的单个点,因此,一个单独的故障不会损坏存储在系统内数据的完整性。
附图说明
由以下的详细说明,结合附图,可以更清楚地理解本发明另外的目的和优点。
图1显示了根据本发明的可升级存储器架构中的集成组件;
图2显示了根据本发明的可升级存储器架构中的冗余硬件的结构示意图;
图3显示了根据本发明的可升级存储器架构中的扩展光纤通道(fiber channel)的结构示意图;
图4显示了根据本发明的可升级存储器架构中的块集合装置的结构示意图;
图5显示了根据本发明实施例的存储控制软件;
图6显示了根据本发明实施例的带有IFS文件系统算法的框图结构;
图7显示了根据本发明实施例的失效接管(failover)算法流程图。
优选实施例说明
为了提供本发明更彻底的说明,在下面的说明书中对特定的数字资料,例如磁盘特性、磁盘块的大小、块指针的字节数等等进行了详细的说明。然而,没有这些特定的细节,本发明对于本领域的技术人员也是明了的。在其它例子中,没有详细说明众所周知的特点和方法,以免使本发明变得不清晰。
可升级存储器架构(SSA)系统集成了所有网络存储所需的组件,并提供了高度可升级的和冗余的存储空间。SSA包括用于保持数据完整性的集成的和即时的备份,从而使外部存储变得没有必要。SSA还为历史数据的存储和检索提供了归档和分级存储管理(HSM)功能。
本发明的一个方面是一种用于数据的鲁棒存储(robust storage)的冗余的和可升级的系统。本系统包括由数据和元数据(metadata)存储器组成的主存储介质,和副存储介质。主存储介质带有冗余存储元件,用于提供所存数据的即时备份。存储在主存储介质上的数据完全复制到副存储介质上。元数据组(sets of metadata)存储在元数据存储介质上。
本发明的另一个方面是一种利用带有主存储器、副存储器和元数据存储器的系统进行数据鲁棒存储的方法。本方法包括通过在主、副存储器间复制数据而冗余地存储数据。本方法还包括在主存储器中删除数据的功能,这些数据的检索单独依靠副存储器,由此可以为其它数据空出主存储器空间。
参照图1,SSA硬件包括在所示的SSA集成组件体系内的集成组件。冗余控制器10,12是相同配置的计算机,优选的是基于康柏Alpha中央处理器(CPU)。它们各自运行自己的Linux内核和根据本发明执行SSA的软件(如下所述)。另外,每个控制器10、12使用各自镜像于热交换硬盘驱动器上的操作系统(OS)独立启动。每个控制器拥有自己的双重热交换电源。控制器10、12管理着一系列的分级存储设备。例如,固态磁盘架28包括用于对客户元数据的最快速访问的固态磁盘。下一级的访问由一系列的硬盘14、16、18、20、22、24、26代表。硬盘提供对数据的快速访问,虽然不如访问存储在固态磁盘28上的数据那么快。不需要频繁访问但需要相当快速反应的数据存储在磁光库(magneto optical library)30的光盘上。这个库包含很多光盘,在其上存储着用户数据,以及访问这些光盘的自动机构。最后,不那么具有时间限制性的数据存储在磁带上,例如,8毫米Sony AIT自动磁带库32。这个设备在磁带上存储大量数据,当需要时,恰当地安装磁带,数据恢复并传给客户。
根据数据存档规则,最需要的和以最及时的方式需要的数据存储在硬盘14-26上。随着数据寿命的延长,这些数据写到光盘上并存储在光盘库30中。
最后,旧数据(例如,根据企业的数据保持规则)随后移到8毫米磁带并存储在磁带库32中。数据存档规则可以由单独的公司制定并传给本发明的操作者,或者当数据存储和恢复规则不明确时,设定为某种默认值。
独立的OS镜像使得在SSA不离线的情况下可以升级整个系统的OS。如将在后面看到的,在正常的操作中,两个控制器都分担工作量。然而,每一个控制器在另一个发生故障的情况下都可以接管另一个的功能。在发生故障的情况下,第二个控制器接管整个系统的功能并且系统工程师安全地替换磁盘或安装新的OS。于是由幸存的控制器恢复双重控制器结构。在OS的完全升级情况下,第二个可以用相同的方法恢复。由于本发明中SSA系统内的冗余,相同的机制可以用于在不停止用户的数据服务情况下升级控制器的硬件。
参照图2,显示了根据本发明的可升级存储器架构中的冗余硬件的结构示意图。由于互联的内在冗余,一个组件发生故障可以不损坏数据的完整性。可以承受多个组件故障的特定组合。
参照图3,每个控制器可以任意拥有多个硬件接口。这些接口分属三种类型:存储附加接口,网络接口和控制台或控制/监控接口。存储附加接口包括:小型计算机系统接口(SCSI)-30a,30b,32a,32b(具有不同形式,例如低压微分(LVD)或高压微分(HVD))和光纤通道-34a,36a,34b,36b。网络接口包括,但不限于:10/100/1000Mb以太网、异步传输模式(ATM)、光纤分布式数据接口(FDDI)、和带有传输控制协议/网际协议(TCP/IP)的光纤通道。控制台或控制/监控接口包括串行口,例如RS-232。优选实施例使用了外部设备互联(PCI)卡,特别是热交换PCI。
所有的存储接口,除了那些用于OS磁盘的,都与它们在第二控制器上的对应接口相连。所有的存储器都在控制器10、12之间与SCSI或FC相连,形成了一个在两端带有控制终端串的串。所有的SCSI或FC环都由外部终结器在各控制器的末端终结,以消除当一个控制器向下传时产生的终结问题。
参照图3,如上所述,为了不出现单点故障,在本发明中控制器10、12分别控制数据存储。例如,固态磁盘28、磁光库30和磁带库32分别通过SCSI接口30a、32a、30b、32b连接冗余控制器10,12。并且,硬盘14、16、18-26也经由光纤通道转换器38、40到每个冗余控制器的光纤通道接口34a、36a、34b、36b连接到冗余控制器10、12上。可见,每个冗余控制器10、12连接着本发明的所有存储部件,所以当任意一个控制器出现故障时,另一个控制器可以接管所有的存储器并恢复运转。
图3显示了光纤通道结构的扩展,图4显示了改进的扩展(块集合设备)。
参照图4,显示了为进一步扩展留有余地的SSA的替代结构。冗余控制器10a、10b分别包含冗余光纤通道连接器70、72、74、76。每个控制器的光纤通道连接器与块集合设备42、44相连。于是在控制器10a、10b中,光纤通道连接器70、74分别与块集合设备42相连。另外,控制器10a的光纤通道连接器72和控制器10b的光纤通道连接器76又与块集合设备44相连。
块集合设备以可升级的方式为硬盘存储单元的扩展留有余地。每个块集合设备包含光纤通道连接器,它们使得可以连接到冗余控制器42、44和冗余硬盘列阵上。例如,块集合设备42、44分别通过冗余光纤通道转换器38、40连接到硬盘14-26上,冗余光纤通道转换器38、40又分别通过光纤通道连接器62、64和54、56连接到块集合设备42、44上。
另外,块集合设备42、44分别通过光纤通道58、60和46、48连接到冗余控制器10a、10b上。另外,块集合设备42、44分别带有扩展光纤连接器66、68和50、52,用于在需要时连接附加的硬盘驱动器。
1.优选的是,SSA产品基于Linux操作系统。对于SSA软件体系结构,有六个首选的基本组件:适用于Alpha CPU架构的模块化64位版本的Linux内核;
2.最小化的标准Linux用户级组件集;
3.SSA存储模块;
4.用于管理和配置冗余的用户数据访问接口;
5.管理、配置、报告和监测接口;和
6.用于冗余的健康监视报告和接口。
为了避免维持单独的发展树(development tree),本发明使用标准Linux内核。此外,本系统大部分的主要组件可以以内核模块的形式安装,这样可以根据需要装载入内核。这种标准模块的方法使存储器的使用最小化,并简化了从调试到系统升级的产品开发。
对于OS,本发明使用RedHat Linux发行版的改进版本。这个版本根据需要重建Linux源文件使系统运行在Alpha平台上。一旦这个完成,Alpha自身OS重新打包为RedHat软件包管理程序(RPM)二进制格式以简化版本和配置管理。本发明包括有用的网络应用、配置和分析工具,以及标准的文件/文本处理程序。
参照图5,显示了SSA存储模块。SSA存储模块分为如下五个主要部分:
1.IFS文件系统78、79,它是SSA使用的专用文件系统;
2.虚化监控进程(Virtualization daemon,VD)80;
3.数据库服务器(DBS)82;
4.重新打包服务器(Repack Server,RS)84;和
5.副存储单元(SSU)86。
IFS是为满足SSA系统而新创建的文件系统。IFS的独特特点是它的管理文件的能力,这些文件的元数据和数据可能存储在多个单独的具有不同特性(例如,查询速度、数据带宽等等)的物理存储器中。
IFS既可作为内核空间模块78实现又可作为用户空间IFS通讯模块79实现。IFS内核模块78可以不用重新启动机器而插入或移除。
任何Linux文件系统都由两个组件构成。一个是虚文件系统(Virtual File System,VFS)88,这是Linux内核的必备部分。它与硬件无关并通过系统调用接口90与用户空间通讯。在SSA系统中,任何与IFS 78、79所属文件相关的调用(call)都由Linux的VFS 88转向到IFS内核模块78。另外,与现存的文件系统对比,还存在一些以新颖的方式执行的同时普遍存在的系统调用,它们需要与用户空间的通讯来完成即时备份和归档/HSM功能。这些调用是创建、打开、关闭、解开(unlink)、读取和写。
为了处理某个系统调用,IFS内核模块78可以与IFS通讯模块79通讯,IFS通讯模块79位于用户空间。这种通讯通过共享存储器接口92进行的,以提高速度和避免引起内核调度的混乱。IFS通讯模块79也和SSA产品的其它三个组件相连。如图6所示,还有数据库服务器82、虚化监控进程(daemon)80和副存储单元86。
数据库服务器(DBS)82存储着IFS所属文件的信息,例如文件的识别号(索引节(inode)号+存储文件元数据的主介质号)、文件的副本数、相对于它们写入时间的时间戳(timestamp)、存储数据的存储器号码和相关信息。它还维持着介质内进行智能存储的空闲空间的信息、文件系统的后视图(快照特性)、设备识别码、设备特性(即,读/写速度,磁带数目和类型,负荷,利用率等)和其它配置信息。
DBS 82用于SSA的每个组件。在请求时(被动地)存储和检索信息。可以使用任何SQL数据库服务器。在所述的实施例中,使用简单MySQL服务器来实施本发明。
虚化监控进程(VD)80负责从IFS主介质清除数据。它监视IFS文件系统所使用的硬盘空间容量。如果空间容量超过一定的极限,它与DBS通讯并接收数据已经转移到副介质的文件名列表。然后,为了从主介质清除这些文件的数据,VD与IFS通讯,IFS然后删除文件的主体,于是释放了额外的空间,直到达到空闲空间的预设目标。这个过程称作“虚化”(virtualization)。在主介质不存在数据体或存在部分数据体的文件称为“虚(virtual)”。
使用智能算法来选择哪个文件应该首先虚化。这个算法可以由不同的算法设置或代替。在本实施例中,由于副存储器的访问时间长,非虚化(un-virtualize)操作很耗时,所以虚化算法选择最近最少使用(Least Recently Used,LRU)文件并根据文件的大小排序来虚化最大的文件,以使在IFS上虚化的文件数最少。
副存储单元(Secondary Storage Unit,SSU)86是一个软件模块,用于管理每个副介质存储器(Secondary Media Storage Device,SMSD),例如鲁棒(robotically)操作磁带或光盘库。每个SMSD具有一个SSU软件组件,用于提供SMSD设备使用的多个程序来提高读/写效率。可以向系统添加任意数量的SMSD。当添加SMSD时,它的SSU向DBS注册它自己以成为SSA系统的一部分。当移除SMSD时,它的SSU从DBS中注销自己。
当需要从IFS向SMSD写数据时,IFS 78在IFS通讯模块79辅助下与DBS 82通讯,并获得存储数据副本的SSU 86的地址。IFS通讯模块79于是连接SSU 86(如果还没连接)并要求SSU 86从文件系统检索数据。SSU 86于是直接从磁盘拷贝数据。这样就没有冗余的数据传输(数据不通过DBS,因此路径最短)。
当从磁带移除大的数据块时,会导致出现大块的介质非利用区域。这会大大降低从这些磁带读取数据的效率。为了修复这个缺点,通过指令将数据从重新打包服务器84重写(重新打包)到新的磁带上,在这个过程中释放了原始磁带。重新打包服务器(RS)84管理这个任务。RS 84负责在SMSD上保持数据的高效打包。在DBS 82的辅助下,RS 84监视磁带的内容。实施
IFS是一种具有现在的新式文件系统(例如IRIX的XFS,Veritas,Ext2,BSD的FFS,等等)的大多数特征的文件系统。这些特征包括:64位地址空间,日志,快照特征回叫图(snapshot-like feature called backviews),安全反删除,快速目录搜索,等等。IFS还具有其它文件系统不具有的特点,例如分别将元数据和数据写到不同的分区/设备的能力,不仅能添加还可以安全移除分区/硬盘驱动器的能力。它可以增加和减小它的大小,保持IFS镜像的历史等等。
现在Linux OS使用32位Ext2文件系统。这意味着文件系统所在的分区的大小限制在4万亿字节(terabyte)以内,并且每个文件的大小限定在2千兆字节(gigabyte)以下。这些数值远低于需要处理几万亿字节文件的文件系统的要求。IFS是64位的文件系统。这允许单个文件系统(不包括副存储器)大小达到134,217,700千兆兆字节(petabyte),单个文件最大为8129千兆兆字节。文件系统配置
本发明使用UFS类的文件系统配置。这个磁盘格式系统是基于块(block)的,可以支持通常从1kB到8Kb的几个块大小,使用索引节(inodes)来描述文件,并包含几个特别的文件。一个最常用类型的特别文件是目录文件,它仅仅是一个特殊格式的文件,用于描述与索引节相关联的名字。该文件系统还使用一些其它的文件类型用于记录文件系统的元数据:超级块(superblock)文件,块使用位图文件(bbmap)和索引节印像(imap)文件。超级块用于描述磁盘整体的信息。bbmap文件包含指示块位于何处的信息。imap文件指示索引节在设备上的位置。文件系统的多磁盘处理
所述的文件系统可以处理多个独立的磁盘。这些磁盘无需具有相同的容量、访问速度或读/写速度。在文件系统的创建时间选择一个磁盘作为主盘,它也可以称作元数据存储设备。其它的磁盘变成副盘,它们也可以称为数据存储设备。主盘容纳主超级块、副超级块的副本和所有副盘的全部bbmap文件和imap文件。在本发明的实施例中,一个固态磁盘用作主盘。固态磁盘具有非常高的读和写操作速度特性,并且它的寻道时间接近为0,这加速了文件系统的元数据操作。固态磁盘还具有充分高的可靠性,即普通的磁—机械磁盘。在本发明的另一个实施例中使用一个小的0+1 RAID列阵作为主盘来降低系统的成本并提供同样高的可靠性和差不多的元数据操作速度。
超级块包含磁盘信息,例如块的大小,设备上的块数目,空闲块数,磁盘上允许的索引节数的范围,装有此文件系统的其它磁盘的数目,这个磁盘的16字节序列号,以及其它信息。
主盘存有关于副设备的附加信息(称为设备表)。当在一组磁盘上创建文件系统或将一个磁盘添加到一个已创建的文件系统内时(后面将说明这个过程),分配给每个副盘一个唯一的序列号,序列号写入相应的超级块。设备表是一个简单的具有固定大小的记录列表,这个记录是由以块为单位的磁盘容量值、描述在OS内核中怎样访问这个磁盘的数以及序列号组成的。
当文件系统安装好后,只有主设备名传到所安装的系统调用。文件系统代码读取主超级块并从中得到设备表的大小。然后文件系统读取设备表并通过读它的超级块而检验可否访问每一个所列的设备,并检验设备表中的序列号是否等于副盘的超级块中的序列号。如果一个或多个序列号不相配,则文件系统代码从内核中得到所有可用的块设备的列表并试图从每一个中读取序列号。即使一些副设备改变了它们的设备号,这个过程也允许快速查找所有副盘的适当列表。它还确定是否丢失了设备。后面将论述当一个或多个副盘丢失后数据的恢复。
设备表中的磁盘索引是所述文件系统中磁盘的内部标识符。
文件系统中所有的磁盘块指针以64位的数存储在磁盘上,如上所述,前16位表示磁盘的标识符。这样,文件系统可以支持多达65536个独立的磁盘,每个磁盘包含多达248个块。作为磁盘标识符的块地址的位数可以根据具体应用的需要而改变。
对于在某一时间或当磁盘添加时把每个副盘添加到文件系统中,在主盘上创建三个文件:副超级块的副本,bbmap和imap。
每个磁盘的bbmap是一个简单的位图,位的索引是块号,位的内容描述了分配状况:1代表分配的块,0代表空闲的块。
每个磁盘的imap是一个简单的64位的数表。索引是索引节号减去这个磁盘上第一分配的索引节(取自这个磁盘的超级块),值是索引节所在的块号,或者如果没有使用索引节号则为0。磁盘索引节
本发明中所描述的文件系统的磁盘索引节与为先前基于块的索引节文件系统所描述的磁盘索引节相似:标记,所有权,许可,几个存储在索引节中的数据,和以字节为单位的文件大小和15个64位块指针(如前面所述),其中有12个直接,1个间接,1个双倍间接和1个三倍间接。主要的不同是三个附加数。一个16位数用于存储描述关于在副存储介质上这个文件的备份副本的索引节状态的标记:是否存在副本,磁盘上的文件是完整的还是文件的一部分,和其它在后文中描述的相关的标记。第二个数是一个包含遗传标记的短数字。第三个数是一个64位的数字,表示磁盘上的文件从第一字节起的字节数(占据磁盘的字节)。在本发明中任意文件都可以存在几种形式,仅在磁盘上,在磁盘上并在备份介质上,部分在磁盘上和在备份介质上,仅在备份介质上。文件的所有备份副本是完整的:备份整个文件。当文件备份后,上述的文件可以删节到包括0字节的任意字节。这种不完整文件称为虚(virtual),这种删节称为虚化。新的占据磁盘的字节数存储在上述的数字内,文件的字节数没有修改,所以不管它是否是虚的,文件系统报告正确的整个文件的大小。当访问虚文件时,备份子系统开始从文件的磁盘分区恢复丢失的部分。
日志(joumaling)是一个防范OS崩溃使文件系统坚固的处理。如果OS崩溃,当FS的元数据没有反映数据时,FS可能处于不一致的状态。为了消除这种不一致,需要文件系统检查(fsck)。因为它强迫系统通过每个索引节线性运行,进行完全的元数据和数据完整性检查,所以运行这种检查会消耗很长时间。日志程序使文件系统在所有时间保持一致性并避免长时间的FS检查程序。
在实施中,日志是带有关于文件系统元数据信息的一个文件。在正常的文件系统中,当改变文件的数据时,元数据首先改变,数据本身再更新。在日志系统中,元数据的更新首先写入日志中,实际数据更新后,这些日志条目才重新写入适当的索引节和超级块。并不奇怪,与通常(非日志)的文件系统相比,这个处理消耗的时间略微延长(30%)。但是,这个代价对于在系统崩溃时数据的鲁棒是可以忽略的。
一些其它现存文件系统使用日志,然而,日志通常写在文件系统本身所处的同一个磁盘上,由于每次日志修改都需要两次额外的搜索,这减慢了所有文件系统的操作。IFS日志系统解决了这个问题。在IFS中,日志写在一个独立的设备上,例如固态磁盘上,它的读/写速度与内存的速度相似,实际上没有搜索时间,于是几乎完全消除了日志的系统开销。
在IFS中日志的另一个用途是备份系统元数据到副存储器。将日志纪录分批并传送到CM,随后以一定类型的元数据更新DBS表并把元数据发送到SSU以存储在副设备上。这种机制用于提供高效的、可以用于灾难恢复和一定程度后视(Back View)的元数据备份,后面将分别讨论。
软更新(soft update)是另一种在内核崩溃时保持系统一致性和可恢复性的技术。这种技术使用精确的序列来更新文件数据和元数据。因为软更新包含一种非常复杂的机制,这个机制需要很多代码(因此,系统时间),并且它不能完全保证文件系统的一致性,IFS在部分版本中使用软更新作为日志的补充。
快像(snapshot)是现存技术,用于即时得到文件系统的只读映像。快像是在预定的时间间隔内得到的文件系统映像。它们用于提取关于系统过去时间的元数据的信息。用户(或系统)可以使用它们来确定一段时间以前目录和文件的内容是什么。
“后视”是SSA的一个新颖独特的特征。从用户的观点看,它是“快照”的方便形式。因为重新创建文件系统所需要的所有元数据都存储在副存储器上,并且它的大部分也复制到DBS表中,如果元数据/数据还没有从副存储器中消失,则以一定的精度(大约5分钟,取决于那时文件系统的更新活跃度)重建在过去任意时间点的文件系统是价值不高的。用户可以设定元数据和数据在副存储器中保留的时间长度。在这种过去文件系统状态元数据的只读映像中,所有文件都是虚的。如果用户试图访问一个文件,他将开始一个从副存储器中恢复适当的文件数据的程序。
安全恢复(secure undelete)是一个在今天的几乎所有文件系统中都有的特征。它很难在常规的文件系统中执行。由于SSA系统的结构,因为对于任意给定时刻的文件系统已经至少包含了两个副本,所以IFS能够容易执行安全恢复。当用户删除一个文件时,它的副本仍然存储在副介质内,并且只有在预定和配置的时间内或者在外部用户的要求下才能被删除。这个文件的一个记录仍然储存在DBS中,因此,在这段时间内可以安全恢复文件。
存在于今天的文件系统中一个共同的情形是相当慢的目录搜索过程(搜索一个内部有多于一千个条目的目录需要几分钟)。这是由于多数文件系统在目录内存储数据的方法决定的:目录条目的线性列表。另一方面,对于条目的布置,IFS使用了基于条目名字的字母排序的b-树结构,这可以大幅提高目录搜索速度。
通常,在文件系统中每次数据需要更新时,元数据(索引节,目录,和超级块)不得不也更新。后者的更新操作非常频繁,几乎耗用的时间和文件本身更新的时间相同,并在其下的硬件设备中添加至少一个额外的搜索操作。与现存的文件系统比较,IFS可以提供一个新颖的特征:文件元数据和数据分别存储在单独的设备上。这样通过将元数据存在单独的、快速的设备(例如,固态磁盘)上解决了严重的时间问题。
这个特性还允许文件系统在几个分区上的分布式存储。每个分区的元数据和关于所有IFS分区的类属信息(以类属超级块的形式)可以存储在一个快速设备上。使用这种设计,当一个新的设备添加到系统时,它的元数据存储在独立介质并且更新介质的超级块。如果移走设备,则删除元数据并且系统更新类属超级块,否则清除。为了鲁棒性,属于某一分区的元数据的副本在这个区域内创建。在每次卸载IFS时或在每固定时间间隔或设定的时间间隔内更新这个副本。
IFS中的每一个64位数据指针包含设备地址部分和块地址部分。在本发明的一个实施例中,块指针的高16位用于设备识别,其余的48位用作设备内的块地址。在IFS控制下,这种块指针允许存储所有设备上的所有块。显然,IFS中的文件可以超越设备的界限。
能够在几个设备上存储文件系统的能力使文件系统的大小不依赖于存储设备的容量。这种机制还可以实现无需高成本的系统稳定性,和与标准的稳定性提供方法(如RAID磁盘列阵)相比,较少的空间占用面积。它还省去了将多个物理磁盘合并为一个逻辑磁盘的标准工具的使用(如LVM)。大部分的重要数据(主要是元数据)和新创建的数据可以由文件系统编码自动在独立的设备(可以连接到不同的总线以防止总线故障)上创建镜像。这种方法不需要价格昂贵的附加的硬件设备(如RAID控制器)或另外的通常运行缓慢的复杂的软件层(如RAID软件),I/O和计算消耗(由于奇偶计算)。一旦新创建的数据由SSA系统复制在副介质上,可以取消分配和重新使用冗余副本(镜像)所占用的空间。于是,为了得到这种额外的稳定性,仅仅需要昂贵的介质存储空间的一小部分来做镜像,得到由奇偶RAID结构提供的高水平的稳定性并且不需要奇偶计算的系统开销。这个部分取决于副存储器存储数据的能力,并可以通过提供充分数量的独立的副存储器(如磁带或光盘)来保持合理的小百分比。
在IFS中,系统调用,例如creat(),open(),read(),write()和unlink()具有特殊的执行过程,下面将进行说明。creat()
新文件一旦创建,IFS就通过通讯模块与DBS通讯,产生一个新的对应于新文件的数据库条目。open()
当用户打开一个文件,IFS首先检查文件的数据是否在主介质上(例如硬盘)。如果在,IFS作为“常规”文件系统运行并打开这个文件。如果文件不在硬盘上,则IFS与DBS通讯,确定哪个SMSD包含文件的副本。然后IFS为这个文件分配空间。当通讯模块未与SSU连接时,IFS连接它。产生一个将文件从副存储器恢复到所分配空间的请求。然后适当的SSU恢复数据,保持IFS的更新(这样,即使在传输过程中,IFS也可以通过read()向用户提供恢复的数据)。所有操作对简单打开文件的用户是透明的。显然,打开一个存储在SMSD上的文件要比打开一个已经存在于主磁盘上的文件耗费较多的时间。read()
当打开一个存储在SMSD上的大文件时,把所有数据一次地传到主介质上是效率很低的,用户要等待这个过程结束才能取得其它数据。IFS在索引节中维持一个表示文件有多少数据存储在主介质上的变量(在磁盘和内存内)。这允许read()在数据从副介质上一恢复就向用户返回数据。使read()更有效率,可以进行预读。write(),close()
系统管理员定义在副本更新的时间间隔内系统内需要有多少个文件的副本。当关闭一个新文件时,IFS与DBS通讯并得到适当的SMSD的数据。然后它连接SMSD并要求创建文件的副本。SSU于是直接从磁盘向副存储器进行复制,这减轻了IFS和网络的传输过载。当主磁盘和副存储器处于相同的光纤通道内时,通过使用FC直接传输命令,可以进一步简化和优化网络数据传输。
IFS还保持一个内存结构,其反映所有打开用于写的文件的状况。它可以记住open()调用的时间和最后write()的时间。独立的IFS线程(thread)为打开时间已超过预定时间(按5分钟-4小时的顺序)的文件监视这个结构。如果这些文件被修改了,这个线程创建它们的“快照”,并发出信号通知合适的SSU来创建这个“快照”的副本。由此,在系统崩溃的情况下,程序中的工作保持着一个重新恢复的机会。
当用户删除(unlink())文件时,文件并不立刻从SMSD移走。除了通常的从主存储器删除文件和元数据结构外,还更新文件的DBS纪录以反映删除时间。系统管理员可以预先设定文件被用户删除后在系统内保留的时间长度。当时间过期后,删除所有的副本和BDS内的条目。如果需要,为了安全原因,用户可以改变这种机制,立刻永久删除文件。这其中使用了特殊的输入输出控制(ioctl)调用。
通讯模块(CM)作为IFS和存储系统内所有其它模块之间的桥梁。它作为多线程服务器运行。当IFS需要与DBS或SSU通讯时,分配CM线程来执行通讯。
MySQL数据库服务器用于实现DBS,虽然也可以使用Postgres或Sybase Adaptive Server这样的服务器。DBS包含IFS内的文件、副存储介质、副存储器内的数据位置、历史和现存元数据的所有信息。这些信息包括:文件名,索引节,创建次数,删除和最后修改,文件所存储的设备的id和文件的状态(例如,是否被更新)。每个文件的数据库密钥是它的索引节号和映射为唯一标识符的设备id。文件名仅仅用于安全恢复(undelete)操作(如果用户需要恢复删除的文件,IFS发送一个包含文件名和DBS名的请求,然后根据名字查询它)。DBS还包含关于SMSD设备的信息,它们的特性和当前操作状态。并且,所有SSA在DBS中存储着它们的配置值。
VS作为定期获得IFS硬盘状态信息的监控进程(daemon)。当达到了规定大小的阈值,VS连接DBS并获得其数据可以从主介质删除的文件的列表。可以根据它们最后修改的时间和它们的大小选择这些文件(先删除旧的、大的文件)。一旦它拥有了要删除文件的列表,VS列表传给IFS通讯模块。通讯模块负责向IFS和DBS发送信息。
重新打包服务器作为监控进程(daemon)执行。它监控每个SMSD的负荷。RS定期连接DBS并获得需要重新打包的设备的列表(例如,磁带的数据与空闲空间的比率太小,没有再可向它添加的数据)。当需要和低水平允许时,RS连接合适的SSU并要求它将它的(少数的)数据内容重新写到新的磁带上。
每个副介质存储设备(SMSD)逻辑上与它自己的SSU软件配对。SSU作为多线程服务器执行。当一个新的SMSD连接到SSA系统时,启动一个新的SSU服务,于是产生一个连接DBS的线程。将关于SSU参数的信息发送到DBS并注册SMSD。保持SSU和DBS之间的通讯直到SMSD中断连接或发生故障。它被DBS用于通知应该从SMSD删除的文件。它还用于显示SMSD的状态参数,例如它的负载情况。
当IFS需要向(或从)SMSD写(或读)文件时,如果还未连接,则它连接合适的SSU,这产生一个线程与IFS通讯。这种连接可以通过常规的网络,或者如果IFS和SSU运行于同一个控制器上,可以通过共享存储器接口。能够达到的同时读/写的数目等于SMSD内驱动器的数目。SSU总是优先读请求。
当RS确定设备需要重新打包时,它也需要不时地与SSU通讯(例如从高度碎片的(fragmented)磁带向新磁带写数据)。当RS连接到SSU时,SSU生成新的线程来服务这个请求。RS的请求的优先权最低,仅仅当SMSD处于空闲状态或有(可配置地)充分数目的空闲驱动器时才被接受。
用户数据访问接口分为下面的访问方法和相应的软件组件:
1.网络文件系统(NFS)服务器,用于处理NFS v.2,3和可能的4,或WebNFS;
2.公用因特网文件系统(CIFS)服务器;
3.文件传输协议(FTP)服务器;和
4.超文体传输协议/HTTP安全(HTTP/HTTPS)服务器。
可以使用knfsd的高度优化和改进版本。根据这个软件的GNU公共许可,这些改进可以用于Linux共同体。以此来避免这个非常重要和复杂的软件的长的开发和调试过程。
现存的knfsd仅仅支持NFS v.2和3。可以在代码上进行一些优化工作。本发明也可以使用Sun Microsystem的NFS确认工具来使这个软件完全符合NFS的规范。NFS v.4一旦发布,本发明也可以将这个协议并入knfsd。
Samba部件可以提供对微软Windows(9x,2000和NT)客户端的访问。Samba是一个非常可靠的、高度优化的、被积极支持/发展的免费软件产品。一些存储器供应商已经使用Samba来提供CIFS访问。
本发明可以配置Samba来排除它的域控制器和打印共享特征。本发明也可以进行广泛的测试来确保与CIFS协议最大限度的配合。可以安装第三方ftp daemon来进行FTP访问。当前的可选择的有NcFTPd和WU-FTPd。
与C2Net有一个初步协议,Stronghold secure http服务器的生成者使用它们的产品作为本发明的http/https服务器,用作数据服务器和配置/报告接口。
用户的需求会鼓励本发明合并其它的访问协议(例如Macintosh专有的文件共享协议)。由于IFS能够作为常规的、向用户提供数据服务的控制器上的本地文件系统,因此这不会引起任何问题。
管理和配置分为下面三种访问方法和相应的软件组件:
1.配置工具;
2.报告工具;和
3.配置访问接口。
配置工具可以实施为一组perl脚本(script),它们能够以两种方式运行:通过命令行的交互式,或在http服务器上通过perlmod。第二种执行方式可以输出html格式网页以让管理员的网页浏览器使用。
多数配置脚本可以为各个组件修改DBS纪录。配置工具应该能够至少修改下面的参数(通过各个组件):
●OS配置:IP地址,网络掩码,默认网关,用于每个外部(用户可见)接口的域名服务器(DNS)/网络信息系统(NIS)服务器。相同的工具可以使不同的接口向上或向下。简单网络管理协议(SNMP)配置。
●IFS配置:添加和移走磁盘,强制清除磁盘(删除所有数据),全局地或为单个文件/目录设置HSM副本数目,标记文件为非虚(磁盘固定),存储删除文件的时间,快照时间表、创建历史映像,等等。
●迁移服务器:指定最大/最小磁盘空闲空间,迁移频率等等。
●SSU:添加或移走SSU,配置自动机(robot),检查介质目录,为场外存储或入库(vaulting)输出介质,添加介质,改变介质状态,等等。
●重新打包服务器:重新打包频率,重新打包优先级,触发数据/空闲空间比率,等等。
●访问控制:NFS,CIFS,FTP,和HTTP/HTTPS客户端和访问控制列表(区分所有协议或全局),为安全和其它原因废除不需要的访问方法。
●失效接管(Failover)配置:为维护/更新强制进行失效接管。
●通报配置:配置syslog过滤器,关键事件和统计的e-mail收信方。
报告工具可以以与配置工具相似的方式生成,用作命令行和基于HTTPS。可以通过SNMP而得到一些统计信息。也可以通过SNMP陷阱(trap)报告某些事件(例如,设备故障,关键状况等等)。一些类型的统计、状况、和配置信息类型可以通过报告接口生成:
●正常运行时间,容量,每层和全局所用空间,包括每个访问协议设计图表(pattern graph)的访问统计,客户端IP,等等。
●硬件状况检查:工作状态,每个设备层的负载,等等。
●每个SSU层的副介质目录,数据和清空介质请求,等等。
●OS统计:负载,网络接口统计,错误/冲突统计,等等。
●用于有效统计、事件和请求报告的E-mail。
本发明可以提供下面五种基本配置和报告接口:
1.HTTPS:使用带有我们的脚本的C2Net Stronghold产品,如在3.6.1和3.6.2所述。
2.经由有限外壳(shell)的命令行,可以通过串行控制台或通过ssh(telnet可选,默认的为禁止)访问。
3.SNMP,用于被动统计报告。
4.SNMP陷阱(trap),用于有效事件报告。
5.E-mail,用于有效统计、事件和请求报告。
系统日志可以在SSA产品中起到重要作用。两种控制器都可以运行我们的改进型syslog daemon的它们自己的副本。它们可以本地地将它们所有的消息记入文件和远程地记入其它控制器。它们还可以将信息通过E-mail过滤器发送到技术支持小组和/或用户的本地系统管理员。
本发明可以使用现有的免费软件syslog daemon作为基础。它可以用后面的特征来增强:
●不向外部syslog设施发送外部(起源于网络)消息的能力。这个特征对于避免在两个控制器之间形成日志循环是必需的。
●为接听远程消息绑定特定的网络接口的能力。这个特征可以防止SSA产品的一些外部服务攻击。本发明可以设置syslog为仅仅接听两个控制器之间来自专有网络的消息。
●将消息记入管道(pipe)和消息列队的能力。这种能力对于能够将消息发给对特定触发事件采取行动(向系统管理员和/或技术支持发送e-mail这样的行为)的外部过滤器是必需的。
●检测日志目的文件的故障并中止向它记入日志。这对于避免万一发生远程日记接收或本地管道(pipe)/列队错误而丢失所有的日志功能是必须的。
两个控制器都可以使用专有网络的heartbeat包和几个管线通道环路相互监控。这允许检测控制器的故障和专有网络/Fc网络故障。当整个控制器发生故障时,继续运行的控制器通知数据基地支援组并接管失效控制器的功能。图7显示了事件的顺序。
以上根据优选实施例描述了本发明,然而,在不脱离本发明范围的情况下,可以对所述的实施例进行各种修改和改进。

Claims (9)

1.一种冗余的和可升级的存储系统,用于数据的鲁棒存储,该系统包括:
主存储介质,包括提供存储在其上的数据的即时备份的冗余存储单元;
副存储介质,存储在主存储介质上的数据在它上面作镜像;和
元数据存储介质,在其上存储元数据组,所述元数据组表示主存储介质和副存储介质的内部数据组织。
2.根据权利要求1所述的冗余和可升级存储系统,其特征在于,所述的元数据存储系统包括固态磁盘。
3.根据权利要求1所述的冗余和可升级存储系统,其特征在于,所述的主存储系统包括硬盘驱动器。
4.根据权利要求3所述的冗余和可升级存储系统,其特征在于,所述的副存储介质包括光盘库。
5.根据权利要求3所述的冗余和可升级存储系统,其特征在于,所述的副存储介质包括磁带库。
6.一种使用具有主存储设备、副存储设备和元数据存储设备的系统来鲁棒存储数据的方法,该方法包括:
在主存储设备上冗余地存储数据;
准备对应于将从主存储设备向副存储设备镜像的数据的元数据;
在元数据存储设备上存储所述元数据;
从主存储设备向副存储设备镜像数据;以及
可选地虚化主存储设备上的数据。
7.根据权利要求6所述的鲁棒存储数据的方法,其特征在于,根据最近最少使用算法选择要虚化的数据。
8.一种管理多个存储设备的数据存储空间的方法,该方法包括:
独立地对每个存储设备编址;
在存储设备的子集中存储元数据;
在其余的存储设备上存储数据;以及
使用包含设备标识符的数据块指针。
9.一种访问存储系统的历史状态的方法,该方法包括:
在副存储设备上存储数据,并且不管数据在主存储设备上是否已经修改,在副存储设备上保持数据;
在副存储设备上存储元数据;
在被请求时,应用户的请求取出对应于存储系统状态的元数据;
由取出的元数据重建存储系统的只读映像;
取出对应于取出的元数据的数据的只读历史副本。
CN00816854A 1999-12-07 2000-12-06 可升级存储器架构 Pending CN1408083A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16937299P 1999-12-07 1999-12-07
US60/169,372 1999-12-07

Publications (1)

Publication Number Publication Date
CN1408083A true CN1408083A (zh) 2003-04-02

Family

ID=22615398

Family Applications (1)

Application Number Title Priority Date Filing Date
CN00816854A Pending CN1408083A (zh) 1999-12-07 2000-12-06 可升级存储器架构

Country Status (12)

Country Link
US (1) US20020069324A1 (zh)
EP (1) EP1238335A1 (zh)
JP (1) JP2003516582A (zh)
KR (1) KR20020090206A (zh)
CN (1) CN1408083A (zh)
AU (1) AU2061801A (zh)
BR (1) BR0016186A (zh)
CA (1) CA2394876A1 (zh)
IL (1) IL150079A0 (zh)
MX (1) MXPA02005662A (zh)
RU (1) RU2002118306A (zh)
WO (1) WO2001042922A1 (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100366116C (zh) * 2004-08-29 2008-01-30 华为技术有限公司 通信设备子系统升级方法
CN100378670C (zh) * 2004-07-22 2008-04-02 国际商业机器公司 逻辑分区计算机系统及其输入输出能力的保持方法
CN100392580C (zh) * 2005-08-10 2008-06-04 国际商业机器公司 用于将数据写入镜像存储组件的装置和方法
CN100401286C (zh) * 2003-05-21 2008-07-09 微软公司 用于透明的存储重组的系统和方法
CN100416508C (zh) * 2004-11-02 2008-09-03 惠普开发有限公司 一种存储网络中的数据备份方法
CN100440214C (zh) * 2004-11-18 2008-12-03 国际商业机器公司 管理存储子系统中元数据的方法、系统和计算机程序产品
CN101056254B (zh) * 2007-06-06 2011-01-05 杭州华三通信技术有限公司 一种网络存储设备的扩展方法、系统及其装置
CN101589371B (zh) * 2007-01-22 2012-06-27 国际商业机器公司 向分级存储系统透明备份的方法和系统
CN105207958A (zh) * 2014-06-05 2015-12-30 中兴通讯股份有限公司 一种元数据处理方法、交换机及控制器
CN105261377A (zh) * 2015-09-22 2016-01-20 苏州互盟信息存储技术有限公司 旋转式光盘存储装置、光盘库及磁光融合存储装置
CN105788615A (zh) * 2015-01-12 2016-07-20 辛力彬 一种轮式光盘库光盘定位装置

Families Citing this family (141)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7035880B1 (en) 1999-07-14 2006-04-25 Commvault Systems, Inc. Modular backup and retrieval system used in conjunction with a storage area network
US7395282B1 (en) 1999-07-15 2008-07-01 Commvault Systems, Inc. Hierarchical backup and retrieval system
US7389311B1 (en) 1999-07-15 2008-06-17 Commvault Systems, Inc. Modular backup and retrieval system
US6658436B2 (en) 2000-01-31 2003-12-02 Commvault Systems, Inc. Logical view and access to data managed by a modular data and storage management system
US7155481B2 (en) 2000-01-31 2006-12-26 Commvault Systems, Inc. Email attachment management in a computer system
US7003641B2 (en) 2000-01-31 2006-02-21 Commvault Systems, Inc. Logical view with granular access to exchange data managed by a modular data and storage management system
AU2002312508B2 (en) * 2000-09-11 2008-01-17 Agami Systems, Inc. Storage system having partitioned migratable metadata
US6757802B2 (en) * 2001-04-03 2004-06-29 P-Cube Ltd. Method for memory heap and buddy system management for service aware networks
GB2377051B (en) * 2001-06-30 2005-06-15 Hewlett Packard Co Monitoring applicance for data storage arrays and a method of monitoring usage
KR20030016076A (ko) * 2001-08-20 2003-02-26 데이타코러스 주식회사 하드디스크를 이용한 백업 장치
US8346733B2 (en) 2006-12-22 2013-01-01 Commvault Systems, Inc. Systems and methods of media management, such as management of media to and from a media storage library
US7603518B2 (en) 2005-12-19 2009-10-13 Commvault Systems, Inc. System and method for improved media identification in a storage device
US7043503B2 (en) * 2002-02-15 2006-05-09 International Business Machines Corporation Ditto address indicating true disk address for actual data blocks stored in one of an inode of the file system and subsequent snapshot
US6910116B2 (en) * 2002-05-23 2005-06-21 Microsoft Corporation Game disk layout
JP4166516B2 (ja) * 2002-06-14 2008-10-15 株式会社日立製作所 ディスクアレイ装置
US6980987B2 (en) 2002-06-28 2005-12-27 Alto Technology Resources, Inc. Graphical user interface-relational database access system for a robotic archive
US7707184B1 (en) * 2002-10-09 2010-04-27 Netapp, Inc. System and method for snapshot full backup and hard recovery of a database
US20040088301A1 (en) * 2002-10-31 2004-05-06 Mallik Mahalingam Snapshot of a file system
US20040088575A1 (en) * 2002-11-01 2004-05-06 Piepho Allen J. Secure remote network access system and method
US7353321B2 (en) * 2003-01-13 2008-04-01 Sierra Logic Integrated-circuit implementation of a storage-shelf router and a path controller card for combined use in high-availability mass-storage-device shelves that may be incorporated within disk arrays
WO2004090789A2 (en) 2003-04-03 2004-10-21 Commvault Systems, Inc. System and method for extended media retention
MXPA05010591A (es) 2003-04-03 2005-11-23 Commvault Systems Inc Sistema y metodo para desempenar dinamicamente operaciones de almacenamiento en una red de computadora.
US7237021B2 (en) * 2003-04-04 2007-06-26 Bluearc Uk Limited Network-attached storage system, device, and method supporting multiple storage device types
US7454569B2 (en) 2003-06-25 2008-11-18 Commvault Systems, Inc. Hierarchical system and method for performing storage operations in a computer network
US7409442B2 (en) * 2003-08-25 2008-08-05 International Business Machines Corporation Method for communicating control messages between a first device and a second device
US7546324B2 (en) 2003-11-13 2009-06-09 Commvault Systems, Inc. Systems and methods for performing storage operations using network attached storage
WO2005050386A2 (en) 2003-11-13 2005-06-02 Commvault Systems, Inc. System and method for performing a snapshot and for restoring data
JP2005165486A (ja) * 2003-12-01 2005-06-23 Sony Corp ファイル管理装置、ストレージ管理システム、ストレージ管理方法、プログラム及び記録媒体
US7188128B1 (en) * 2003-12-12 2007-03-06 Veritas Operating Corporation File system and methods for performing file create and open operations with efficient storage allocation
US8127095B1 (en) 2003-12-31 2012-02-28 Symantec Operating Corporation Restore mechanism for a multi-class file system
US7103740B1 (en) 2003-12-31 2006-09-05 Veritas Operating Corporation Backup mechanism for a multi-class file system
US8825591B1 (en) 2003-12-31 2014-09-02 Symantec Operating Corporation Dynamic storage mechanism
US7293133B1 (en) 2003-12-31 2007-11-06 Veritas Operating Corporation Performing operations without requiring split mirrors in a multi-class file system
US7225211B1 (en) 2003-12-31 2007-05-29 Veritas Operating Corporation Multi-class storage mechanism
US7130971B2 (en) * 2004-03-30 2006-10-31 Hitachi, Ltd. Assuring genuineness of data stored on a storage device
US7197520B1 (en) 2004-04-14 2007-03-27 Veritas Operating Corporation Two-tier backup mechanism
US7177883B2 (en) * 2004-07-15 2007-02-13 Hitachi, Ltd. Method and apparatus for hierarchical storage management based on data value and user interest
US8578399B2 (en) 2004-07-30 2013-11-05 Microsoft Corporation Method, system, and apparatus for providing access to workbook models through remote function cells
US7991804B2 (en) 2004-07-30 2011-08-02 Microsoft Corporation Method, system, and apparatus for exposing workbooks as data sources
US7594075B2 (en) * 2004-10-20 2009-09-22 Seagate Technology Llc Metadata for a grid based data storage system
CA2587055A1 (en) 2004-11-05 2006-05-18 Commvault Systems, Inc. Method and system of pooling storage devices
KR100677601B1 (ko) * 2004-11-11 2007-02-02 삼성전자주식회사 메타 데이터를 포함하는 영상 데이터를 기록한 저장매체,그 재생장치 및 메타 데이터를 이용한 검색방법
US20060136508A1 (en) * 2004-12-16 2006-06-22 Sam Idicula Techniques for providing locks for file operations in a database management system
JP4392338B2 (ja) * 2004-12-20 2009-12-24 富士通株式会社 データ管理方法及び装置並びに階層型記憶装置
US20060136525A1 (en) * 2004-12-21 2006-06-22 Jens-Peter Akelbein Method, computer program product and mass storage device for dynamically managing a mass storage device
US7383274B2 (en) * 2005-03-21 2008-06-03 Microsoft Corporation Systems and methods for efficiently storing and accessing data storage system paths
US8010498B2 (en) 2005-04-08 2011-08-30 Microsoft Corporation Virtually infinite reliable storage across multiple storage devices and storage services
US8224837B2 (en) * 2005-06-29 2012-07-17 Oracle International Corporation Method and mechanism for supporting virtual content in performing file operations at a RDBMS
US20070028302A1 (en) * 2005-07-29 2007-02-01 Bit 9, Inc. Distributed meta-information query in a network
JP4704161B2 (ja) * 2005-09-13 2011-06-15 株式会社日立製作所 ファイルシステムの構築方法
US8930402B1 (en) * 2005-10-31 2015-01-06 Verizon Patent And Licensing Inc. Systems and methods for automatic collection of data over a network
US7734593B2 (en) 2005-11-28 2010-06-08 Commvault Systems, Inc. Systems and methods for classifying and transferring information in a storage network
US20070185926A1 (en) * 2005-11-28 2007-08-09 Anand Prahlad Systems and methods for classifying and transferring information in a storage network
US7617262B2 (en) 2005-12-19 2009-11-10 Commvault Systems, Inc. Systems and methods for monitoring application data in a data replication system
US7636743B2 (en) 2005-12-19 2009-12-22 Commvault Systems, Inc. Pathname translation in a data replication system
EP1974296B8 (en) 2005-12-19 2016-09-21 Commvault Systems, Inc. Systems and methods for performing data replication
US7606844B2 (en) 2005-12-19 2009-10-20 Commvault Systems, Inc. System and method for performing replication copy storage operations
US8661216B2 (en) 2005-12-19 2014-02-25 Commvault Systems, Inc. Systems and methods for migrating components in a hierarchical storage network
US7962709B2 (en) 2005-12-19 2011-06-14 Commvault Systems, Inc. Network redirector systems and methods for performing data replication
US7651593B2 (en) 2005-12-19 2010-01-26 Commvault Systems, Inc. Systems and methods for performing data replication
US8930496B2 (en) 2005-12-19 2015-01-06 Commvault Systems, Inc. Systems and methods of unified reconstruction in storage systems
US20200257596A1 (en) 2005-12-19 2020-08-13 Commvault Systems, Inc. Systems and methods of unified reconstruction in storage systems
US8286159B2 (en) 2005-12-22 2012-10-09 Alan Joshua Shapiro Method and apparatus for gryphing a data storage medium
US9286308B2 (en) 2005-12-22 2016-03-15 Alan Joshua Shapiro System and method for metadata modification
WO2007072310A1 (en) 2005-12-22 2007-06-28 Shapiro Alan J System and method for software delivery
US20070174539A1 (en) * 2005-12-30 2007-07-26 Hidehisa Shitomi System and method for restricting the number of object copies in an object based storage system
US8909758B2 (en) * 2006-05-02 2014-12-09 Cisco Technology, Inc. Physical server discovery and correlation
US8266472B2 (en) * 2006-05-03 2012-09-11 Cisco Technology, Inc. Method and system to provide high availability of shared data
US8726242B2 (en) 2006-07-27 2014-05-13 Commvault Systems, Inc. Systems and methods for continuous data replication
US7539783B2 (en) 2006-09-22 2009-05-26 Commvault Systems, Inc. Systems and methods of media management, such as management of media to and from a media storage library, including removable media
US7882077B2 (en) 2006-10-17 2011-02-01 Commvault Systems, Inc. Method and system for offline indexing of content and classifying stored data
US8370442B2 (en) 2008-08-29 2013-02-05 Commvault Systems, Inc. Method and system for leveraging identified changes to a mail server
US7831566B2 (en) 2006-12-22 2010-11-09 Commvault Systems, Inc. Systems and methods of hierarchical storage management, such as global management of storage operations
US20080228771A1 (en) * 2006-12-22 2008-09-18 Commvault Systems, Inc. Method and system for searching stored data
US20080183988A1 (en) * 2007-01-30 2008-07-31 Yanling Qi Application Integrated Storage System Volume Copy and Remote Volume Mirror
US8290808B2 (en) 2007-03-09 2012-10-16 Commvault Systems, Inc. System and method for automating customer-validated statement of work for a data storage environment
US8706976B2 (en) 2007-08-30 2014-04-22 Commvault Systems, Inc. Parallel access virtual tape library and drives
US7805471B2 (en) * 2008-01-14 2010-09-28 International Business Machines, Corporation Method and apparatus to perform incremental truncates in a file system
US8296301B2 (en) 2008-01-30 2012-10-23 Commvault Systems, Inc. Systems and methods for probabilistic data classification
US7836174B2 (en) 2008-01-30 2010-11-16 Commvault Systems, Inc. Systems and methods for grid-based data scanning
GB2470670A (en) * 2008-01-31 2010-12-01 Ericsson Telefon Ab L M Lossy compression of data
TWI364686B (en) * 2008-05-15 2012-05-21 Lumous Technology Co Ltd Method for protecting computer file used in solid state disk array
US7506038B1 (en) 2008-05-29 2009-03-17 International Business Machines Corporation Configuration management system and method thereof
US20090319532A1 (en) * 2008-06-23 2009-12-24 Jens-Peter Akelbein Method of and system for managing remote storage
US20100070466A1 (en) 2008-09-15 2010-03-18 Anand Prahlad Data transfer techniques within data storage devices, such as network attached storage performing data migration
US9495382B2 (en) 2008-12-10 2016-11-15 Commvault Systems, Inc. Systems and methods for performing discrete data replication
US8204859B2 (en) 2008-12-10 2012-06-19 Commvault Systems, Inc. Systems and methods for managing replicated database data
JP5407430B2 (ja) 2009-03-04 2014-02-05 日本電気株式会社 ストレージシステム
CN101621405B (zh) * 2009-07-07 2012-02-29 中兴通讯股份有限公司 分布式管理监控系统及其监控方法、创建方法
US8442983B2 (en) 2009-12-31 2013-05-14 Commvault Systems, Inc. Asynchronous methods of data classification using change journals and other data structures
US8843459B1 (en) 2010-03-09 2014-09-23 Hitachi Data Systems Engineering UK Limited Multi-tiered filesystem
US8504517B2 (en) 2010-03-29 2013-08-06 Commvault Systems, Inc. Systems and methods for selective data replication
US8352422B2 (en) 2010-03-30 2013-01-08 Commvault Systems, Inc. Data restore systems and methods in a replication environment
US8504515B2 (en) 2010-03-30 2013-08-06 Commvault Systems, Inc. Stubbing systems and methods in a data replication environment
US8725698B2 (en) 2010-03-30 2014-05-13 Commvault Systems, Inc. Stub file prioritization in a data replication system
US8572038B2 (en) 2010-05-28 2013-10-29 Commvault Systems, Inc. Systems and methods for performing data replication
KR101146975B1 (ko) * 2010-07-21 2012-05-23 도시바삼성스토리지테크놀러지코리아 주식회사 광디스크 미러링방법
US9244779B2 (en) 2010-09-30 2016-01-26 Commvault Systems, Inc. Data recovery operations, such as recovery from modified network data management protocol data
TWI447584B (zh) * 2010-11-01 2014-08-01 Inst Information Industry 多人共享之網路儲存服務系統與方法
US9021198B1 (en) 2011-01-20 2015-04-28 Commvault Systems, Inc. System and method for sharing SAN storage
US8719264B2 (en) 2011-03-31 2014-05-06 Commvault Systems, Inc. Creating secondary copies of data based on searches for content
GB201115083D0 (en) * 2011-08-31 2011-10-19 Data Connection Ltd Identifying data items
US9298715B2 (en) 2012-03-07 2016-03-29 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
US9471578B2 (en) 2012-03-07 2016-10-18 Commvault Systems, Inc. Data storage system utilizing proxy device for storage operations
WO2013148096A1 (en) 2012-03-30 2013-10-03 Commvault Systems, Inc. Informaton management of mobile device data
US9342537B2 (en) 2012-04-23 2016-05-17 Commvault Systems, Inc. Integrated snapshot interface for a data storage system
US8892523B2 (en) 2012-06-08 2014-11-18 Commvault Systems, Inc. Auto summarization of content
CN103067170B (zh) * 2012-12-14 2015-04-15 深圳国微技术有限公司 一种基于ext2文件系统的加密方法
US9069799B2 (en) 2012-12-27 2015-06-30 Commvault Systems, Inc. Restoration of centralized data storage manager, such as data storage manager in a hierarchical data storage system
US9542423B2 (en) * 2012-12-31 2017-01-10 Apple Inc. Backup user interface
US9336226B2 (en) 2013-01-11 2016-05-10 Commvault Systems, Inc. Criteria-based data synchronization management
US9886346B2 (en) 2013-01-11 2018-02-06 Commvault Systems, Inc. Single snapshot for multiple agents
US9880773B2 (en) * 2013-03-27 2018-01-30 Vmware, Inc. Non-homogeneous disk abstraction for data oriented applications
US9632874B2 (en) 2014-01-24 2017-04-25 Commvault Systems, Inc. Database application backup in single snapshot for multiple applications
US9495251B2 (en) 2014-01-24 2016-11-15 Commvault Systems, Inc. Snapshot readiness checking and reporting
US9753812B2 (en) 2014-01-24 2017-09-05 Commvault Systems, Inc. Generating mapping information for single snapshot for multiple applications
US9639426B2 (en) 2014-01-24 2017-05-02 Commvault Systems, Inc. Single snapshot for multiple applications
US9804961B2 (en) * 2014-03-21 2017-10-31 Aupera Technologies, Inc. Flash memory file system and method using different types of storage media
CN104112455B (zh) * 2014-05-04 2017-03-15 苏州互盟信息存储技术有限公司 一种基于离线光盘库的数据存储和读写装置、方法及系统
US10042716B2 (en) 2014-09-03 2018-08-07 Commvault Systems, Inc. Consolidated processing of storage-array commands using a forwarder media agent in conjunction with a snapshot-control media agent
US9774672B2 (en) 2014-09-03 2017-09-26 Commvault Systems, Inc. Consolidated processing of storage-array commands by a snapshot-control media agent
US9448731B2 (en) 2014-11-14 2016-09-20 Commvault Systems, Inc. Unified snapshot storage management
US9648105B2 (en) 2014-11-14 2017-05-09 Commvault Systems, Inc. Unified snapshot storage management, using an enhanced storage manager and enhanced media agents
JP6037469B2 (ja) 2014-11-19 2016-12-07 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報管理システム、情報管理方法およびプログラム
US9928144B2 (en) 2015-03-30 2018-03-27 Commvault Systems, Inc. Storage management of data using an open-archive architecture, including streamlined access to primary data originally stored on network-attached storage and archived to secondary storage
US10101913B2 (en) 2015-09-02 2018-10-16 Commvault Systems, Inc. Migrating data to disk without interrupting running backup operations
CN105224245A (zh) * 2015-09-22 2016-01-06 苏州互盟信息存储技术有限公司 基于磁光融合结构的数据存储装置和数据存储方法
US10503753B2 (en) 2016-03-10 2019-12-10 Commvault Systems, Inc. Snapshot replication operations based on incremental block change tracking
US10540516B2 (en) 2016-10-13 2020-01-21 Commvault Systems, Inc. Data protection within an unsecured storage environment
US10922189B2 (en) 2016-11-02 2021-02-16 Commvault Systems, Inc. Historical network data-based scanning thread generation
US10389810B2 (en) 2016-11-02 2019-08-20 Commvault Systems, Inc. Multi-threaded scanning of distributed file systems
KR102263357B1 (ko) * 2017-04-19 2021-06-11 한국전자통신연구원 분산 파일시스템 환경에서 사용자 수준 dma i/o를 지원하는 시스템 및 그 방법
US10984041B2 (en) 2017-05-11 2021-04-20 Commvault Systems, Inc. Natural language processing integrated with database and data storage management
US10742735B2 (en) 2017-12-12 2020-08-11 Commvault Systems, Inc. Enhanced network attached storage (NAS) services interfacing to cloud storage
US10642886B2 (en) 2018-02-14 2020-05-05 Commvault Systems, Inc. Targeted search of backup data using facial recognition
US10740022B2 (en) 2018-02-14 2020-08-11 Commvault Systems, Inc. Block-level live browsing and private writable backup copies using an ISCSI server
US11159469B2 (en) 2018-09-12 2021-10-26 Commvault Systems, Inc. Using machine learning to modify presentation of mailbox objects
US11042318B2 (en) 2019-07-29 2021-06-22 Commvault Systems, Inc. Block-level data replication
US11494417B2 (en) 2020-08-07 2022-11-08 Commvault Systems, Inc. Automated email classification in an information management system
US11593223B1 (en) 2021-09-02 2023-02-28 Commvault Systems, Inc. Using resource pool administrative entities in a data storage management system to provide shared infrastructure to tenants
US11809285B2 (en) 2022-02-09 2023-11-07 Commvault Systems, Inc. Protecting a management database of a data storage management system to meet a recovery point objective (RPO)

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ229740A (en) * 1988-07-11 1991-11-26 Amdahl Corp Improving data storage reliability: backup copy written into archive
US5485606A (en) * 1989-07-10 1996-01-16 Conner Peripherals, Inc. System and method for storing and retrieving files for archival purposes
JP3135751B2 (ja) * 1993-07-16 2001-02-19 株式会社東芝 データ記憶装置
KR970076238A (ko) * 1996-05-23 1997-12-12 포만 제프리 엘 클라이언트 데이타 화일의 다수의 복사본을 생성하고 관리하는 서버, 방법 및 그 프로그램 제품
US5917998A (en) * 1996-07-26 1999-06-29 International Business Machines Corporation Method and apparatus for establishing and maintaining the status of membership sets used in mirrored read and write input/output without logging
US6003114A (en) * 1997-06-17 1999-12-14 Emc Corporation Caching system and method providing aggressive prefetch
US5933834A (en) * 1997-10-16 1999-08-03 International Business Machines Incorporated System and method for re-striping a set of objects onto an exploded array of storage units in a computer system
US6009478A (en) * 1997-11-04 1999-12-28 Adaptec, Inc. File array communications interface for communicating between a host computer and an adapter

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100401286C (zh) * 2003-05-21 2008-07-09 微软公司 用于透明的存储重组的系统和方法
CN100378670C (zh) * 2004-07-22 2008-04-02 国际商业机器公司 逻辑分区计算机系统及其输入输出能力的保持方法
CN100366116C (zh) * 2004-08-29 2008-01-30 华为技术有限公司 通信设备子系统升级方法
CN100416508C (zh) * 2004-11-02 2008-09-03 惠普开发有限公司 一种存储网络中的数据备份方法
CN100440214C (zh) * 2004-11-18 2008-12-03 国际商业机器公司 管理存储子系统中元数据的方法、系统和计算机程序产品
CN100392580C (zh) * 2005-08-10 2008-06-04 国际商业机器公司 用于将数据写入镜像存储组件的装置和方法
CN101589371B (zh) * 2007-01-22 2012-06-27 国际商业机器公司 向分级存储系统透明备份的方法和系统
CN101056254B (zh) * 2007-06-06 2011-01-05 杭州华三通信技术有限公司 一种网络存储设备的扩展方法、系统及其装置
CN105207958A (zh) * 2014-06-05 2015-12-30 中兴通讯股份有限公司 一种元数据处理方法、交换机及控制器
CN105207958B (zh) * 2014-06-05 2020-05-05 中兴通讯股份有限公司 一种元数据处理方法、交换机及控制器
CN105788615A (zh) * 2015-01-12 2016-07-20 辛力彬 一种轮式光盘库光盘定位装置
CN105261377A (zh) * 2015-09-22 2016-01-20 苏州互盟信息存储技术有限公司 旋转式光盘存储装置、光盘库及磁光融合存储装置
CN105261377B (zh) * 2015-09-22 2018-06-19 苏州互盟信息存储技术有限公司 旋转式光盘存储装置、光盘库及磁光融合存储装置

Also Published As

Publication number Publication date
EP1238335A1 (en) 2002-09-11
IL150079A0 (en) 2002-12-01
RU2002118306A (ru) 2004-02-20
BR0016186A (pt) 2003-05-27
CA2394876A1 (en) 2001-06-14
WO2001042922A1 (en) 2001-06-14
AU2061801A (en) 2001-06-18
KR20020090206A (ko) 2002-11-30
US20020069324A1 (en) 2002-06-06
MXPA02005662A (es) 2004-09-10
JP2003516582A (ja) 2003-05-13

Similar Documents

Publication Publication Date Title
CN1408083A (zh) 可升级存储器架构
US9971657B2 (en) Systems and methods for performing data replication
US8458422B1 (en) Policy based creation of export sets and backup media
US20070174580A1 (en) Scalable storage architecture
US8386840B2 (en) Distributed object storage system
US7240241B2 (en) Backup method and storage control device using the same
EP1974296B1 (en) Systems and methods for performing data replication
US7962709B2 (en) Network redirector systems and methods for performing data replication
US7636743B2 (en) Pathname translation in a data replication system
CN1147788C (zh) 双重化计算机系统
US20070185937A1 (en) Destination systems and methods for performing data replication
US20070185939A1 (en) Systems and methods for monitoring application data in a data replication system
US8001339B1 (en) Storage management policies in a virtual data storage system
CN1524221A (zh) 信息备份系统和方法
CN1764901A (zh) 用于将计算机中的文件、目录和面向应用的文件的至少一个恢复成先前状态的设备
WO2013147783A1 (en) Content selection for storage tiering
US8316197B1 (en) Techniques for storage lifecycle policy management
US8495315B1 (en) Method and apparatus for supporting compound disposition for data images
Sack Backup, Recovery, and Maintenance

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication