CN104516929B - 用于文件***的方法和装置 - Google Patents

用于文件***的方法和装置 Download PDF

Info

Publication number
CN104516929B
CN104516929B CN201310466056.1A CN201310466056A CN104516929B CN 104516929 B CN104516929 B CN 104516929B CN 201310466056 A CN201310466056 A CN 201310466056A CN 104516929 B CN104516929 B CN 104516929B
Authority
CN
China
Prior art keywords
file
storage area
logical
logical storage
block
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
Application number
CN201310466056.1A
Other languages
English (en)
Other versions
CN104516929A (zh
Inventor
翟佳
周应超
王文刚
郭军
张森
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.)
EMC Corp
Original Assignee
EMC Corp
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 EMC Corp filed Critical EMC Corp
Priority to CN201310466056.1A priority Critical patent/CN104516929B/zh
Priority to US14/495,404 priority patent/US10503695B2/en
Publication of CN104516929A publication Critical patent/CN104516929A/zh
Application granted granted Critical
Publication of CN104516929B publication Critical patent/CN104516929B/zh
Priority to US16/693,510 priority patent/US11232072B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/1727Details of free space management performed by the file system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种用于文件***的方法和装置,所述文件***包括至少第一逻辑存储区和第二逻辑存储区,所述第一逻辑存储区的逻辑区块与所述第二逻辑存储区的逻辑区块大小不同,所述方法包括:响应于文件创建请求,从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的逻辑存储区;以及在所选择的逻辑存储区中存储所述文件。通过本发明的各种实施方式,可以在一个文件***中使用直接和有效的方式来支持可变长度区块大小,并且并未增加元数据和定位开销。

Description

用于文件***的方法和装置
技术领域
本发明的实施方式涉及文件***领域,具体而言涉及用于文件***的方法和装置。
背景技术
随着计算机技术的不断发展,对文件***的各种需求也日新月异。通常,文件***通过维护逻辑存储区块来管理对文件的存储,逻辑存储区块与物理存储区块相对应,后者用于实际的文件存储。在实践中,可变的文件块大小在文件***的设计和实现中非常有用。它可以减少元数据的占用、改进I/O性能,并且减少碎片。
然而,虽然许多现代的文件***能够支持不同的块大小,但通常在创建文件***时仅使用一个块大小,并且块大小在文件***的生命周期期间不能改变。因此,在现有技术中缺乏对文件***灵活、高效的管理方式,不能充分利用文件***的灵活性。
发明内容
为此,本发明提出了一种用于文件***的技术。
根据本发明的一个方面,提供一种用于文件***的方法,所述文件***包括至少第一逻辑存储区和第二逻辑存储区,所述第一逻辑存储区的逻辑区块与所述第二逻辑存储区的逻辑区块大小不同,所述方法包括:响应于文件创建请求,从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的逻辑存储区;以及在所选择的逻辑存储区中存储所述文件。
根据本发明的可选实施方式,基于所述文件的属性,例如类型和/或文件大小而从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的存储区。根据本发明的进一步可选实施方式,所述文件的类型包括以下中的一个或多个:视频文件、音频文件、数据库文件以及文本文件。
根据本发明的可选实施方式,在所选择的逻辑存储区中存储所述文件进一步包括:在所述所选择的逻辑存储区中选择用于存储所述文件的位置;从物理存储池中分配对应大小的物理存储块;以及将所述文件的内容写入所述物理存储块中。根据本发明的进一步可选实施方式,所述文件***进一步包括用于记录所述逻辑存储区和所述物理存储块之间的对应关系的映射表,所述在所选择的逻辑存储区中存储所述文件进一步包括:基于所述逻辑存储区和所述物理存储块之间的对应关系,更新块映射表。
根据本发明的另一方面,提供了一种用于文件***的装置,所述文件***包括至少第一逻辑存储区和第二逻辑存储区,所述第一逻辑存储区的逻辑区块与所述第二逻辑存储区的逻辑区块大小不同,所述装置包括:选择单元,被配置为响应于文件创建请求,从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的逻辑存储区;以及存储单元,被配置为在所选择的逻辑存储区中存储所述文件。
根据本发明的可选实施方式,所述选择单元被配置为基于所述文件的类型和/或文件大小而从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的存储区。根据本发明的进一步可选实施方式,所述文件的类型包括以下中的一个或多个:视频文件、音频文件以及文本文件。
根据本发明的可选实施方式,所述存储单元进一步包括:位置选择单元,被配置为在所述所选择的逻辑存储区中选择用于存储所述文件的位置;分配单元,被配置为从物理存储池中分配对应大小的物理存储块;以及写入单元,被配置为将所述文件的内容写入所述物理存储块中。根据本发明的进一步可选实施方式,所述文件***进一步包括用于记录所述逻辑存储区和所述物理存储块之间的对应关系的映射表,所述存储单元进一步包括:更新单元,被配置为基于所述逻辑存储区和所述物理存储块之间的对应关系,更新块映射表。
根据本发明的又一方面,提供了一种文件***,包括至少第一逻辑存储区和第二逻辑存储区,所述第一逻辑存储区的逻辑区块与所述第二逻辑存储区的逻辑区块大小不同,所述文件***包括前述任一项用于文件***的装置。
根据本发明各种实施方式,可以在一个文件***中使用直接和有效的方式来支持可变长度区块大小,并且并未增加元数据和定位开销。可配置的策略引擎还使得能够更容易和直接地控制块大小。由此提供了更好的数据集成性和高可用性。
附图说明
图1示出了其中包含有根据本发明一个示例性实施方式用于文件***的装置的文件***100的框图;
图2示出了根据本发明一个示例性实施方式的文件***地址空间的具体示例;
图3示出了根据本发明一个示例性实施方式的在文件***中创建文件的具体示例;
图4示出了根据本发明一个示例性实施方式用于文件***的方法400的流程图;
图5示出了适于用来实践本发明实施方式的计算机***500的示意性框图。
应当注意,附图中的流程图和框图,图示了按照本发明各种实施方式的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
具体实施方式
下面将参考附图中示出的若干示例性实施方式来描述本发明的原理和精神。应当理解,描述这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本发明,而并非以任何方式限制本发明的范围。
首先参考图1,其示出了其中包含有根据本发明一个示例性实施方式用于文件***的装置的文件***100的框图。
如图所示,在文件***100中至少包含第一逻辑存储区101和第二逻辑存储区102。该第一逻辑存储区101的逻辑区块大小和第二逻辑存储区102的逻辑区块大小不同。要注意的是,文件***100除第一逻辑存储区101和第二逻辑存储区102之外还可以包括具有其它大小(即不同于第一和第二逻辑存储区块大小)的逻辑存储区。本发明在此方面不受限制。此外,虽然逻辑存储区101和102的逻辑区块大小不同,但物理存储区块的大小却是固定的。在根据本发明的文件***100中,文件***地址空间是虚拟空间,也即在文件***首次创建时,并不实际向文件***提供物理存储(除非用于超级块的最小必需的空间)。因此,虚拟地址空间被划分成相当一些子空间,每个子空间对应于不同的逻辑区块大小。为了清楚地说明文件***100,参考图2。图2示出了根据本发明一个示例性实施方式的文件***地址空间的具体示例。如图2所示,文件***地址空间除了超级块之外,还包括被划分成具有不同逻辑区块大小的多个子空间,例如8K子空间、16K子空间、...、128K子空间等。其中,8K子空间中包含有多个块大小为8K的逻辑区块;16K子空间中包含有多个块大小为16K的逻辑区块;...;128K子空间中包含有多个块大小为128K的逻辑区块,等等。本领域技术人员应当理解,8K子空间、16K子空间、...、128K子空间等仅仅是示例,根据本发明的文件***100完全可以划分为其它大小的各个子空间,本发明的范围在此不受限制。为了使每个子空间能够覆盖所有的物理存储,可以优选地使用64位的FSBN号。同样,64位也是示例性的,本领域技术人员应当理解,完全可以使用更多或更少位数的FSBN号。另一方面,物理存储被划分成固定大小(例如,128MB)的分片(slice)。术语“分片”是向文件***提供的物理存储的单位。分片代表特定设备上连续可寻址范围的物理存储。
返回图1,根据本发明的文件***100还包括用于该文件***的装置103。装置103包括选择单元104和存储单元105,其中,选择单元104被配置为响应于文件创建请求,从至少第一逻辑存储区和101第二逻辑存储区102中选择用于存储所述文件的逻辑存储区。在可选的实施方式中,选择单元104被配置为基于所述文件的类型和/或文件大小而从所述至少第一逻辑存储区101和第二逻辑存储区102中选择用于存储该文件的存储区。在此,文件类型包括以下中的一个或多个:视频文件、音频文件以及文本文件。在本发明的一个可选实现中,可以采用策略引擎(Policy Engine)来保留用户配置,在确定新创建的文件的逻辑块大小时,可以查询该用户配置。本领域技术人员应当理解,策略引擎仅仅是实现的一个示例,并不作为对本发明精神和范围的限制。在选择了用于存储文件的逻辑存储区之后,由存储单元105在所选择的逻辑存储区中存储所述文件。
具体而言,在本发明的优选实施方式中,存储单元105可以包括位置选择单元106、分配单元107和写入单元108。其中,选择单元106被配置为在所述所选择的逻辑存储区中选择用于存储所述文件的位置;分配单元107被配置为从物理存储池中分配对应大小的物理存储块;写入单元108被配置为将所述文件的内容写入所述物理存储块中。注意,单元106-108不是必需的,而是可选的。
为了清楚地说明前述装置和单元,结合图3作进一步说明。图3示出了根据本发明一个示例性实施方式的在文件***中创建文件的具体示例。本领域技术人员应当理解,下文参照图3描述的存储文件的具体实现仅是示例性的,不能作为对本发明精神和实质的限制。如图3所示,在创建文件3时(图3中的①),通过策略引擎来确定用于(或适于)存储该文件的逻辑块大小。在图3的示例中,确定适于存储文件3的逻辑块大小例如为128KB。所确定的逻辑块大小在一个可选实现中可以被记录在i节点(元数据节点)中。此后,文件***接收到发来的用于I/O操作的数据(图3中的②)。文件***尝试从对应于这一块大小的子空间(逻辑块大小为128KB的子空间)分配逻辑块(图3中的③)。注意,文件***的大小与存储池的大小可以相同也可以不同。在本发明的描述中,为了方便起见,不对存储池的大小作特定限制,只要保证所需文件***的大小能够满足即可。仍需强调的是,文件***大小在创建时确立,而所占用的实际物理存储在使用时(例如I/O发生时)分配。在具体实现中,在文件***的超级块中,会记录每个子空间中,每个分片(例如,128MB分片)的使用情况,其中包括已经使用和剩余的单元。当一个子空间中,已经请求的所有分片都没有剩余(或剩余较少,不足以支持I/O操作)的情况下,按照如下步骤从物理存储池中请求文件***提供新的分片((图3中的④):
a.在文件***子空间中选择位置;
b.从物理存储池中分配空闲分片。
可选地,在根据图3所示的实现中还可以包括步骤:
c.在超级块的“分片映射表(SliceMapTable)”中填充物理存储分片信息,从而维护物理存储区块和逻辑存储区块之间的映射关系。
这样,在根据“分片映射表”计算出物理存储上的数据偏移(实际物理存储位置)之后,即可进行实际的I/O操作。
备选地或附加地,存储单元105还可以包括更新单元109,其被配置为基于所述逻辑存储区和所述物理存储块之间的对应关系,更新块映射表110。
同样,图3中示出的文件1和文件2经过类似的上述过程分别被确定为存储在8KB逻辑块子空间和16KB的逻辑块子空间,不再赘述。
需要注意的是,这里所用的术语“单元”既可以是硬件模块,也可以是软件单元模块。相应地,装置103可以通过各种方式实现。例如,在某些实施方式中,装置103可以部分或者全部利用软件和/或固件来实现,例如被实现为包含在计算机可读介质上的计算机程序产品。备选地或附加地,装置100可以部分或者全部基于硬件来实现,例如被实现为集成电路(IC)、专用集成电路(ASIC)、片上***(SOC)、现场可编程门阵列(FPGA)等。本发明的范围在此方面不受限制。
根据本发明的上述各种实施方式,可以在一个文件***中使用直接和有效的方式来支持可变长度区块大小,并且并未增加元数据和定位开销。物理存储采用随用随分配的方式可以使得存储空间碎片最小化。可配置的策略引擎还使得能够更容易和直接地控制块大小。由此提供了更好的数据集成性和高可用性。
现在参考图4,其示出了根据本发明一个示例性实施方式用于文件***的方法400的流程图。其中,所述文件***包括至少第一逻辑存储区和第二逻辑存储区,所述第一逻辑存储区的逻辑区块与所述第二逻辑存储区的逻辑区块大小不同。应理解的是,方法400中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。方法400还可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。本领域技术人员应当理解,为了简洁起见,下文对方法400的说明中,与前文类似的术语表达相似的含义。
方法400开始之后,在步骤S401处,响应于文件创建请求,从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的逻辑存储区。
接下来,方法400前进到步骤S402,在所选择的逻辑存储区中存储所述文件。
根据本发明的一个实施方式,基于所述文件的类型和/或文件大小而从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的存储区。根据本发明的进一步实施方式,所述文件的类型包括以下中的一个或多个:视频文件、音频文件以及文本文件。
在本发明的优选实施方式中,步骤S402进一步包括:在所述所选择的逻辑存储区中选择用于存储所述文件的位置;从物理存储池中分配对应大小的物理存储块;以及将所述文件的内容写入所述物理存储块中。
根据本发明的一个实施方式,所述文件***进一步包括用于记录所述逻辑存储区和所述物理存储块之间的对应关系的映射表,步骤S402进一步包括基于所述逻辑存储区和所述物理存储块之间的对应关系,更新块映射表。
图5示出了适于用来实践本发明实施方式的计算机***500的示意性框图。如图5所示,计算机***500可以包括:CPU(中央处理单元)501、RAM(随机存取存储器)502、ROM(只读存储器)503、***总线504、硬盘控制器505、键盘控制器506、串行接口控制器507、并行接口控制器508、显示控制器509、硬盘510、键盘511、串行外部设备512、并行外部设备513和显示器514。在这些设备中,与***总线503耦合的有CPU501、RAM502、ROM503、硬盘控制器505、键盘控制器506、串行控制器507、并行控制器508和显示控制器509。硬盘510与硬盘控制器505耦合,键盘511与键盘控制器506耦合,串行外部设备512与串行接口控制器507耦合,并行外部设备513与并行接口控制器508耦合,以及显示器514与显示控制器509耦合。
应当理解,图5所述的结构框图仅仅为了示例的目的而示出的,而不是对本发明范围的限制。在某些情况下,可以根据具体情况而增加或者减少某些设备。
特别地,除硬件实施方式之外,本发明的实施方式可以通过计算机程序产品的形式实现。例如,参考图4描述的方法400可以通过计算机程序产品来实现。该计算机程序产品可以存储在例如图5所示的RAM502、ROM503、硬盘510和/或任何适当的存储介质中,或者通过网络从适当的位置下载到计算机***500上。计算机程序产品可以包括计算机代码部分,其包括可由适当的处理设备(例如,图5中示出的CPU501)执行的程序指令。所述程序指令至少可以包括:用于响应于文件创建请求,从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的逻辑存储区的指令;以及用于在所选择的逻辑存储区中存储所述文件的指令。
上文已经结合若干具体实施方式阐释了本发明的精神和原理。根据本发明的实施方式,可以根据文件本身的特性,为其选择适当大小的逻辑存储块,并采用随用随分配物理存储区的方式,从而能够减少碎片的产生,并且并未增加元数据和定位开销,从而灵活、高效地实现对文件***的管理。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行***,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
应当注意,尽管在上文详细描述中提及了设备的若干装置或子装置,但是这种划分仅仅并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多装置的特征和功能可以在一个装置中具体化。反之,上文描述的一个装置的特征和功能可以进一步划分为由多个装置来具体化。
此外,尽管在附图中以特定顺序描述了本发明方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。相反,流程图中描绘的步骤可以改变执行顺序。附加地或备选地,可以省略某些步骤,将多个步骤规约为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
虽然已经参考若干具体实施方式描述了本发明,但是应该理解,本发明并不限于所公开的具体实施方式。本发明旨在涵盖所附权利要求的精神和范围内所包括的各种修改和等同布置。所附权利要求的范围符合最宽泛的解释,从而包含所有这样的修改及等同结构和功能。

Claims (11)

1.一种用于文件***的方法,所述文件***包括至少第一逻辑存储区和第二逻辑存储区,所述第一逻辑存储区的逻辑区块与所述第二逻辑存储区的逻辑区块大小不同,所述方法包括:
响应于文件创建请求,由选择单元从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的逻辑存储区,其中通过配置策略引擎来控制对所选逻辑存储区域的逻辑块大小的选择;
将所选择的所述逻辑存储区的所述逻辑块大小存储在与所述文件相关联的i节点内,所述i节点记录针对整个文件的所述逻辑块大小,所述整个文件包括所述文件的所有逻辑区块;以及
在所选择的逻辑存储区中存储所述文件,所述文件***的大小响应于所述文件***的创建而被确定,并且所述文件***所占用的物理存储在所述文件的使用期间被分配。
2.根据权利要求1所述的方法,其中,基于所述文件的类型和/或文件大小而从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的存储区。
3.根据权利要求2所述的方法,其中,所述文件的类型包括以下中的一个或多个:视频文件、音频文件以及文本文件。
4.根据权利要求1所述的方法,其中,在所选择的逻辑存储区中存储所述文件进一步包括:
在所述所选择的逻辑存储区中选择用于存储所述文件的位置;
从物理存储池中分配对应大小的物理存储块;以及
将所述文件的内容写入所述物理存储块中。
5.根据权利要求4所述的方法,其中,所述文件***进一步包括用于记录所述逻辑存储区和所述物理存储块之间的对应关系的映射表,所述在所选择的逻辑存储区中存储所述文件进一步包括:
基于所述逻辑存储区和所述物理存储块之间的对应关系,更新块映射表。
6.一种用于文件***的装置,所述文件***包括至少第一逻辑存储区和第二逻辑存储区,所述第一逻辑存储区的逻辑区块与所述第二逻辑存储区的逻辑区块大小不同,所述装置包括:
选择单元,被配置为响应于文件创建请求,由选择单元从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的逻辑存储区,其中通过配置策略引擎来控制对所选逻辑存储区域的逻辑块大小的选择;
将所选择的所述逻辑存储区的所述逻辑块大小存储在与所述文件相关联的i节点内,所述i节点记录针对整个文件的所述逻辑块大小,所述整个文件包括所述文件的所有逻辑区块;以及
存储单元,被配置为在所选择的逻辑存储区中存储所述文件,所述文件***的大小响应于所述文件***的创建而被确定,并且所述文件***所占用的物理存储在所述文件的使用期间被分配。
7.根据权利要求6所述的装置,其中,所述选择单元被配置为基于所述文件的类型和/或文件大小而从所述至少第一逻辑存储区和第二逻辑存储区中选择用于存储所述文件的存储区。
8.根据权利要求7所述的装置,其中,所述文件的类型包括以下中的一个或多个:视频文件、音频文件以及文本文件。
9.根据权利要求6所述的装置,其中,所述存储单元进一步包括:
位置选择单元,被配置为在所述所选择的逻辑存储区中选择用于存储所述文件的位置;
分配单元,被配置为从物理存储池中分配对应大小的物理存储块;以及
写入单元,被配置为将所述文件的内容写入所述物理存储块中。
10.根据权利要求9所述的装置,其中,所述文件***进一步包括用于记录所述逻辑存储区和所述物理存储块之间的对应关系的映射表,所述存储单元进一步包括:
更新单元,被配置为基于所述逻辑存储区和所述物理存储块之间的对应关系,更新块映射表。
11.一种文件***,包括至少第一逻辑存储区和第二逻辑存储区,所述第一逻辑存储区的逻辑区块与所述第二逻辑存储区的逻辑区块大小不同,所述文件***包括根据权利要求6-10中任一项所述的装置。
CN201310466056.1A 2013-09-27 2013-09-27 用于文件***的方法和装置 Active CN104516929B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310466056.1A CN104516929B (zh) 2013-09-27 2013-09-27 用于文件***的方法和装置
US14/495,404 US10503695B2 (en) 2013-09-27 2014-09-24 Method and apparatus for file system
US16/693,510 US11232072B2 (en) 2013-09-27 2019-11-25 Method and apparatus for file system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310466056.1A CN104516929B (zh) 2013-09-27 2013-09-27 用于文件***的方法和装置

Publications (2)

Publication Number Publication Date
CN104516929A CN104516929A (zh) 2015-04-15
CN104516929B true CN104516929B (zh) 2019-07-19

Family

ID=52741186

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310466056.1A Active CN104516929B (zh) 2013-09-27 2013-09-27 用于文件***的方法和装置

Country Status (2)

Country Link
US (2) US10503695B2 (zh)
CN (1) CN104516929B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11853566B2 (en) 2020-04-14 2023-12-26 Sun Yat-Sen University Management method and system for address space of low delay file system and medium

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6417695B2 (ja) * 2014-03-31 2018-11-07 富士通株式会社 情報処理システム、情報処理システムの制御方法および情報処理装置の制御プログラム
US9940332B1 (en) 2014-06-27 2018-04-10 EMC IP Holding Company LLC Storage pool-backed file system expansion
US10976946B2 (en) * 2015-11-27 2021-04-13 Hitachi, Ltd. Method and computer system for managing blocks
CN111061683B (zh) * 2019-12-30 2023-03-21 成都定为电子技术有限公司 一种高速存储和操作数据流的方法与装置
CN114328373A (zh) * 2020-09-29 2022-04-12 伊姆西Ip控股有限责任公司 管理文件***的方法、电子设备和计算机程序产品

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1489334A (zh) * 2002-10-11 2004-04-14 深圳市中兴通讯股份有限公司 一种静态动态结合的存储区管理的方法
CN1694177A (zh) * 2004-01-09 2005-11-09 三星电子株式会社 具有可变存储大小的半导体存储器及其刷新方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6834326B1 (en) * 2000-02-04 2004-12-21 3Com Corporation RAID method and device with network protocol between controller and storage devices
US6970939B2 (en) * 2000-10-26 2005-11-29 Intel Corporation Method and apparatus for large payload distribution in a network
US20020178330A1 (en) * 2001-04-19 2002-11-28 Schlowsky-Fischer Mark Harold Systems and methods for applying a quality metric to caching and streaming of multimedia files over a network
US7599972B2 (en) * 2006-08-25 2009-10-06 Qnx Software Systems Gmbh & Co. Kg File system having variable logical storage block size
WO2011023134A1 (en) * 2009-08-28 2011-03-03 Beijing Innovation Works Technology Company Limited Method and system for managing distributed storage system through virtual file system
US8935499B2 (en) * 2011-10-17 2015-01-13 International Business Machines Corporation Interface for management of data movement in a thin provisioned storage system
US8966205B1 (en) * 2012-05-10 2015-02-24 Western Digital Technologies, Inc. System data management using garbage collection and hybrid self mapping
US9880928B1 (en) 2014-09-26 2018-01-30 EMC IP Holding Company LLC Storing compressed and uncompressed data in blocks having different allocation unit sizes

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1489334A (zh) * 2002-10-11 2004-04-14 深圳市中兴通讯股份有限公司 一种静态动态结合的存储区管理的方法
CN1694177A (zh) * 2004-01-09 2005-11-09 三星电子株式会社 具有可变存储大小的半导体存储器及其刷新方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11853566B2 (en) 2020-04-14 2023-12-26 Sun Yat-Sen University Management method and system for address space of low delay file system and medium

Also Published As

Publication number Publication date
US11232072B2 (en) 2022-01-25
US10503695B2 (en) 2019-12-10
US20200097450A1 (en) 2020-03-26
US20150095383A1 (en) 2015-04-02
CN104516929A (zh) 2015-04-15

Similar Documents

Publication Publication Date Title
CN104516929B (zh) 用于文件***的方法和装置
US10657101B2 (en) Techniques for implementing hybrid flash/HDD-based virtual disk files
EP2715510B1 (en) Method for storage devices to achieve low write amplification with low over provision
CN103699334B (zh) 用于管理虚拟机磁盘的方法和***
CN105593828B (zh) 管理文件的方法、分布式存储***和管理节点
US20180089074A1 (en) Techniques to Manage Key-Value Storage at a Memory or Storage Device
CN103493024B (zh) 用于高速缓存分层的方法和***
US9280300B2 (en) Techniques for dynamically relocating virtual disk file blocks between flash storage and HDD-based storage
US8868622B2 (en) Method and apparatus for allocating resources in a computer system
CN104298681B (zh) 一种数据存储方法及装置
JP2017021805A (ja) 不揮発性メモリ装置内でデータ属性基盤データ配置を利用可能にするインターフェイス提供方法及びコンピュータ装置
CN104408091A (zh) 分布式文件***的数据存储方法及***
CN103218312B (zh) 文件访问方法及***
US20170220463A1 (en) Method and apparatus for a network connected storage system
JP2006099763A5 (zh)
CN102073464A (zh) 一种按需分配增量卷的创建方法
US8930955B2 (en) Controlling growth in virtual disks via utilization of previously used and free disk block space
CN104536903A (zh) 一种按数据属性分类存放的混合存储方法及***
CN105981033B (zh) 将放置策略分配给片段集合
CN103218305B (zh) 存储空间的分配方法
CN104272242A (zh) 创建加密存储体
CN103412929A (zh) 一种海量数据的存储方法
CN103617133B (zh) 一种Windows***中虚拟内存压缩方法和装置
EP4185963B1 (en) Zone hints for zoned namespace storage devices
CN102693186A (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200410

Address after: Massachusetts, USA

Patentee after: EMC IP Holding Company LLC

Address before: Massachusetts, USA

Patentee before: EMC Corp.

TR01 Transfer of patent right