CN101751390B - 物件导向储存装置的磁盘配置方法 - Google Patents
物件导向储存装置的磁盘配置方法 Download PDFInfo
- Publication number
- CN101751390B CN101751390B CN2008101780077A CN200810178007A CN101751390B CN 101751390 B CN101751390 B CN 101751390B CN 2008101780077 A CN2008101780077 A CN 2008101780077A CN 200810178007 A CN200810178007 A CN 200810178007A CN 101751390 B CN101751390 B CN 101751390B
- Authority
- CN
- China
- Prior art keywords
- user
- block
- disk
- concordance list
- attribute
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种物件导向储存装置的磁盘配置方法。初始化一磁盘,并且新增一个根(Root)物件,同时在该磁盘中配置一组区块以分别储存该Root物件的属性、一未使用区块索引表以及一分割区(Partition)物件索引表。当新增一Partition物件时,在该磁盘中配置一组区块以分别储存该Partition物件的属性、一收集(Collection)物件索引表以及一使用者(User)物件索引表,其中该Partition物件根据该Collection物件索引表来索引Collection物件的位置以及根据该User物件索引表来索引一User物件的位置。当新增一Collection物件或一User物件时,在该磁盘中配置二组区块以分别储存对应的数据。
Description
技术领域
本发明涉及一种物件导向储存装置(Object-Based Storage Device,OSD)的磁盘配置(Disk Layout)方法。
背景技术
现行使用的网络储存架构的下有网络磁盘机(Network-attachedStorage,NAS)及储存区域网络(Storage Area Network,SAN),NAS的问题在于元数据(metadata)都放在文档伺服器上,当大量的使用者存取时,会造成伺服器本身的效能低落,因此在SAN所提供了比NAS更多的优点的同时,却又产生了网络安全性上的问题。因此OSD被提出来做为网络储存上效能及安全性的一个解决方案。
OSD为一种在网络储存架构下能够提供自我管理、分享及安全性储存的一种储存方法,其将部份较低阶的功能如空间管理由文档系统移至磁盘装置本身,装置的存取则为标准物件界面。此外,在此OSD架构下,又定义了物件存取的内容及方法,其特殊的架构及规格也必须要有相对应的磁盘输出方法搭配。目前针对OSD架构的实作方式有两类,第一类为利用传统文档系统模拟,如Linux下的第二延伸文档系统(Second Extended FileSystem,Ext2);第二类为相关于OSD的磁盘配置新方法的研究,例如,物件导向文档系统(Object-Based File System,OBFS)及其衍生的物件导向储存装置文档系统(Object-based Storage Device File System,OSDFS),其架构Ext2大致相同,不同的部份只在其设计为可变区块的大小及索引方式,然而其设计有其限制所在。以下针对此二类方法作说明。
该磁盘配置非针对OSD的物件特性而设计。
OSD是以物件为基础并以唯一的识别码(ID)做为识别物件的根据。物件又分成根(Root)、分区(Partition)、收集(Collection)及使用者(User)四种类型,而这四种物件类型又分别有不同的属性配置。因此,为了要针对其特殊规格而设计,必须要有特别的物件描述方式储存在实体装置中。
图1是显示Ext2的磁盘配置的示意图。如图1所示,在一磁盘分割(Partition)中,除了记录文档系统信息的超级区块(Superblock)之外,依照分割区的大小划分多个区块群组(Block Group)。在Superblock中记录了区块的总数量、已经使用及未使用的区块、inode数量...等等。每一区块群组包括一群组信息,其记录对应区块群组的已使用区块、未使用区块、inode以及真正存放数据的数据区块。文档与目录的相关信息皆存放在inode中,其中目录被视为一种特殊形式的文档,可据以建立阶层关系。
图2是显示OBFS的磁盘配置的示意图。参考图2,OSDFS(以OBFS为基础)的整体架构与Ext2大致相同,其将整个磁盘分割成同样大小的大范围的区域(Region),例如,256MB。区域的大小视需要来分配,此外,可以依文档大小需求,再将每一区域划分成全部都是大区块或小区块。每一区域中会有记录已使用或未使用的区块信息,以及真正存放数据的数据区块。每一区域的元数据(Metadata)存放在onode中,其中元数据是用来存放每一个物件的状态,其利用区域识别码(Region ID)及物件识别码来进行索引。
目前大部份的OSD文档系统技术是利用现行传统的文档系统(例如,ext2、ext3...等)来模拟。传统上Linux操作系统的磁盘配置是以内节点(inode)为基础,因为其metadata(如建立时间等)没办法完整的描述一个物件,只能以模拟物件的方式进行,与OSD所欲表达的精神与特性实有不同。此外,一些新的OSD的磁盘配置方法(例如,OBFS或OSDFS)是结合现行的文档系统及OSD的部份特性而设计,并非完全专门针对OSD的规格中的特性而开发,其未提供完整的属性的储存,所以其描述物件的能力也相对不足。
此外,在网络储存架构下的物件可携性问题、硬盘空间使用无弹性且无法充份利用、无法配合现行操作系统架构、无法有效索引物件以及无整体性等问题。因此,现今文档系统的存取方式无法完整有效的将OSD的特性显露出来,此外,尚需通过其它的辅助的方式才能展现物件的附属关系。
发明内容
本发明实施例揭示了一种物件导向储存装置的磁盘配置方法,其适用于一磁盘。该方法包括下列步骤:初始化该磁盘,并且新增一个Root物件。当新增该Root物件时,在该磁盘中第一个可使用的区块开始配置一组区块,其分别储存该Root物件属性(此后物件属性包括规格书上定义的属性(attributes)加上前述的metadata)、一未使用区块索引表以及一Partition物件索引表,其中该Root根据该Partition物件索引表来索引一Partition物件的位置。当新增一Partition物件时,在该磁盘中配置一组区块,其分别储存该Partition物件的属性、一Collection物件索引表以及一User物件索引表,其中该Partition物件根据该Collection物件索引表来索引Collection物件的位置以及根据该User物件索引表来索引一User物件的位置。当新增一Collection物件时,在该磁盘中配置一组区块,其分别储存该Collection物件的属性以及一User物件识别码索引表,其中该Collection物件根据该User物件识别码索引表来索引一User物件识别码。当新增一User物件时,在该磁盘中配置一组区块,其分别储存该User物件的属性以及该User物件的数据。
本发明实施例还揭示了一种物件导向储存装置的磁盘配置方法,其对一磁盘进行磁盘配置,使得该磁盘具有一Root物件、至少一Partition物件以及至少一User物件。该Root物件还提供Root物件属性、一未使用区块索引表以及该Root物件用来索引一Partition物件位置的一Partition物件索引表。该Partition物件还提供Partition物件属性、该Partition物件用来索引一Collection物件位置的一Collection物件索引表以及该Partition物件用来索引一User物件位置的一User物件索引表。该User物件还提供User物件属性以及ser物件数据。
附图说明
图1是显示Ext2的磁盘配置的示意图。
图2是显示OBFS的磁盘配置的示意图。
图3是显示本发明实施例的磁盘配置的示意图。
图4是显示本发明实施例的User物件的数据区块的排列方式的示意图。
图5是显示本发明实施例的物件索引表中的区块组关联的示意图。
图6是显示本发明实施例的Partition物件中的配置示意图。
图7是显示本发明实施例的User物件索引表的内容存取的示意图
图8A~8D是显示本发明实施例的物件导向储存装置的磁盘配置方法的步骤流程图。
图9~14是显示本发明实施例的物件导向储存装置的磁盘配置的流程图。
附图符号说明
SN~下一组区块的起始位置
SP~前一组区块的起始位置
S801..S808~流程步骤
具体实施方式
为了使本发明的目的、特征、及优点能更明显易懂,下文特举较佳实施例,并结合附图图3至图14,做详细的说明。本发明说明书提供不同的实施例来说明本发明不同实施方式的技术特征。其中,实施例中的各元件的配置是为说明之用,并非用以限制本发明。且实施例中的附图标号的部分重复,是为了简化说明,并非意指不同实施例之间的关联性。
本发明实施例揭示了一种物件导向储存装置的磁盘配置方法。
磁盘配置是储存永久数据的基本方式。若传统文档系统要快速、稳定的存取硬盘,并呈现相关内容给终端使用者(end-user),通常使用阶层形式来储存文档系统(例如,Ex2、Ext3、NTFS...等等),这些文档系统都有其特定的磁盘配置方式。然而,以物件形式存在的数据储存方式有其特殊需求,包括特定的物件类别及每一物件类别的属性,必须根据识别码来进行存取。目前仅有OBFS及OSDFS制定出其磁盘配置方式,但是在数据存取上仍被受到限制。
基于OSD规格书的定义,物件的使用数量是没有限制的。本发明支持OSD规格书的定义,且提供非必要性的支持。图3是显示本发明实施例的磁盘配置的示意图。参考图3,本实施例的磁盘配置包含Root物件属性,Partition物件的属性,User物件的属性,以及User物件的数据区。磁盘的使用上不预设任何的分割,而以磁盘能支持的为极限,其中Root物件(即,相等于Ext2的Superblock)包含属性以及可使用区块或已使用Partition的物件索引。此外,本发明可以无限制切割Root物件成为多个Partition物件。除了属性区块外,Partition物件更包含可使用区块、已使用Collection物件索引及User物件索引。另外,Collection物件也记录了其下的User物件识别码(User Object ID)。每一种物件都有索引可供直接存取到物件属性及数据所在的区块。
以下先说明物件导向储存装置(OSD)所要表达的储存概念。
OSD是一个经标准实作后用来储存成为物件的数据的装置,其中每一个物件依照数据的顺序来储存,且并赋予每一物件一识别码,使得存取数据都要通过物件识别码。对外而言,数据是指一个物件,而非区块组成的文档,并且利用一安全机制将物件存放在储存媒体中。物件种类包括Root物件、Partition物件、Collection物件以及User物件。每一物件包括各自的属性,分别说明如下:
Root物件用来描述逻辑单元(Logic Unit)的储存空间以及用来管理Partition物件。Partition物件用来描述给Collection物件及User物件使用的储存空间,以及描述Collection物件及User物件的安全性、空间限制...等原则。Collection物件为用来分类与索引User物件的管理性物件。User物件用来存放使用者数据。
下文将分为数个部分来说明本发明的OSD的磁盘配置。
磁盘配置概念
在建立了磁盘逻辑单元(Logic Unit)之后,请参考图3的实施例说明以本发明进行磁盘配置的储存结构。假设预设存放的基本单位是以一个区块(Block)大小为4K字节,或者使用者可以自订区块大小。但基于属性数据存放的便利性、空间使用上的完整性、以及配合操作系统存储器管理机制,以4K大小的区块最适合。
Root物件即为描述OSD本身,亦即当使用者欲以OSD存放物件,即可将OSD视为唯一的Root物件。Root物件有其属性,因此第一个区块即存放Root物件的属性数据,第一个区块是在位移1024字节之处。如果整个硬盘是给OSD使用,则必须保留磁区给开机管理程序(Boot Loader),而接在属性区块之后的是未使用区块索引表。在未使用区块索引表之后是存放Partition物件索引表。因为Partition物件可以无限制的产生,因此需要可以存放大量Partition物件的表格,表格的配置及使用方式会在之后说明。
Partition物件是一个用来储存Collection物件与User物件的容器(Container)。当建立一个新的Partition物件时,会建立Partition物件的属性区块,接在之后的是已使用的Collection物件索引表及User物件索引表。
基本属性数据
除了规格书定义的属性及metadata之外,本发明仍可自订多个属性以搭配操作系统及磁盘配置的需求。因此,除规格书定义的属性,以下每一物件种类说明可能产生的额外属性,但并非用以限定本发明。
「Root物件可能的额外属性」:其类似Ext2的Superblock的功能,其记录所有区块使用的信息、属性使用的区块数量、与各物件的索引表相关的记录、定位区块的长度(32或64位)、物件识别码的长度(32或64位)、物件识别码的计数器等,或其它所需的属性。
「Partition物件的可能额外属性」:其记录与Collection物件及User物件的索引表相关的记录,包括起始位置及每次配置表格的大小等,或其它所需的属性。
「Collection物件可能的额外属性」:其记录User物件索引表的大小及位置等。因为User物件和Collection物件是多对多的关系,所以必须要相互索引以快速寻找。
「User物件可能的额外属性」:由于User物件负责存放数据,因此若数据量很小,也就是属性加数据小于一个区块(如:4K bytes)大小时,可以将该数据当成属性储存,就是在属性表内会有一个为属性内数据(In-property Data)的字段,数据存放在此字段中。或其它所需的属性。
如果User物件的数据不是以In-property Data的形式存在,则代表该数据是存在于额外的区块中,因此User物件必须要记录使用的区块,在其属性表中有一个属性,其称为区块串列(Block List)。
区块串列由多个连续记录组成,每一个记录存放数据区块的位置及其长度,即先定义1或2个字节记载后面衔接的数据区块所记录的数量,接下来以位置及长度为一组记载数据区块的记录,其中每一记录的格式为记录内容是分区配置(Extent-based)的方式存在,也就是以位置(Location)+连续区块长度(Length),以32位的配置来说,其每一记录的使用空间为位置(32位)+连续区块长度(32位)=8字节。定位用的位置是指第n个区块的位置,而非实际地址,其中实际地址必须利用公式计算而得,该公式表示为n×区块大小(例如,4K、8K、...)。以一个4K的区块为例,当位置(Location)为100时,其实际地址为100×4K。以下说明公式中的变数。
图4是说明User物件区块串列属性的数据区块的排列方式,其中第1个字段为1个字节,用来记录已储存数据区块的数量,因此最多可存放255个不连续区块。
位置(例如,长度为32位):可以使用232个区块,定址到232×4K=17592G字节=16T字节的地址空间。
长度(例如,长度为32位):使用连续区块的数量,单一个连续区块可以使用232×4K=17592G字节=16T字节的硬盘空间。
举例来说,若属性只用一个区块,一个区块大小为4K,假设基本属性的部份占了3K的空间,剩于1K的空间给区块串列使用,则最多可以记录(1024-2)/8=127个不连续的数据空间;或者给属性内数据存放1K的数据。若从未使用区块索引表取得可以存放的空间,但是记录的数量超过该可以存放的空间,表示空间使用将近完毕而造成磁区使用过于分散,故需要进行磁盘重组。
索引及表格的使用
由于索引表在磁盘配置扮演重要的数据定位及寻找的功能,以下将细部说明各种索引表分类及其使用方式。每一种索引表将从其最基本的表格结构说明起,之后会以例子说明其用法。为了因应无限制物件使用的需求,在本发明实施例中设计几种特殊的表格,包括物件索引表、未使用区块索引表以及Collection物件的User物件识别码索引表。
物件索引表
在OSD中是以物件为存取为核心,如何快速寻找及大量储存物件变成此磁盘配置的核心工作,因此必须设计符合需求的物件索引。
Table结构及其连结
物件索引表使用预设一次配置所需数量的区块,其预设数量会记载在Root物件的属性中。假设一组区块包括数个区块不够使用时,亦即超过上限临界值(Upper Threshold),可以再动态分配一组新的未使用的区块,其是根据未使用区块索引表来取得分配。当将多组区块连结使用时,假设有m组区块,如果记录因删除导致降低到第m-1组的下限临界值(LowerThreshold),则将第m组区块释放移除。
区块组之间彼此有连结的关系,假设区块定位使用32位=8字节,每一组区块的第一个区块的前面保留16字节,前8个字节为前一组区块的起始位置(Start location ofprevious set of blocks(SP)),其记录前一组区块的位置,而后8个字节为下一组区块的起始位置(Start location of next set ofblocks(SN)),其记录下一组区块的位置。如果只有一组区块,则SP及SN都表示为NULL。如果有多组区块,则第一组区块的SP表示为NULL,而最后一组区块的SN表示为NULL。如果其中一组区块的数据将近额满,亦即超过临界值(其中该临界值属于Root的额外属性),则必须再增加一组新的区块,如图5所示。
存放于物件索引表的记录
物件索引表可包括属于Root物件的Partition物件索引表(PartitionObject Table)、属于Partition物件的Collection物件索引表(Collection ObjectTable)以及User物件索引表(User Object Table),每一物件索引表内部所存放的每一笔记录代表一个物件索引,而物件索引的格式为物件识别码(Object ID)加上位置(Location),则一物件索引表可以记载的索引数量公式为:
如果物件识别码(包括Partition识别码(Partition ID)、收集识别码(Collection ID)以及使用者识别码(User Object ID))的长度为32位(4字节),区块位置(Block Location)固定为32位时,则一笔记录的长度为Object ID+Location=8字节。因此,1个4K大小的区块如果以8字节做为记录单位,则可储存4096-8-8/8=510个记录。
另外,如果物件识别码的长度为64位(8字节),区块位置(BlockLocation)固定为32位时,则一笔记录的长度为Object ID+Location=12字节。因此,1个4K大小的区块如果以12字节为记录单位,扣除SP及SN各占8字节,则可存放(4096-8-8)/12=340个记录。
由于整个物件索引表是以连结多组区块所形成,以一次一组16个区块来看,共占用16×4K=64K的数据空间。若物件识别码的长度为32位,则可存放(16×4096-8-8)/8=8190个物件索引。若物件识别码的长度为64位,则以单一组区块可存放(16×4096-8-8)/12=5460个物件索引。
未使用区块索引表(Free Block Table)
未使用区块索引表可定义在Root物件中。若要取得空间,必须要跟Root物件中的未使用区块请求适合的大小。未使用区块索引表内部所存放的每一笔记录代表一个连续的未使用的空间,未使用的区块记录如果是多组分散的,则形成一个多笔记录,而每一笔记录的格式也是利用分区配置的方式记录,位置(Location)+区块长度(Length)。
以一次一组8个区块来看,共占用8×4K=32K的数据空间,可记录510×8=4080笔不连续未使用的储存空间。
记录内容会因执行新增、寻找、删除及修改(因释放区块所产生的合并,需要修改大小)等操作而变动。在对磁盘进行格式化时,会忽略损毁的区块,只在未使用区块索引表中记录正常的区块。因此,格式化磁盘时如果没有损坏的区块,则在格式化完成后仅会在未使用区块索引表中产生一笔记录。相对的,格式化磁盘时如果有损坏的区块,则在格式化完成后会在未使用区块索引表中产生对应损坏区块的多笔记录。
Collection物件的User物件识别码索引表
在Collection物件中,除了属性本身之外,也包括储存User物件识别码的记录,所述记录是存放在User物件识别码索引表中。User物件识别码索引表(User Object ID Table)可视为Collection物件的数据,且其记录了User物件识别码。识别码索引表的增加及减少也是利用上述阈值规则。以一次一组4个区块来看,共占用4×4K=16K的数据空间。
若物件识别码的长度为32位,则可存放(4096/4)×4=4096个User物件识别码。若物件识别码的长度为64位,则可存放(4096/8)×4=2048个User物件识别码。
各种物件存取方法的说明
Root物件
一开始先存放Root物件的属性区块,接下来利用一组区块存放整个磁盘逻辑单元的未使用区块索引表,再利用一组区块存放Partition物件索引表,以下说明Partition物件存取的一些操作。
以新增Partition物件为例,从未使用区块索引表取得一笔记录可以有适当数量的区块给Partition物件,其中这些区块包括Partition物件的属性、预设使用区块数量的Collection物件索引表以及预设使用区块数量的User物件索引表,再加入一笔Partition物件索引到Partition物件索引表中,并且修改Root物件的相关属性值。完成Partition物件配置后便可将此记录的位置往后移,移到已使用的区块位置之后。
以移除Partition物件为例,移除Partition物件包括强制性移除与非强制性移除。强制性移除必须将Partition物件里所有的Collection物件与User物件移除,才能移除Partition物件。非强制性移除则与移除一个清空的Partition物件一样,将Partition物件及其以下的Collection物件及User物件使用的区块记录归还未使用区块索引表,然后从Partition物件索引表将该Partition物件的索引移除,并且修改Root物件的相关属性值。
就改变Partition大小来说,只需修改Partition物件的相关属性值。
Partition物件
先存放Partition物件的属性区块,利用一组区块存放Collection物件索引表与User物件索引表。Collection物件索引表为选择性的,如果系统选择不支持使用Collection物件,则不放置Collection物件索引表。有关Partition物件及其内容的存取如图6所示。
改变Partition大小
只须修改Partition物件的相关属性值。
Collection物件存取
Collection物件存取是选择性的,在格式化时决定要不要支持Collection物件,其存取方式包括新增与移除Collection物件。新增Collection物件是从未使用区块索引表取得适当大小的区块,以存放Collection物件属性及User物件识别码索引表(User Object ID Table),之后加入一笔Collection物件索引到Partition物件的Collection物件索引表中,并修改Partition物件的相关属性值。
移除Collection物件是将Collection物件索引从Collection物件索引表中移除,再将Collection物件属性及User物件识别码索引表使用的区块释放回Root物件的未使用区块索引表中,并修改Partition物件的相关属性值。
User物件的存取
User物件的存取包括新增User物件、移除User物件以及改变User物件的数据区块。
新增User物件是先从Root物件的未使用区块索引表取得区块,包括给予属性及数据使用的区块,再加入一笔User物件索引到Partition物件的User物件索引表中,并修改Partition物件的相关属性值。
移除User物件是将User物件属性及数据的区块释放回Root物件的未使用区块索引表中,再从Partition物件的User物件索引表中将User物件索引移除,并修改Partition物件的相关属性值。
User物件的数据区块是将数据使用的区块记录在属性值中,因此当数据大小有改变时会连带牵动属性及未使用区块索引表的记录。
需注意到,Partition物件不是根据Partition物件索引表产生而是程序建立产生。在产生Partition物件之后,会产生一个Partition的ID索引,这个ID索引会放到Partition物件索引表里。
Collection物件(选择性(Optional))
Collection物件为选择性的支持,因此在磁盘格式化过程中可以选择要不要加入此物件。当有支持此物件时,可以新增及删除User物件的ID索引。因为User物件的ID索引是放在Collection物件的User物件识别码索引表中,所以索引表的增减也适用上述阈值规则。
需注意到,Collection物件不是根据Collection物件索引表产生而是程序建立产生。在产生Collection物件之后,会产生一个Collection的ID索引,这个ID索引会放到Collection物件索引表里。
User物件
User物件为真正存放数据的物件类别,如图7所示,当前一组存放物件索引的表格不足时,就会用到一组新的表格。
存取User物件的操作包括新增User物件、删除User物件以及改变物件数据。
新增User物件是先从Root物件的未使用区块索引表中取得适当大小足够的空间,以取得一次性的足够储存空间为主。如果不能从单一笔记录取得的足够的连续空间,则必须使用多笔记录的不连续的空间,计算取得不连续空间的大小到足够写入此物件数据。接着,修改User物件属性,然后加入一笔数据到Partition物件的User物件索引表中。
删除User物件是将ID索引从Partition物件的User物件索引表中移除,并将属性中使用到的区块归还到Root物件的未使用区块索引表。从User物件的属性中可以得知,如果物件属于某些Collection物件,则必须从Partition物件的Collection物件索引表中去找到对映的Collection物件,并0从这些Collection物件的User物件识别码索引表里移除里面的User物件的ID记录。
数据会因存取而造成空间使用上的改变。如果预先配置的储存空间足够,则直接修改User物件的数据长度的属性即可。如果储存空间不足,则必须从Root物件的未使用区块索引表中请求区块来使用。如果因为删除数据而产生多余的区块,则归还到Root物件的未使用区块索引表中。
使用In-property data时,如果是数据缩减,只会修改User物件的数据长度属性内容。如果数据长度增加而不足以存放在属性区块中时,则必须向Root物件的未使用区块索引表中要求分配未使用的区块,并将原有的In-property data数据移至被分配的区块中。是否支持此属性可以由格式化时预设,或者当设定属性时改变。
以上简单说明了本发明实施例的磁盘配置与各物件的功能与使用方式,下文将说明物件导向储存装置的磁盘配置方法的实施流程。
需注意到,User物件不是根据User物件索引表产生而是程序建立产生。在产生User物件之后,会产生一个User的ID索引,这个ID索引会放到User物件索引表里。
图8A是显示本发明实施例的物件导向储存装置的磁盘配置方法的步骤流程图。
首先,在初始执行磁盘配置时,新增一个Root物件(步骤S801),即在一磁盘中配置一组区块,其分别储存Root物件的属性、未使用区块索引表(Free Block Table)以及Root物件用来索引Partition物件的位置的Partition物件索引表(步骤S802),如图9所示。
需注意到,在配置给该Root物件的该组区块中,包括给Partition物件属性使用的一个区块,给未使用区块索引表的一或一个以上的区块,给Partition物件索引表使用的一或一个以上的区块。上述区块是根据Root物件属性值而定,而Root物件的属性是在磁盘初始格式化之后就决定,也就是利用格式化参数或者预设值来决定上述区块。
当新增一个Partition物件时(步骤S803),在该磁盘中另外配置一组区块,其分别储存第1Partition物件的属性、Partition物件用来索引Collection物件位置的Collection物件索引表以及Partition物件用来索引User物件位置的User物件索引表(步骤S804),例如图10所示。此时,Partition物件索引表的内容如图11所示,其中第1分割区在第10个区块位置。
需注意到,在配置给该Partition物件的该组区块中,包括给Partition物件属性使用的一个区块,给Collection物件索引表使用的一个或一个以上的区块,给User物件索引表使用的一个或一个以上的区块。上述区块是根据Root物件属性值而定,而Root物件的属性是在磁盘初始格式化之后就决定,也就是利用格式化参数或者预设值来决定上述区块。
当新增一个Collection物件时(步骤S805),在该磁盘中另外配置一组区块,其分别储存第1Collection物件的属性以及Collection物件用来索引User ID的User物件识别码索引表(步骤S806),如图12所示,其中User物件识别码索引表是用以得知Collection物件包括哪些User物件。
需注意到,Collection物件存取是选择性的。在配置给该Collection物件的该组区块中,包括给Collection物件属性使用的一个区块,区块给User物件识别码索引表使用的一或一个以上的区块。上述区块是根据Root物件属性值而定,而Root物件的属性是在磁盘初始格式化之后就决定,也就是利用格式化参数或者预设值来决定上述区块。
若再新增一个Collection物件,即在该磁盘中另外配置一组区块,其分别储存第2Collection物件的属性以及Collection物件用来索引User ID的User物件识别码索引表,如图13所示,其中User物件识别码索引表是用以得知Collection物件包括哪些User物件。
当新增一个User物件时(步骤S807),在该磁盘中另外配置一组区块,其分别储存User物件的属性以及User物件的数据(Data)(步骤S808),如图14所示。需注意到,在配置给该User物件的该组区块中,包括给User物件属性使用的一个区块,以及给User物件的数据区块使用的零或零个以上的区块。属性区块是固定配置,数据区块则根据应用程序的需要可事先配置(可不必储存数据)或者动态延伸。数据区块的位置记录在User物件属性中。
需注意到,Root物件可以产生不限数量的Partition物件,Partition物件可以产生不限数量的Collection物件及User物件。
以下进一步说明Partition物件、Collection物件与User物件的新增与删除操作流程实施例。
图8B是显示本发明实施例的新增与删除Partition物件的步骤流程图。
首先,判断新增或删除Partition物件(步骤S811)。若欲新增Partition物件,则在一磁盘中的配置一组区块,其分别储存Partition物件的属性、Partition物件用来索引Collection物件位置的Collection物件索引表以及Partition物件用来索引User物件的位置的User物件索引表,并且修改Root物件属性以及修改Root物件的未使用区块索引表(步骤S812)。若欲删除Partition物件,则判断Partition物件是否含有Collection或User物件(步骤S813)。若Partition物件含有Collection或User物件,则删除所有Collection物件及User物件(步骤S814)。若Partition物件未含有Collection或User物件,则修改Root物件属性以及修改Root物件的未使用区块索引表(步骤S815)。
图8C是显示本发明实施例的新增与删除Collection物件的步骤流程图。
首先,判断新增或删除Collection物件(步骤S821)。若欲新增Collection物件,则在一磁盘中的配置一组区块,其分别储存Collection物件的属性以及Collection物件用来索引User物件识别码的User物件识别码索引表,并且修改Partition物件属性及Partition物件的Collection物件索引表,以及修改Root物件属性及Root物件的未使用区块索引表(步骤S822)。若欲删除Collection物件,则删除Collection物件及User识别码索引表(步骤S823),并且修改Partition物件属性及Partition物件的Collection物件索引表,修改Root物件属性,以及修改Root物件的未使用区块索引表(步骤S824)。
图8D是显示本发明实施例的新增与删除User物件的步骤流程图。
首先,判断新增或删除User物件(步骤S831)。若欲新增User物件,则在一磁盘中的配置一组区块,其分别储存User物件的属性、User物件储存数据的空间,并且修改Partition物件属性及Partition物件的User物件索引表,修改Root物件属性,以及修改Root物件的未使用区块索引表(步骤S832)。若欲删除User物件,则判断User物件是否属于Collection物件(步骤S833)。若User物件属于Collection物件,则删除所有Collection物件中含有User物件识别码的索引(步骤S834)。若User物件不属于Collection物件,则修改Partition物件属性与Partition物件的User物件索引表,修改Root物件属性,以及修改Root物件的未使用区块索引表(步骤S835)。
如上所述,藉由本发明实施例的物件导向储存装置的磁盘配置方法,当物件管理装置无法使用或找不到物件时,可以从储存装置中直接存取,而当储存装置无法随着物件管理装置移植时,可以不需要物件管理装置,而可以从储存装置中直接索引与存取数据。
由于索引表是用于存取物件,因此可以利用数据快取的方式来存取藉由本发明的磁盘配置所实作而成的系统。索引表所占的记体空间不大,当读取索引表中的数据时,以一次读取一整组区块到存储器中,并预先扫描并分析这组区块,在扫描时同时记录在索引表中未使用记录的位置。在索引表中产生未使用记录的位置的原因在于索引表在存取记录时,会有删除记录的操作,因而在索引表中产生记录缺口(Record Holes)(即,未使用的记录)。
若发现在快取的索引表中有未使用记录的位置,则先以填入这些记录缺口为优先(即,新增操作),若没有时就附加在索引表中的最后记录之后面。当找到欲删除的记录时,将记录的内容全设为0(表示为NULL),则该记录即被删除。在索引表中寻找记录的速度是影响磁盘配置的关键,可利用循序搜寻(Sequential Search)或其它搜寻方式来实现。
排序的数据可加快记录的寻找,而记录排序的方式是依照各个索引表的功能性,并且根据不同的关键(Key)值来排序。。
以从头开始分配连续的区块为主,如遇到文档变更而需要额外的储存区块,但是无法分配后面的连续区块,则新分配的区块以最接近的区块为原则,并且以不连续空间方式储存。当遇到大型的新文档时,则以分配连续的空间为优先,或者以能取得的最多的连续空间为主。对未使用区块可执行新增、列表及删除操作。
寻找索引表的操作可利用相关的演算法来执行。每一索引表所分配的一组区块数量皆可以参数化方式来订定。可以提供工具将表格最佳化处理,以缩短寻找时间,例如将表格排序,并且以不产生更多不连续空间为原则。
综上所述,本发明的实施例提供:
在硬盘起始规画方面,包括Root物件的metadata,传统文档系统配置称为超级区块(Superblock)、Partition物件索引表以及未使用区块索引表。在连续空间取得方面,由单一的未使用区块索引表取得,其为extent-based。在物件属性存取方面,只要取得物件位置,即可直接存取属性与物件索引表,直接索引分类各物件。在数据存取方面,由属性内取得数据或由区块串列的记录读取。在现有实作的支持方面,实作完成Linux上OSD模拟文档系统的核心层模块。
在物件索引方面,以集中的记录形成的表格,可一次性的读取所有的索引数据形成快取。并辅以搜寻演算法。在物件属性方面,metadata合并物件属性连同数据部份可形成一连续记录。还可自订属性。在物件的阶层关系方面,清楚的阶层式配置。支持所有的物件。在操作系统的支持方面,完全搭配系统缓冲管理的需求做成核心模块(Kernel Module),以文档方式展现或另成一独立存取模式。在硬体整合方面,利用简单的配置设计,可单独设计IC晶片存取物件,以达成OSD所要求的空间管理等功能一并整合至储存装置中。因表格皆可快取,数据直接定位。
本发明的方法,或特定型态或其部份,可以以程序码的型态存在。程序码可以包含于实体媒体,如软盘、光盘片、硬盘、或是任何其他机器可读取(如计算机可读取)储存媒体,其中,当程序码被机器,如计算机载入且执行时,此机器变成用以参与本发明的装置。程序码也可以通过一些传送媒体,如电线或电缆、光纤、或是任何传输型态进行传送,其中,当程序码被机器,如计算机接收、载入且执行时,此机器变成用以参与本发明的装置。当在一般用途处理单元实作时,程序码结合处理单元提供一操作类似于应用特定逻辑电路的独特装置。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,本领域的技术人员在不脱离本发明的精神和范围的前提下可作各种的更动与润饰,因此本发明的保护范围以本发明的权利要求为准。
Claims (46)
1.一种物件导向储存装置的磁盘配置方法,其适用于一磁盘,包括下列步骤:
初始化该磁盘,且新增一根(Root)物件;
当新增该根物件时,在该磁盘中配置一或多组区块,其分别储存该根物件的属性、一未使用区块索引表以及一分割区(Partition)物件索引表,其中该根物件根据该分割区物件索引表来索引一分割区物件的位置;
新增一分割区物件;
当新增该分割区物件时,在该磁盘中配置一或多组区块,其分别储存该分割区物件的属性、一收集(Collection)物件索引表以及一使用者(User)物件索引表,其中该分割区物件根据该收集物件索引表来索引收集物件的位置以及根据该使用者物件索引表来索引一使用者物件的位置;
新增一使用者物件;以及
当新增该使用者物件时,在该磁盘中配置一组或多组区块,其分别储存该使用者物件的属性以及该使用者物件的数据。
2.如权利要求1所述的物件导向储存装置的磁盘配置方法,其还包括新增一收集物件,并且在该磁盘中配置一组或多组区块,其分别储存该收集物件的属性以及一使用者物件识别码索引表,其中该收集物件根据该使用者物件识别码索引表来索引一使用者识别码。
3.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,根据该根物件的该分割区物件索引表取得上述分割区物件。
4.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,根据该分割区物件的该收集物件索引表取得上述收集物件。
5.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,根据该分割区物件的该使用者物件索引表取得上述使用者物件。
6.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,该分割区物件索引表、该收集物件索引表以及该使用者物件索引表为一或多组区块所组成并且用以分别存放分割区物件识别码、收集物件识别码与使用者物件识别码,以及分别存放上述分割区物件、收集物件、与使用者物件的起始位置。
7.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,该未使用区块索引表内所存放的每一笔记录代表一个连续的未使用的空间,而每一笔记录的格式表示为位置加上连续区块长度。
8.如权利要求2所述的物件导向储存装置的磁盘配置方法,其中,该收集物件的该使用者物件识别码索引表可直接索引该使用者物件的识别码。
9.如权利要求8所述的物件导向储存装置的磁盘配置方法,其中,当该使用者物件识别码在该使用者物件写入该磁盘且该使用者物件属于该收集物件时,则将该使用者物件识别码加入该收集物件的该使用者物件识别码索引表。
10.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,该根物件的属性可包括记录该磁盘中的所有区块使用的信息、该属性使用的区块数量、与各物件的索引表相关的记录、一定位区块的长度、一物件识别码的长度以及相关于该物件识别码的计数器。
11.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,该分割区物件的属性可包括记录与该收集物件索引表以及该使用者物件索引表相关的记录,包括起始位置及每次配置表格的大小。
12.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,该收集物件的属性可包括记录该使用者物件索引表的大小及位置。
13.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,该使用者物件的数据可当成属性内数据(In-property Data)来储存。
14.如权利要求13所述的物件导向储存装置的磁盘配置方法,其中,若该数据不是以属性内数据的形式存在,则该使用者物件记录该数据是存在于一额外的区块串列中,其中该区块串列由多个连续记录组成,每一个记录存放数据区块的位置及其长度。
15.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,每一物件索引表使用预设数量的区块,该预设数量记载在根物件的属性中。
16.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,当区块定位使用一定量字节,则每一组区块的第一区块的前面保留两个定量的字节,其中第一个定量字节为前一组区块的起始位置(SP),用以记录前一组区块的位置,而第二个定量字节为下一组区块的起始位置(SN),用以记录下一组区块的位置。
17.如权利要求16所述的物件导向储存装置的磁盘配置方法,其中,当只有一组区块时,则该组区块的前一组区块的起始位置及下一组区块的起始位置都表示为NULL,而当有多组区块,则第一组区块的前一组区块的起始位置表示为NULL,而最后一组区块的下一组区块的起始位置表示为NULL。
19.如权利要求1所述的物件导向储存装置的磁盘配置方法,其中,可对上述每一物件执行新增、移除与改变等操作。
20.如权利要求19所述的物件导向储存装置的磁盘配置方法,其中,新增任一分割区物件,其还包括下列步骤:
在该磁盘中的配置一组区块,其分别储存该分割区物件的属性、该分割区物件用来索引一收集物件位置的一收集物件索引表以及该分割区物件用来索引一使用者物件位置的一使用者物件索引表;以及
修改该根物件属性以及该根物件的该未使用区块索引表。
21.如权利要求20所述的物件导向储存装置的磁盘配置方法,删除任一分割区物件,其还包括下列步骤:
判断该分割区物件是否含有至少一收集物件或一使用者物件;
若该分割区物件含有至少一收集物件或一使用者物件,则删除所有收集物件及使用者物件;以及
若该分割区物件未含有任何收集物件或使用者物件,则修改该根物件属性以及该根物件的该未使用区块索引表。
22.如权利要求21所述的物件导向储存装置的磁盘配置方法,其中,新增任一收集物件,其还包括下列步骤:
在该磁盘中的配置一组区块,其分别储存该收集物件的属性以及该收集物件用来索引一使用者物件识别码的一使用者物件识别码索引表;以及
修改该分割区物件的属性、该分割区物件的收集物件索引表、该根物件属性以及该根物件的该未使用区块索引表。
23.如权利要求22所述的物件导向储存装置的磁盘配置方法,其中,删除任一收集物件,其还包括下列步骤:
删除该收集物件以及该使用者识别码索引表;以及
修改该分割区物件属性、该分割区物件的该收集物件索引表、修改根物件属性以及该根物件的该未使用区块索引表。
24.如权利要求20所述的物件导向储存装置的磁盘配置方法,其中,新增任一使用者物件,其还包括下列步骤:
在该磁盘中的配置一组区块,其分别储存该使用者物件的属性与该使用者物件储存数据的空间;以及
修改该分割区物件属性、该分割区物件的该使用者物件索引表、该根物件属性以及该根物件的该未使用区块索引表。
25.如权利要求24所述的物件导向储存装置的磁盘配置方法,其中,删除任一使用者物件,其还包括下列步骤:
判断该使用者物件是否属于该收集物件;
若该使用者物件属于该收集物件,则删除所有收集物件中含有使用者物件识别码的索引;
若该使用者物件不属于该收集物件,则修改该分割区物件属性与该分割区物件的该使用者物件索引表、该根物件属性以及该根物件的该未使用区块索引表。
26.一种物件导向储存装置的磁盘配置装置,其适用于一磁盘,该装置包括:
初始化该磁盘,并且新增一个根(Root)物件的模块;
当新增该根物件时,在该磁盘中配置第一组区块,其分别储存该根物件的属性、一未使用区块索引表以及一分割区(Partition)物件索引表的模块,其中该根物件根据该分割区物件索引表来索引一分割区物件的位置;
新增一分割区物件;
当新增该分割区物件时,在该磁盘中配置第二组区块,其分别储存该分割区物件的属性、一收集(Collection)物件索引表以及一使用者(User)物件索引表的模块,其中该分割区物件根据该收集物件索引表来索引收集物件的位置以及根据该使用者物件索引表来索引一使用者物件的位置;
新增一使用者物件的模块;以及
当新增该使用者物件时,在该磁盘中配置一组或多组区块,其分别储存该使用者物件的属性以及该使用者物件的数据的模块。
27.如权利要求26所述的物件导向储存装置的磁盘配置装置,其还包括新增一收集物件,并且在该磁盘中配置一组或多组区块,其分别储存该收集物件的属性以及一使用者物件识别码索引表的模块,其中该收集物件根据该使用者物件识别码索引表来索引一使用者识别码。
28.如权利要求26所述的物件导向储存装置的磁盘配置装置,还包括根据该根物件的该分割区物件索引表取得上述分割区物件的模块。
29.如权利要求26所述的物件导向储存装置的磁盘配置装置,还包括根据该分割区物件的该收集物件索引表取得上述收集物件的模块。
30.如权利要求26所述的物件导向储存装置的磁盘配置装置,还包括根据该分割区物件的该使用者物件索引表取得上述使用者物件的模块。
31.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,所述物件索引表为一或多组区块所组成并且用以分别存放分割区物件识别码、收集物件识别码与使用者物件识别码,以及分别存放上述分割区物件、收集物件、与使用者物件的起始位置。
32.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,该未使用区块索引表内所存放的每一笔记录代表一个连续的未使用的空间,而每一笔记录的格式表示为位置加上连续区块长度。
33.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,该收集物件的该使用者物件索引表可直接索引该使用者物件的识别码。
34.如权利要求33所述的物件导向储存装置的磁盘配置装置,还包括当该使用者物件识别码在该使用者物件写入该磁盘且该使用者物件属于该收集物件时,则将该使用者物件识别码加入该收集物件的该使用者物件索引表的模块。
35.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,该根物件的属性记录该磁盘中的所有区块使用的信息、该属性使用的区块数量、与各物件的索引表相关的记录、一定位区块的长度、一物件识别码的长度以及相关于该物件识别码的计数器。
36.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,该分割区物件的属性记录与该收集物件索引表以及该使用者物件索引表相关的记录,包括起始位置及每次配置表格的大小。
37.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,该收集物件的属性记录该使用者物件索引表的大小及位置。
38.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,该使用者物件的数据是当成属性内数据来储存。
39.如权利要求38所述的物件导向储存装置的磁盘配置装置,其中,若该数据不是以属性内数据(In-property Data)的形式存在,则该使用者物件记录该数据是存在于一额外的区块串列中,其中该区块串列由多个连续记录组成,每一个记录存放数据区块的位置及其长度。
40.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,每一物件索引表使用预设数量的区块,该预设数量记载在根物件的属性中。
41.如权利要求26所述的物件导向储存装置的磁盘配置装置,还包括当区块定位使用一定量字节,则每一组区块的第一区块的前面保留两个定量的字节的模块,其中第一个定量字节为前一组区块的起始位置(SP),用以记录前一组区块的位置,而第二个定量字节为下一组区块的起始位置(SN),用以记录下一组区块的位置。
42.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,当只有一组区块时,则该组区块的前一组区块的起始位置及下一组区块的起始位置都表示为NULL,而当有多组区块,则第一组区块的前一组区块的起始位置表示为NULL,而最后一组区块的下一组区块的起始位置表示为NULL。
44.如权利要求26所述的物件导向储存装置的磁盘配置装置,其中,可对上述每一物件执行新增、移除与改变等操作。
45.一种物件导向储存装置的磁盘配置方法,包括下列步骤:
对一磁盘进行磁盘配置,使得该磁盘具有:
一根(Root)物件,其更提供根物件属性、一未使用区块索引表以及该根物件用来索引一分割区(Partition)物件位置的一分割区物件索引表;
至少一分割区物件,其更提供分割区物件属性、该分割区物件用来索引一收集(Collection)物件位置的一收集物件索引表以及该分割区物件用来索引一使用者(User)物件位置的一使用者物件索引表;以及
至少一使用者物件,其中该使用者物件更提供使用者物件属性以及使用者物件数据。
46.如权利要求45所述的物件导向储存装置的磁盘配置方法,其还包括对所述磁盘进行磁盘配置,使得该磁盘还具有至少一收集物件,其中该收集物件更提供收集物件属性以及该收集物件用来索引一使用者识别码的一使用者物件识别码索引表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101780077A CN101751390B (zh) | 2008-12-08 | 2008-12-08 | 物件导向储存装置的磁盘配置方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101780077A CN101751390B (zh) | 2008-12-08 | 2008-12-08 | 物件导向储存装置的磁盘配置方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101751390A CN101751390A (zh) | 2010-06-23 |
CN101751390B true CN101751390B (zh) | 2012-07-04 |
Family
ID=42478382
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101780077A Active CN101751390B (zh) | 2008-12-08 | 2008-12-08 | 物件导向储存装置的磁盘配置方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101751390B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170060234A (ko) * | 2015-11-23 | 2017-06-01 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
US20200278994A1 (en) * | 2017-09-18 | 2020-09-03 | Auguz Limited | System for content archiving and management with code readers |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1267379A (zh) * | 1997-08-15 | 2000-09-20 | 西加特技术有限公司 | 面向对象的数据存储设备的冗余实现 |
CN1506844A (zh) * | 2002-11-19 | 2004-06-23 | �Ҵ���˾ | 使用动态内容表和内容表集的分级存储管理方法和装置 |
-
2008
- 2008-12-08 CN CN2008101780077A patent/CN101751390B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1267379A (zh) * | 1997-08-15 | 2000-09-20 | 西加特技术有限公司 | 面向对象的数据存储设备的冗余实现 |
CN1506844A (zh) * | 2002-11-19 | 2004-06-23 | �Ҵ���˾ | 使用动态内容表和内容表集的分级存储管理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101751390A (zh) | 2010-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104246764B (zh) | 利用非均匀散列函数在非均匀访问存储器中放置记录的方法和装置 | |
CN100426259C (zh) | 一种存储器文件数据虚拟存取方法 | |
CN102184260B (zh) | 一种云计算环境下的海量数据存取方法 | |
CN100578505C (zh) | 文件系统管理装置 | |
CN103544045A (zh) | 一种基于hdfs的虚拟机镜像存储系统及其构建方法 | |
CN101571869B (zh) | 一种智能卡的文件存储、读取方法及装置 | |
CN101488153A (zh) | 嵌入式Linux下大容量闪存文件系统的实现方法 | |
CN101464901B (zh) | 一种对象存储设备中的对象查找方法 | |
CN101315628A (zh) | 内存数据库系统及实现内存数据库的方法和装置 | |
CN101983376B (zh) | 访问装置、信息记录装置、信息记录系统、文件管理方法和程序 | |
CN102915278A (zh) | 重复数据删除方法 | |
CN1963814A (zh) | 存储器数据管理方法 | |
CN104424219B (zh) | 一种数据文件的管理方法及装置 | |
CN103593477A (zh) | 一种哈希数据库的配置方法和装置 | |
CN103186617B (zh) | 一种存储数据的方法和装置 | |
CN100424699C (zh) | 一种属性可扩展的对象文件系统 | |
CN104281717B (zh) | 一种建立海量id映射关系的方法 | |
CN103425785A (zh) | 数据存储系统及其用户数据存储、读取方法 | |
CN102567415B (zh) | 一种数据库的控制方法和装置 | |
CN109407985B (zh) | 一种数据管理的方法以及相关装置 | |
CN102024019A (zh) | 一种分布式文件系统中基于后缀树的目录组织方法 | |
CN103383690A (zh) | 分布式数据存储方法及系统 | |
TWI397060B (zh) | 物件導向儲存裝置之磁碟配置方法 | |
CN102253985B (zh) | 一种文件系统数据的管理方法及系统 | |
CN104536908A (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 |