CN100476812C - 利用至少一个数据存储器实现存储容量分配及管理方法和系统 - Google Patents
利用至少一个数据存储器实现存储容量分配及管理方法和系统 Download PDFInfo
- Publication number
- CN100476812C CN100476812C CNB2005100674058A CN200510067405A CN100476812C CN 100476812 C CN100476812 C CN 100476812C CN B2005100674058 A CNB2005100674058 A CN B2005100674058A CN 200510067405 A CN200510067405 A CN 200510067405A CN 100476812 C CN100476812 C CN 100476812C
- Authority
- CN
- China
- Prior art keywords
- data
- subregion
- database
- data storage
- field
- 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
相关申请及参考文件
本申请参考及主张美国临时专利申请“硬盘驱动器容量分配及管理的方法及系统”(代理案号15675US01)的优先权,其申请号为60/562847,申请日为2004年4月15日,通过参考其全部而将其完整的主题结合于此处。
本申请参考及主张美国临时专利申请“数据存储容量分配及管理方法和系统”(代理案号15675US02)的优先权,其申请号为60/648634,申请日为2005年1月31日,通过参考其全部而将其完整的主题结合于此处。
技术领域
背景技术
由于对数据处理或数据计算设备的数据存储需求的增长,用户希望增加一个或更多额外的数据存储驱动器。不幸地,增加额外的数据存储驱动器是一艰巨的任务。用户需要拆卸,配置,及重新连接一个或多个数据存储驱动器,以容纳额外的数据存储驱动器。而且,增加的数据存储驱动器需要通过一系列冗长的步骤而被手动配置。某些情况下,还需要执行一个或多个应用软件以对增加的存储驱动器充分地分区。而且,在多数情况下,用户希望通过镜像和分段存储驱动器以支持增加的冗余度及吞吐量。然而,这个任务通常包括多具复杂的步骤及会很难执行。因此,随着用户数据存储需求的增加,能够快速有效地增加数据存储容量以迎合用户需求变得越来越重要。
通过结合附图的本申请的其余部分而对比本发明的一些特征的这个系统,现有的和传统的实现方法的局限性和弊端是显而易见的。
发明内容
本发明的特征结合至少一种硬盘驱动器容量分配及管理的方法及系统。本发明的各种特征允许利用一个或多个硬盘驱动器的某些部分或某些扇区构成一个或多个数据库。本发明的上述特征与之后的至少一个附图结合而被充分地揭示及描述,在权利要求中给出了更完整的描述。
根据本发明的一个特征,提出一种利用一个或多个数据存储驱动器实现数据库的方法,包括:
第一,建立一第一分区表和一第二分区表,所述第一分区表是所述第二分区表的镜像,所述第一和/或第二分区表规定了数据存储驱动器中一个或多个分区的位置和大小,所述数据驱动器是数据存储设备的所述一个或多个数据存储器中的一个;及
第二,生成一第一数据库信息块和一第二数据库信息块,所述第一数据库信息块是所述第二数据库信息块的镜像,所述第一或第二数据库信息块用于识别及连接一个或多个分区,所述第一和/或第二数据库信息块存储于所述一个或多个数据存储驱动器的每个所述分区内。
优选地,所述方法进一步包括识别所述一个或多个分区内至少一个或多个程序块及窗格;及
连接所述一个或多个程序块及窗格以形成所述数据库。
优选地,所述存储驱动器包括硬盘驱动器。
根据本发明的另一个特征,提供了一种利用一个或多个数据存储驱动器调整数据库分区大小的方法,包括:首先,生成一第一数据库信息块和一第二数据库信息块,所述第一和第二数据库信息块位于每个分区的起始端,所述第一和第二数据库信息块用于识别所述分区。
优选地,所述方法进一步包括:其次,在所述每一个第一和第二数据库信息块内生成一用于存储第一值的第一字段;及
在所述第一和第二数据库信息块内利用所述第一值反向测量所述分区大小调整的变化量。
优选地,所述方法进一步包括:
第三,在每一个所述第一和第二数据库信息块内生成一用于存储第二值的第二字段;
在所述第一和第二数据库信息块内利用所述第二值正向测量所述分区大小调整的变化量。
优选地,所述方法进一步包括:
第四,生成一用于存储第三值的第三字段,所述第三值指示所述分区调整前的大小;及
第五,生成一用于存储第四值的第四字段,所述第四值指示完成调整后所述分区的大小。
优选地,该方法进一步包括在每一个所述第一和第二数据库信息块内生成存储第一指示符的第一字段;及
利用位于所述第一和第二数据库信息块内的第一指示符前向测量所示调整大小的测量所述分区大小调整的变化量。
优选地,所述方法进一步包括:
第三,生成一能够存储第二指示符的第二字段,所述第二指示符指示所述分区被调整大小之前的大小;及
第四,产生一能够存储第三指示符的第三字段,所述第三指示符指示所述分区被调整大小之后的大小。
根据本发明的一个特征,提供了一种利用数据存储系统实现数据库的方法,所述数据存储系统包括至少一个数据存储驱动器。所述方法包括为每一个所述存储驱动器建立一第一分区表和一第二分区表,所述第一分区表和第二分区表彼此为镜像;
优选地,所述第一和第二分区表中的至少一个分区表为所述数据库的下一分区提供位置;
优选地,如果所述第一或第二分区表中的一个是激活的,在或者所述第一或者所述第二分区表的未激活的分区表上执行所述分区表的更新。
根据本发明的一个特征的,提供了一种包括至少一个在数据存储驱动器的数据存储设备内实现数据库的方法,所述方法包括:
利用所述一个或多个数据存储驱动器分配存储容量;
利用所述一个或多个数据存储驱动器对所述数据库进行数据分段;
利用所述一个或多个数据存储驱动器对所述数据库进行数据镜像;
优选地,所述数据存储驱动器包括硬盘驱动器。
根据本发明的一个特征,提供了一种利用至少一个数据存储驱动器为数据库增加分区的方法,其包括:
第一,建立一第一数据库信息块和一第二数据库信息块,所述第一和第二数据库信息块位于每个分区的起始端,用于识别所述分区;
第二,在每个所述第一和第二数据库信息块内生成一存储第一值的第一字段;
第三,一第二字段用于存储第二值,所述第二值指示所述分区增加前的大小;
第四,生成一存储第三值的第三字段,所述第三值指示所述分区增加后的大小。
根据本发明的一个特征,提供了一种利用一个或多个数据存储驱动器而实现数据库的系统,其包括:
一存储器;
一固化在所述存储器内的软件;及
一执行所述软件的处理器,通过执行所述软件建立一第一分区表和一第二分区表,所述第一分区表是所述第二分区表的镜像,所述第一和/或第二分区表提供所述至少一个数据存储器的至少一个分区的位置和大小信息。
优选地,所述执行能够生成一第一数据库信息块及一第二数据库信息块,所述第一和第二数据库信息块位于所述一个或多个分区的每个分区的起始端,所述第二和第二数据库信息块用于识别所述一个或多个数据存储驱动器的一个或多个分区。
所述一个或多个数据存储驱动器包括硬盘驱动器。
从下述的描述及附图中,本发明的这些及其它优点、特征及新颖性同具体实施例的描述会被充分地理解。
附图说明
图1是本发明一实施例中使用网络附加存储设备(NAS)的典型系统结构图;
图2是本发明一实施例的网络附加存储设备的结构方框图;
图3是本发明一实施例的NAS芯片(NASoC)的结构方框图;
图4是本发明一实施例的网络存储附加设备内至少一个硬盘驱动器的数据库分配及管理流程图;
图5是本发明一实施例的有效容量均为13.5GB的名为“Surya”和“Manasi”的两磁盘驱动器的示意图;
图6是本发明一实施例的建立共享区的浏览器如Netscape截屏图;
图7是本发明一实施例的创建或删除与至少一个数据库相关联的至少一个共享区的浏览器截屏图;
图8是本发明一实施例的使用本发明的文件存储机制的磁盘或数据存储驱动器的结构框图;
图9是本发明一实施例的磁盘或数据存储驱动器的一分区的结构框图;
图10是本发明一实施例的一磁盘头文件的结构框图;
图11是本发明一实施例的数据库信息块的结构框图;
图12是本发明一实施例的允许网络存储设备利用至少一个数据存储驱动器实现至少一个数据库的启动程序流程图;
图13是本发明一实施例的数据存储设备中一数据存储驱动器的分区大小调整操作流程图。
具体实施方式
本发明的特征至少提出一种数据存储驱动器容量分配和管理方法和系统。本发明的各种特征允许对已有一个或多个数据存储驱动器的系统增加一个或多个数据存储驱动器。在增加了一个或多个数据存储驱动器后,该系统被配置成可以满足一个或多个用户的数据存储需要。增加数据存储驱动器后,所有的数据存储驱动器可被集中地分析并重新进行配置,以符合用户的要求。本发明的一个代表性的实施例中,所有数据存储驱动器中的任何未使用或者未分配的空间将被划分成一个或多个数据库,以使任何数据存储驱动器内的任何时候可获得的存储空间都将得到利用。
所述数据存储设备包括一个或多个数据存储驱动器,如硬盘驱动器,或者其他类型的驱动器。所述数据存储设备可以是几种不同类型的数据存储驱动器的结合。数据存储驱动器包括任何类型的能存储数据的介质。下文中所称的“硬盘驱动器”可选地指数据存储驱动器或任何其他驱动器或者包括有数据存储介质的元件。在一个代表性的实施例中,一个或多个数据存储驱动器或硬盘驱动器结合构成一个数据存储设备。所述数据存储设备包括一个或多个数据存储驱动器或硬盘驱动器。在本发明的一个代表性的实施例中,所述数据存储设备进一步结合了一个或多个附加数据存储驱动器或硬盘驱动器。
而且,本发明的特征提供了一种由一个或多个硬盘驱动器提供的数据存储空间的自动建库、镜像及分段的方法及系统。另外,执行独立冗余磁盘阵列(Redundant Access Independent Disk,简称RAID)功能时,本发明允许使用不同大小及速度的驱动器。
本发明的各种特征允许利用一个或多个硬盘驱动器的部分空间构成至少一个数据库。所述数据库可被视为逻辑驱动器。所述一个或多个硬盘驱动器中未被分配的存储空间可以被重分及一个或多个分区接下来被记分地链接以形成数据库。所述一个或多个分区可利用所述一个或多个硬盘驱动器进行镜像或分割。多个硬盘驱动器的分区可被用于创建数据库。例如,用第一硬盘驱动器的一个分区及第二硬盘驱动器的一个分区相结合而形成一个数据库。在本发明的一个代表性的实施例中,可集合所有的硬盘驱动器以增加存储容量和/或提供镜像或数据分割空间。在一个代表性的实施例中,被组合或被连接的多个硬盘驱动器可物理地包含于一个单独的数据存储设备中。所述数据存储设备还可以被接入本地局域网,例如,为任何数量的数据处理或计算设备提供存储设备。所述数据处理或计算装置可以包括一台或多台电子计算机。本发明的另一个特征提供了由一个或多个用户对存储设备内的一个或多个数据库的共享访问。以下所说的数据存储设备均可以称为网络附加存储设备(NAS)。一个数据库可通过创建一个或多个共享区被一个或多个用户访问。在一个代表性的实施例中,一个数据库可以包括一个或多个共享区。每个共享区占用所述数据库的一个分区。
图1是本发明一实施例中使用网络存储设备100的典型系统结构图。所述网络存储设备100为一个或多个数据存储装置提供数据存储。如图1所示,一开关装置连接所述网络存储设备100及一个或多个数据处理装置。所述开关装置可提供无线或有线连接,例如,一无线路由器利用以下无线或有线数据通讯协议中的任何一种:10/100以太网协议、千兆位以太网协议、802.11x协议、蓝牙协议等。所述一个或多个数据存储设备包括数码摄像机、数码相机、MP3播放器、PDA、一个或多个个人录影机。如图1所示,所述个人录影机可配置一硬盘驱动器,也可以没有硬盘驱动器。在一代表性的实施例中,所述个人录影机可以是具有个人录影机功能的机顶盒(set-top-box),下文所提到的个人录影机亦包括具有录影机功能的机顶盒。如图1所示,所述个人摄影机连接能显示多媒体内容的电视机或显示器。所述网络存储设备100的使用为一个或多个个人录影机接收的多媒体内容提供一集中存储设备,任何不带存储设备如硬盘驱动器的个人录影机可将其收到的数据存储至网络存储设备100。而且,包括个人录影机在内的数据处理装置存储的任何数据均可以方便地被其他任何数据处理装置访问和浏览。例如,不带硬盘的个人录影机可以访问由带硬盘的录影机存储在网络存储设备100内的多媒体内容,反之亦然。因而所述网络存储设备100进一步实现了所述一个或多个数据处理装置间的数据共享。因所述网络存储设备提供远程存储机制,其可被所述一个或多个数据处理装置视为“虚拟存储设备”。所述网络存储设备100的这种配置使其很容易扩充存储容量,例如所述网络存储设备100可以接入一个或多个额外的硬盘驱动器。网络存储设备100可以设计得更容易接入额外的数据存储驱动器如硬盘驱动器。可以用相匹配的电缆和/或连接器来连接附加的硬盘驱动器和网络存储设备100。因此网络存储设备100提出了一种符合未来数据存储的增长趋势的易调整大小及灵活的数据存储机制。此外,网络存储设备100还可实现数据镜像和数据分割读写。
图2是本发明一实施例中网络存储设备200的结构方框图。所述网络存储设备200包括印刷电路板(NAS PCB)202,包括一个或多个元件。所述一个或多个元件通过所述印刷电路板(PCB)202相互电连接。所述一个或多个元件包括:网络存储设备芯片(NASoC)204、随机存储器208、闪速存储器212、交流电源接口216、电源220、接口模块224、无线收发器/天线模块228、一个或多个硬盘驱动器232及控制器236。所述接口模块224可能包括下列的一个或多个接口:IEEE1394、USB、10/100以太网、千兆位以太网、PCI、SATA、ATA、IDE、SCSI、GPIO等等。所述无线收发器/天模块228可以是附加模块或者是迷你PCI卡,可与NAS的印刷电路板202连接,也可以装配于所述印刷电路板202上。所述一个或多个硬盘驱动器232依赖于NAS 200的设计而包括任何数量的硬盘驱动器。所述印刷电路板202可设计为能够接纳适当数量的硬盘驱动器。需要用到的硬盘驱动器的数量取决于NAS 200提供的镜像或数据分段(即RAID)的类型。本发明还提出了分配一个或多个硬盘驱动器的一个或多个部分形成数据库的方法。例如,为了产生一个数据库,某一硬盘驱动器上的一部分与另一个硬盘驱动器上的一部分相链接。本发明的进一步的特征通过给NAS增加额外的硬盘驱动器来扩充存储量。本发明的另一个特征包括使用一个或多个不同大小或速度的一个或多个数据存储驱动器以实现一个或多个数据库的数据镜像和数据分段(即各种RAID层功能的执行)。在一个实施例中,控制器236为连接到NASoC 204的任何一个设备(如硬盘驱动器)提供控制,所述控制器可以是IDE控制器或者SATA控制器。所述NASoC 204可以是含有一个处理器或者一个中央处理单元(CPU)204的集成电路芯片。
图3是根据本发明的一实施例的NAS芯片(NASoC)300的结构方框图。所述NASoC 300是一安装于前述的NAS PCB上的集成电路。该NASoC 300提供了一个或多个允许NAS正确运行的功能。所述NASoC 300包括:中央处理单元(CPU)304,片上随机存取存储器308、以太网/MAC控制器312、加密加速器316、安全/验证、密钥交换、数据权利管理(DRM)电路320及一组接口324,328,332,336,340。所述接口324,328,332,336,340包括如下的类型的接口,例如:USB设备接口324、PCI主机接口332、GPIO/LCD/闪存介质接口328、ATA接口336、USB主机接口340。所述NAS芯片300可与图2所述的一个或多个部件相通信和/或连接。
如图2所示,NAS可与不同数量的硬盘驱动器相连接,其取决于其数据存储量及RAID(数据镜像和/或数据分割)的要求。所述NAS 200的底座可根据使用的类型配置1、2、4个或更多的硬盘驱动器。例如,所述NAS可以利用四个硬盘驱动器来实现RAID 1+0(同时数据镜像及数据分割),适合用于小型办公室或商业环境中。本发明的特征提供了在执行RAID功能时,可以使用不同容量、类型或速度的硬盘驱动器。在家庭用户环境里,所述NAS可仅使用一个或两个硬盘驱动器,因为需要的存储容量通常要小于办公室或商业环境的需求。同样地,NAS所采用的存储器部件也会因使用类型的不同而不同。由于数据存储需求增加了,相应的数据存储频率也增大了,需要通过增加NAS的存储容量提高NAS的性能,以满足操作的需求。例如,可增加闪存或DRAM的容量而改善NAS的性能,底座的大小、电源电路及其它部件都需要进行相应的调整。
在一个实施例中,当NAS启动或上电时,NASoC(204或300)内的处理器240执行固化在随机存储器208或闪存212里的软件或固件。所述软件或固件的执行会产生一个或多个用户界面,以使用户利用一个或多个硬盘驱动器内的部分空间构建一个或多个数据库。所述用户界面可进一步结合一个或多个数据库配置一个或多个RAID层。
在一个实施例中,所述软件的执行可使用户工作站(如客户端工作站)中的http服务器显示预先设置的用户界面。在一个实施例中,处理器204所执行的软件包括有操作系统(如微软的Windows操作系统)能够识别的配置文件,因而可以通过Windows浏览器程序执行及浏览。在用户完成对NAS的初始化过程之前,所述设置文档是可访问的。初始化过程中会产生一个或多个用于后续过程中访问所述配置程序的验证密码。所述微软Windows操作系统包括WindowsXP、2000、ME、98、Pocket PC等。点击Windows浏览器显示出来的所述配置问文件的文件名执行所述配置文件时,用户的数据处理设备中会显示一用户界面。然后用户可以提供一个或多个输入来初始化或配置NAS。所述输入包括以下内容:NAS名称、管理员名称、管理员密码、一个或多个交替安全执行器、时间、时区、网络时间服务器、因特网协议地址、数据库名称、RAID指示符、数据库共享区名称以及共享区访问口令。数据库名称、RAID指示符、数据库共享区名称和共享区访问口令是用于NAS内硬盘驱动器管理的主要参数。在一个实施例中,前述的磁盘驱动器管理参数存储于NAS的闪存内,如图2所示。所述闪存可以是非易失性随机存取存储器(NVRAM)。
图4是根据本发明的一个实施例的网络存储设备内的一个或多个硬盘驱动器的数据库分配及管理流程图。在404步骤中,用户访问相应的磁盘管理用户界面。在一个实施例中,需要用户将一个授权密码输入用户介面后,产生该磁盘管理用户界面。在一个代表性的实施例中,为了产生包括所述磁盘管理用户界面在内的一个或多个用户界面,需要执行一个配置文件。图5所示为浏览器的截屏图,如Windows浏览器或Netscape,其提供了一个允许用户输入一个或多个磁盘库参数的示例性的磁盘管理界面。在步骤408中,用户确定要被创建的数据库的数量及类型。如图5所示,用户可输入新的数据库名称,对一个或多个磁盘驱动器提供的磁盘空间进行分配。图5中显示了两个磁盘驱动器,分别命名为Surya和Manasi,均具有13.5Gb的可用容量。该用户界面中提供了用于调整磁盘空间分配大小的字段,其还允许用户选择是否需要对数据库进行镜像或分割。在步骤412中,用户需要确定所述一个或多个驱动器中用于组成数据库的空间的分配。在步骤416,用户需要为创建的数据库指定RAID层。在一个代表性的实施例中,可以通过用户界面指定以下RAID层:RAID0、RAID1、和RAID0+1。在420步骤中,为之前产生的一个或多个数据库创建一个或多个共享。图6是根据本发明的一个实施例所提供的一个浏览器的截屏图,如Netscape浏览器,其有助于为存储于数据库内的共享数据的共享的建立或共享目录。一个数据库可含有一个或多个共享区。在一个代表性的实施例中,一个共享区内还可以包括一个或多个数据文件的子目录。共享区允许一个或多个用户访问数据库内的存储空间。当管理员分配给用户一个密码时,该用户就获得共享访问权限。如图6所示,管理员可使用所述图形用户界面给共享区设置密码。如果在一个数据库里有超过一个共享区时,每个共享区所占用的磁盘空间相对于由该数据库所提供的总空间被累加地应用。在一个代表性的实施例中,共享区或其共享目录将占据数据库的一部分空间,一个或多个共享区所占据的空间不重叠。图7是根据本发明的一个实施例所提供的浏览器截屏图,其显示了一个或多个共享区及其对应的一个或多个数据库,其还提供了一个或多个共享区的创建或删除。前述的一个或多个用户界面只是示例,可以预想,其它各种用户界面的实施例可被应用于本发明。
本发明各种特征还提供了一种对一个或多个数据存储驱动的各个部分存储文件的机构。所述机构包括动态地改变一个或多个数据存储驱动器内文件系统的大小和配置的特性,及如在对数据库执行改变过程中发生断电时,恢复数据存储驱动器内丢失的或者暂时无效的数据。所述改变包括修改文件系统的大小和配置。
所述机构的外部界面可以是通用文件系统界面,具有专门用于改变磁盘文件系统大小和配置的功能操作。所述文件系统界面与各种不同操作系统上的标准文件系统界面类似。所述标准文件系统包括Linux、Unix和Windows文件系统。在一个代表性的实施例中,所述文件系统可以是含有文件的树形目录。所述文件系统进一步为每个文件或目录设置元数据。所述元数据包括文件或目录名、最近一次访问时间、所有者、读写权限。所述文件系统界面提供了创建、删除、读取和写入一个或多个目录操作。此外,所述文件系统允许读取和修改文件和元数据。所述文件存储机制在两个主要部分执行——称为底层数据部分,及文件系统数据部分。这两个数据部分通过一个简单的界面进行数据交流,所述界面提供访问以数据字节的平面阵列形式出现的文件系统数据部分。所述平面阵列被称为中层数据阵列。在一个代表性的实施例中,所述文件系统部分包括一个传统的文件系统。文件系统数据部分可以使用任何一个标准文档系统,如Reiser FS、JFS、ext3fs或者NTFS。运行在普通磁盘或磁盘分区内的上述文件系统和中层数据阵列,在使用时不发生改变或几乎不发生改变。
所述文件存储机制的整个部分都可以是底层数据部分。所述底层数据部分可以访问用于存储数据的一个或多个原始磁盘。每个原始磁盘可以是一个数据存储驱动器,完全由文件存储机制的底层数据部分使用。在一个代表性的实施例中,只有文件存储机制的底层数据部分才可以读写所述一个或多个原始磁盘。所述一个或多个原始磁盘或数据存储驱动器中的每一个都可用于向一个或多个数据库提供存储空间,因而不存在仅被单独一个数据库使用的磁盘。几个数据库可以通过文件存储机制的底层数据部分来共用一个磁盘。
所述的底层数据部分的特点在于其具有两种状态类型。第一种状态是暂时状态,存在于任何介质中,包括易失性存储器如DRAM。然而,所述暂时状态可能不会出现在原始磁盘或数据存储驱动器中,在一个代表性的实施例中,所述一个或多个原始磁盘会出现一个或多个稳定数据状态。当使用磁盘池机制的数据处理或数据计算装置重启时,暂时状态将被破坏。这种情况只会在有重大错误时发生,如数据处理或数据计算装置关机或者断电。底层数据部分使用的稳定数据状态的稳定数据可进一步分为两类:原始数据块和元数据块。元数据说明了原始数据如何链接在一起构成中层数据阵列。每个原始数据块应与中层数据阵列的毗邻部分准确匹配。在一个代表性的实施例中,原始数据块中有一个尚未定义的数值,其可作为“待用”块使用,可用于形成镜像数据库。所述元数据描述分散在原始磁盘中的原始数据块是如何构成中层数据阵列。所述元数据可以包括镜像信息及分割信息。
当一个或多个磁盘不可用时,最好有至少一些元数据是有效的。如果建立数据库以使用镜像,其通常被建立以使若任何一个磁盘无效时,每个中层数据阵列的至少一份备份存储在余下的一个或多个磁盘中。例如,一个或多个磁盘丢失时,通过镜像,底层部分的结构更有利于整个中层数据阵列的有效性。在一个代表性的实施例中,丢失磁盘表示并非所有的中层数据阵列数据有效,在这种情况下,底层部分将提供足够的诊断信息来发出可能的出错信息。
元数据作为磁盘的原始数据块散布于该磁盘中。元数据的分布信息方式的描述对于当一个或多个磁盘丢失时使信息可获得及使系统在操作过程中发生断电时更稳固及而言是非常重要的。例如,上述操作将改变磁盘中原始数据的大小和/或配置,或者对元数据执行其它改变,如修改了数据库的文件名。
本发明的各种特征参考文件存储机制里的一个或多个数据存储驱动器使用元数据定位技术。例如,如果元数据都只是在每个磁盘或者数据存储驱动器进行简单的备份,发生磁盘丢失的情况时就不会产生问题。然而,如果其中一个磁盘被更新过而其它磁盘还未被更新,那么发生断电时就会出现问题。如果所有元数据都在一个磁盘或一个数据存储驱动器上,断电所带来的问题将比较容易解决。可是,如果含有元数据的磁盘丢失,文件存储机制将无法运行。
图8是本发明一实施例中使用本发明的文件存储机制的磁盘或数据存储驱动器的结构框图。磁盘的起始点是一个大小固定的块,被称为磁盘头文件804。图8中,块808、812、816、820、824表示一个或多个分区形式的额外存储容量,第n个分区824表示最后一个分区824。如图8所示,每个磁盘或者数据存储驱动器的起始端都为某些元数据预留一个有固定大小的块804,被称为磁盘头文件804。磁盘的剩下的部分被划分为多个相邻的、不重叠的区域称为分区808、812、816、820,磁盘头文件804描述了各分区的起始点和大小。在给出的磁盘中可能还会有一些空间未分配给磁盘头文件804或分区808、812、816、820、824;这些空间可用于创建新的分区(创建新数据库或扩展现有数据库时),或者扩展现有的分区(扩展现有的数据库时)。分区的配置一般由一个或多个分区表来确定,许多分区表格式在不同系统中使用,如Linux、Windows和DOS系统。不同于现有系统的是,本发明还可实现磁盘池机制底层部分使用的分区表的格式化。与现有系统相比,本发明文件存储机制中使用的一个或多个分区表位于磁盘或数据存储驱动器起始端的一个固定大小的块中。本发明还可在数据存储驱动器的磁盘头文件中使用双重分区表。所述分区表互为镜像,用于冗余。当执行一个或多个操作时,所述双重分区表用于保护存储在一个或多个数据存储驱动器中的数据的完整性。所述一个或多个操作可以是更新与数据库和磁盘名称有关的信息。所述磁盘头文件可以包含与文件存储机制底层部分有关的元数据信息。
图9是本发明一实施例中磁盘或数据存储驱动器的一个分区的结构框图。根据该实施例,每个分区包含三个元件904、908、912。头两个元件分别为第一和第二数据库信息块(PBIs)904、908,每个数据库信息块包括512个字节。第个这些数据库信息块904、908均包括有数据库元数据。第三个亦即最后一个部件为分区有效载荷912,包括原始数据和附加元数据。分区有效载荷912的大小可以是任何数量的字节(或者块),由磁盘头文件的分区表中所定义。所述分区表也可以定义分区内的一个或多个块,每个块包含512个字节。在本发明的其它实施例中,前述的数据库信息块和分区有效载荷块还可以使用的不用的字节数量。
图10是本发明实施例中一磁盘头文件的结构框图。所述磁盘头文件包括2560个字节,可由以下字段组成:
第一字段:从偏移的0字节开始,被使用的“魔术”头文件字段1004占用34个字节。根据本发明的各种特征,所述字段1004包含特殊数据,将相应的磁盘标识为磁盘库机制底层部分使用的数据库系统的一部分。不含有所述的34字节特殊数据的磁盘不会被视为本发明提出的文件存储机制中数据库系统的一部分。
第二字段:从偏移的第34字节开始,NAS标识符字段1008被使用,6个字节被用于这个字段1008。该6个字节唯一的标识格式化所述磁盘并产生磁盘头文件的装置,在一具体实施例中,所述6字节标识符表示一网络存储设备。
第三字段:从偏移的第40字节开始,41个字节磁盘名称字段1012被使用。所述41字节磁盘名称字段1012可以存储用户可读的ASCII或Unicode字符串,作为磁盘的识别名称。在一具体实施例中,所述字段1012可以以0结束,第一0字节后的每个字节也均为0,因而最后一个字节必然总是0。
第四字段:从偏移的第81字节开始,用3个字节的零位填充符被用于零位填充符字段1016。
第五字段:从偏移的第84字节开始,16个字节标识符通过磁盘标识符字段1020被用于标识所述磁盘。所述16字节标识符在创建磁盘头文件时随机或者半随机产生。
第六字段:从偏移的100字节开始,用于标志字段1024的一个字节的标志位被用于指示磁盘头文件内两个分区表中哪一个处于激活状态。例如,数值“0”可以表示第一分区表处于激活状态,任何其它数值则表示第二分区表处于激活状态。
第七字段:从偏移的第101字节开始,未411个未使用字节被用于字节字段1028。
第八字段:从偏移的第512字节开始,第一分区表被存储于第一分区字段1032,该第一分区字段1032包括1024个字节。
第九字段:从偏移的第1536字节开始,第二分区表被存储于第二分区字段1036,其也包括1024个字节。
所述磁盘头文件的第二、第三和第五字段(如NAS标识符、磁盘名称和磁盘唯一标识符)用于定义一独特的磁盘,避免任何两个不同磁盘之间的混淆。
在一个代表性的实施例中,在任何假定的情况下,所述两个分区表中仅有一个分区表通过使用一字节标志字段1024内的标志位被激活。当分区表改变时,所有新信息均写入未被激活的分区表中。进行更新时,一个或多个数据存储驱动器内的所有未激活的分区表均被更新。因为激活的区分表未被修改,当一写操作因断电而中断时,不会出现不一致的状态。在本发明的一个代表性的实施例中,每个分区表包括1024字节,并被分为每16个字节的64个入口。所述分区表的64个入口中的每一个都指定磁盘中的一个分区。当一个存储单元中的16个字节全部为0时,所述存储单元视为空存储单元。若该存储单元并非空单元,则该单元的前8个字节指定起始块编号,余下的8个字节指定所述分区的数据块的大小。所述起始块编号和所述大小依据512字节数据块结构进行表述。所述起始块编号与磁盘的起始端有关,并指向分区的有效载荷。所述大小可指定该分区的分区有效载荷的大小。在这个代表性的实施例中,所述大小不包括每个分区的有效载荷前隐含的两个数据库信息块。如果分区表显示起始块为块811,大小为13个数据块,则该分区的第一数据库信息块为块809,第二数据库信息块为块810,分区的有效载荷为块811至块823。因为磁盘头文件占用了第一个8个块,因而一个分区表中存储单元的起始块号码的最低有效值是10。
每个分区对应两个数据库信息块,用于确定一个或多个数据库。每个分区有两个数据库信息块以使当一个数据库信息块被修改时,可以访问另一个。所述两个数据库信息块(PIB)可以分别对应数据库信息块A和数据库信息块B。更新所述数据库信息块的过程包括以下方法。当改变数据库内所有分区的所有数据库信息块A时,数据库信息块B均不发生改变,以使当数据库信息块A变化时数据库信息块B将总是处于稳定状态。相似地,当更新数据库信息块B时,所有的数据库信息块A均不发生改变,以使若数据库信息块B不稳定时数据库信息块A总是处于稳定状态。前述磁盘头文件字段的偏移量、字节长度和字段大小都不相同,及根据本发明的各种特征,其它实施可被采用。
图11是根据本发明的一个实施例的数据库信息块结构的关系框图。在一个代表性的实施例中,每个数据库信息块包括512个字节,及可包含以下示例性的字段:
第一字段:从偏移的0字节开始,81个字节被用于数据库名称字段1104,。在一个代表性的实施例中,数据库名称字段1104由用户可读的SACII或者Unicode字符串组成,用于表示与该数据库信息块对应的数据库的名称。所述数据库名称字段可以以0字节结束,第一0字节后的每个字节也均为0,因而在此实施例中字段的最后一个字节必然总是0。
第二字段:从偏移的第81字节开始,零位填充符的3个字节由第一零位填充符字段1108所提供。
第三字段:从偏移的第84字节开始,16个字节被用于定义数据库标识符字段1112内的数据库标识符。所述16个字节可以在数据库创建时随机或半随机产生。
第四字段:从偏移的第100字节开始,6个字节被用于NAS识别字段(ID)1116,以用于识别创建该数据库的网络存储设备。这一特值与图10所示的从第34字节开始的NAS标识符字段1008内的特值相对应。这样,利用唯一的数据库标识符、NAS标识符和创建时戳便可以唯一地标识一个数据库。实质上这三个标识符的组合已不可能再被其他任何数据库所使用。如果两个不同的数据库用相同的数据库标识符、NAS标识符和创建时戳,将对那个形成该一个或多个数据库的分区造成混淆。在同一网络存储设备中创建的任意两个数据库应该有不同的时戳,在两个不同的网络存储设备中创建的任意两个数据库应该有不同的NAS标识符。所述唯一的数据库标识符通过随机产生,从而减少了使用相同的三位标识符组合的可能性。某些情况下,NAS标识符可能与当前正在使用该数据库的网络存储设备的实际NAS标识符不同,这是因为一个或多个数据存储驱动器或磁盘可能已经从网络存储设备中移除并插入了新的。如果一个数据存储驱动器或磁盘第一次被一个网络存储设备使用,而一个数据库随后由另一个网络存储设备创建或产生,那么该数据库信息块的NAS标识符也可能不同于所述数据库使用的数据存储驱动器或磁盘的头文件题内的NAS标识符。由于头文件内的NAS标识符应该与第一次在磁盘内创建该头文件的网络存储设备相对应,因而更新分区表时,头文件的NAS标识符不会发生改变。这样头文件内的NAS标识符可以不同的磁盘或数据存储驱动器相互区别,同样的,数据库信息块MNAS标识符也使得不同得数据库相互区别。
第五字段:从偏移的106字节开始,零位填充符的2个字节被加入第二零位填充符字段1120。
第六字段:从偏移的第108字节开始,在创建时间/日期印戳字段1124中,9个字节用于记录一数据库的创建时间/日期戳。记录的时间和日期结合NAS标识符字段1216可唯一地标识一个具体的数据库并使其区别于其它数据库。所述9个字节中的前4个字节为年度,接着的一个字节是月份(1-12),然后一个字节是小时(0-23),再接下来的一个字节是分(0-59),最后一个字节是秒(0-59)。具体实施例中,所述时间/日期戳依照世界标准时间表示。
第七字段:从偏移的第117字节开始,零位填充符的3个字节被加入一第三零位填充符字段1128。
第八字段:从偏移的第120字节开始,有4个字节用于表示数据库中数据分段或被分段的分区的数量。该4个字节位于分段字段1132中。在一个代表性的实施例中,数值“1”表示未使用数据分段,数值“0”为无效数值。对单独一个分段进行数据分段等同于未分段,必须有至少两个分段的情况下对数据分段才有意义。
第九字段:从偏移的第124字节开始,有4个字节表示数据库中镜像或被镜像的分区的数量。有4个字节位于镜像字段1136。在一个代表性的实施例中,数值“1”表示未使用镜像,而数值“0”表示无效。
第十字段:从偏移的第128字节开始,4个字节表示备用区字段1140中所使用的数据库中的备用区数量。在一个代表性的实施例中,数值“0”表示无备用区可用。
第十一字段:从偏移的第132字节开始,有4个字节表示加入一个分区内的窗格数量。4个字节被用于该窗格字段1144内。窗格包括数据条、镜像以及备用数据单元,用于创建或形成整个数据库。一个数据库的窗格总数包括(NST*(NM*NSP)),其中NST指从第120字节开始的数据条或被分割的窗格的数量,NM指从第124字节开始的镜像或被镜像的窗格的数量,NSP指备用区或备用窗格的数量。在一个代表性的实施例中,一个数据库的所有窗格从零开始逐一编号。例如先给第一个镜像的所有数据条编号,然后给第二个镜像的数据条编号,并依此类推;接着给第一个备用区的所有数据条编号,然后给第二个备用区的数据条编号,并依此类推。
第十二字段:从偏移的第136字节开始,字节片字段1148占用4个字节,表示窗格字段1144中所指的窗格中字节片的数量。通过使用一个或多个字节片,一个窗格可以分布在一个磁盘(或数据存储驱动器)的多个分区内,也可以分布在多个磁盘的多个分区内。所有磁盘内的所有分区中一个或多个字节片根据相应的窗格集合在一起,链接形成一个窗格。所述字节片字段1148指出某个窗格中含有多少字节片。在一具体实施例中,字节片字段的最小值为1。
第十三字段:从偏移的第140字节开始,字节片标识符字段1152占用4个字节,包含一字节片标识符用于表示其代表窗格中的哪一个字节片。在一具体实施例中,窗格中的字节片从零开始逐一编号,所有分区按照该编号顺序链接形成窗格。
第十四字段:从偏移的第144字节开始,RAID字节片字段1156占用4个字节,表示RAID字节片的大小。所述RAID字节片大小是一具体用于链接分区、执行镜像和分割的代码,在已给出的数据库中所有的数据库信RAID字节片大小为同一数值。注意,此处所说的“字节片”不同于前面所述的从第136字节至140字节的“字节片”。
第十五字段:从偏移的第148字节开始,窗格分区明细表字段1160占用108个字节的窗格分区明细表,用于确定使用哪一个分区作为该数据库的下一个窗格。所述分区明细表的108个字节依次是:81个字节为该分区所在的磁盘名称,1个字节为零位填充符,6个字节为NAS标识符,16个字节为包含该指定分区的磁盘的磁盘唯一标识符,4个字节为所指定分区的数量,总共是81+1+6+16+4=108字节。如果与该窗格分区明细表相关的分区正好对应最后一个窗格,所述窗格分区明细表字段指向下一个数据库的第一个窗格,因而所述窗格分区明细表字段记录了分区之间的链接。若数据库中仅存在一个窗格,且分区为该窗格中的唯一一个分区,所述窗格分区明细表字段1160将指回该窗格。
第十六字段:从偏移的第256字节开始,字节片分区明细表字段1164占用108个字节的字节片分区明细表,用于确定哪一个分区是该窗格的下一个字节片。若这个分区是该窗格的最后一个,所述字段指回对应窗格的第一个字节片,因而若该窗格仅由一个分区组成,所述字段将指出该窗格本身。
第十七字段:从偏移的第364字节开始,大小调整标志字段1168占用4个字节,标示数据库当前是否正在进行大小调整操作。在具体实施例中,可用数值“0”表示处于非调整状态,数值“1”表示其处理大小调整状态,其它数值均视为无效。在进行大小调整操作时,所述网络存储设备会存储相应的信息,当大小调整操作中断时,网络存储设备可用该信息自我恢复至大小调整之前的状态,这样网络存储设备内的数据便不会被丢失或破坏。本发明还可以在对应数据库的大小调整操作执行完后在数据库信息块中保留所述标志字段。具体实施例中,大小调整操作过程中不使用用于数据库信息块最后一个字段的有效性标志。
第十八字段:从偏移的第368字节开始,反向变化量字段1172占用8个字节,表示大小调整操作的反向进行程度。调整数据库大小时,每个分区的大小会增加或者缩小(包括因为删除一个分区而缩小至零,或因为增加一个分区从而大小从零开始增加),因而数据需要在窗格内前后移动。为了避免数据被覆盖,数据移动的顺序非常重要。数据的迁移或转换按以下步骤进行:先通过窗格正向移动,再反向复制数据,然后通过窗格反向移动,再正向复制数据。若大小调整操作中断,反向移动的数据可依据所述反向变化量字段恢复到正确的位置。
第十九字段:从偏移的第376字节开始,正向变化量字段1176占用8个字节,用来表示大小调整操作的正向进行程度,与前述反向变化量字段相对应,依据正向变化的字节数测得。
第二十字段:从偏移的第384字节开始,调整前大小字段1180占用8个字节,用于示出执行大小调整操作前分区的大小(以千字节为单位)。需要注意的是,若相应的分区是新增加的,则所述字段为零;
第二十一字段:从偏移的第392字节开始,调整后大小字段占用8个字节,用于示出进行大小调整操作后相应分区的大小(以千字节为单位)。所述字段可以是零,表示该分区正通过大小调整操作被移除。
第二十二字段:从偏移的第400字节开始,第四零位填充符字段1188占用96个字节的零位填充符。
第二十三字段:从偏移的第496字节开始,有效数据库信息字段1192占用16个字节,表示该块为一有效的数据库信息块。在一个代表性的实施例中,该字段1192用一个二进制数值与被视为有效的数据库信息块相匹配。若这个数据库信息块不含有有效的数据库信息块数据,则不会如此解释。例如,如果缺少所述字段1192,文件管理系统将会忽略该数据库信息块。在不同的实施例中,前述数据库信息块字段中的偏移量、字节长度和字段大小都可以进行改变。
图12是根据本发明的一个实施例的允许NAS利用一个或多个数据存储驱动器实现一个或多个数据库的启动程序的操作性流程图。当然,在一个代表性的实施例中,所述一个或多个数据存储驱动器可以是一个或多个硬盘驱动器。如图12所示,所述网络存储设备通过启动程序将所述至少一个数据存储驱动器中的一个或多个分区进行链接或串接,进而构成一个或多个数据库。所述网络存储设备读取所述数据存储驱动器的磁盘头文件以及数据库信息块,以便所述网络存储设备实现一个或多个数据库。在步骤1204中,所述网络存储设备启动,识别并检测其数据存储驱动器。步骤1208中,执行所述网络存储设备内存储器中固化的软件(参考前面关于附图2的描述),对所述数据存储驱动器进行扫描和分析。在所述启动程序中,一个或多个增加的数据存储驱动器将被所述网络存储设备发现并识别。步骤1212中,所述软件通过读取与所述数据存储驱动器相关的磁盘头文件来识别数据存储驱动器内的分区。然后,步骤1216中,所述软件进一步读取所述一个或多个数据存储驱动器内每个分区的数据库信息块。步骤1220中,删除所有被视为无效的数据库信息块。如有必要的话,一个或多个被删除的数据库信息块可以通过利用其对应的(或副本的)数据库信息块来恢复。然后步骤1224中,所述网络存储设备判断是否有分区丢失。例如,若chunk or pane分区明细表显示某个分区无法定位,所述网络存储设备将认定所述分区已丢失,转至步骤1228。步骤1228中,所述网络存储设备将提醒用户安装一个或多个数据存储驱动器,所述数据存储驱动器之前可能已被移除。步骤1236中,用户可通过插入所述一个或多个含有已丢失的分区的数据存储驱动器来校正前述问题。然后步骤1240中,所述一个或多个数据存储驱动器中的一个或多个chunks and panes将根据chunk or pane分区明细表进行排序,然后整理流程结束。如无分区丢失,转至步骤1224,对所述一个或多个数据存储驱动器内的一个或多个chunksand panes进行排序,以构成一个或多个合适的数据库,然后流程结束。
图13是本发明一个实施例中的数据存储设备中数据存储驱动器的分区大小调整操作流程图。所述数据存储设备可以是网络存储设备。在一个代表性的实施例中,大小调整操作还包括给所述网络存储设备增加或删除一数据库。在步骤1304中,用户给所述网络存储设备一个输入,如一个请求,从而启动大小调整操作。所述用户输入可以通过用户界面产生,如对图5的描述所述。用户可以输入“新数据库名称”,指明镜像或分段,并判断增加新数据库后可用的容量。步骤1308中,通过一处理器(参考对图2的描述)的控制执行所述网络存储设备中存储器内固化的软件。所述软件将扫描并分析所述网络存储设备的一个或多个数据存储驱动器提供的一个或多个磁盘头文件信息。步骤1312中,所述软件读取所述一个或多个数据存储驱动器的磁盘头文件并进行分析。磁盘头文件内的两个分区表涉及所述一个或多个数据存储驱动器内的一个或多个分区。步骤1316中,查找并读取每对数据库信息块中的至少一个信息块的大小调整字段。扫描过程中,所述软件可以查找到用于大小调整操作的数据库信息块中的一个或多个字段。如前面对图11的描述所述,扫描程序中将查找大小调整标志字段、反向变化量字段、正向变化量字段、调整前大小字段和调整后大小字段。步骤1320中,根据调整前大小字段和调整后大小字段调整和转换所述数据存储驱动器分区的大小。所述反向变化量字段和正向变化量字段分别用于监控大小调整操作的反向或正向变化过程。步骤1324中,继续转换步骤直至分区达到新的大小。例如,当分区经过删除、增加或调整达到一定的大小时,程序结束。
以上是结合一定的实施例对本发明的描述,对本领域的技术人员来说,对本发明的各种更换和等效替换都未脱离本发明的保护范围。任何根据本发明公开的内容进行的具体环境和材料的修改均为脱离本发明的保护范围。本发明的范围并非仅限于前述已公开的具体实施例,所有落入从属权利要求范保护范围内的具体实施例都属于本发明的内容。
Claims (9)
1、一种利用一个或多个数据存储驱动器实现数据库的方法,其特征在于,该方法包括:
建立一第一分区表和一第二分区表,所述第一分区表是所述第二分区表的镜像,所述第一和/或第二分区表提供了数据存储驱动器中一个或多个分区的位置和大小,所述数据存储驱动器是数据存储设备的所述至少一个数据存储器中的一个;及
其次,生成一第一数据库信息块和一第二数据库信息块,所述第一数据库信息块是所述第二数据库信息块的镜像,所述第一或第二数据库信息块用于识别及链接一个或多个分区,所述第一和/或第二数据库信息块存储于所述至少一个数据存储驱动器的每个所述分区内;其中,所述第一和第二数据库信息块指出了每个所述分区所对应的数据库的标识信息和链接的下一分区的位置信息。
2、如权利要求1所述的方法,其特征在于,该方法进一步包括:识别所述一个或多个分区内至少一个或多个字节片和窗格,并链接所述一个或多个字节片和窗格以形成所述数据库。
3、如权利要求1所述的方法,其特征在于,所述数据存储驱动器包括硬盘驱动器。
4、如权利要求1所述的方法,其特征在于,所述第一区分表和第二区分表建立在数据存储驱动器的磁盘头文件中。
5、如权利要求4所述的方法,其特征在于,所述方法进一步包括:在所述磁盘头文件中设置标志字段指示第一区分表和第二区分表中哪一个处于激活状态。
6、如权利要求1所述的方法,其特征在于,所述第一和第二数据库信息块设置有唯一地标识对应的数据库的字段。
7、如权利要求1所述的方法,其特征在于,所述第一和第二数据库信息块设置有标识出链接的下一分区的位置信息的字段。
8、如权利要求7所述的方法,其特征在于,所述标识出链接的下一分区的位置信息的字段指出所述下一分区的数据存储驱动器名称、数据存储设备标识符、磁盘标识符和分区的数量。
9、如权利要求1所述的方法,其特征在于,所述第一和第二分区表包括多个入口,每个入口指定数据存储驱动器中的一个分区,其中,每个入口指出所述分区的起始块编号和所述分区的大小。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US56284704P | 2004-04-15 | 2004-04-15 | |
US60/562,847 | 2004-04-15 | ||
US60/648,634 | 2005-01-31 | ||
US11/087,136 | 2005-03-22 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1722136A CN1722136A (zh) | 2006-01-18 |
CN100476812C true CN100476812C (zh) | 2009-04-08 |
Family
ID=35912445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100674058A Expired - Fee Related CN100476812C (zh) | 2004-04-15 | 2005-04-14 | 利用至少一个数据存储器实现存储容量分配及管理方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100476812C (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6288596B2 (ja) * | 2014-11-05 | 2018-03-07 | 華為技術有限公司Huawei Technologies Co.,Ltd. | データ処理方法および装置 |
-
2005
- 2005-04-14 CN CNB2005100674058A patent/CN100476812C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1722136A (zh) | 2006-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1586997B1 (en) | Method of data storage capacity allocation and management using one or more data storage drives | |
CN100504854C (zh) | 文件管理方法 | |
CN101479944B (zh) | 基于采样消除重复数据的系统和方法 | |
CN100399327C (zh) | 管理文件系统的逻辑版本的方法和数据存储系统 | |
US6934725B1 (en) | Management of file extent mapping to hasten mirror breaking in file level mirrored backups | |
US8874517B2 (en) | Summarizing file system operations with a file system journal | |
US8015157B2 (en) | File sharing system, file server, and method for managing files | |
US20100299547A1 (en) | Power-saving control apparatus and method | |
US7870332B2 (en) | Retention of functionality and operational configuration for a portable data storage drive | |
US20060106893A1 (en) | Incremental backup operations in storage networks | |
US8234317B1 (en) | Auto-committing files to immutable status based on a change log of file system activity | |
US20110010496A1 (en) | Method for management of data objects | |
US7305530B2 (en) | Copy operations in storage networks | |
CN1489737A (zh) | 虚拟磁带存储系统和方法 | |
CN1867902A (zh) | 仿真存储系统 | |
US8583882B2 (en) | Storage subsystem and its control method | |
CN109144416B (zh) | 查询数据的方法和装置 | |
US20070061540A1 (en) | Data storage system using segmentable virtual volumes | |
CN101939737A (zh) | 可扩展的重复数据删除机构 | |
CN109710455A (zh) | 基于fat32文件系统的删除文件恢复方法及系统 | |
US6629203B1 (en) | Alternating shadow directories in pairs of storage spaces for data storage | |
CN111475102B (zh) | 一种基于蓝光的对象存储系统及其存储方法 | |
US9727588B1 (en) | Applying XAM processes | |
CN100476812C (zh) | 利用至少一个数据存储器实现存储容量分配及管理方法和系统 | |
CN113448946A (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090408 Termination date: 20170414 |
|
CF01 | Termination of patent right due to non-payment of annual fee |