Storing compressed and uncompressed data in blocks having different allocation unit sizes
US-9880928-B1 · Jan 30, 2018 · US
US10503695B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10503695-B2 |
| Application number | US-201414495404-A |
| Country | US |
| Kind code | B2 |
| Filing date | Sep 24, 2014 |
| Priority date | Sep 27, 2013 |
| Publication date | Dec 10, 2019 |
| Grant date | Dec 10, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The present disclosure relates to a method and apparatus for a file system, the file system comprising at least a first logical storage area and a second logical storage area, a logical block of the first logical storage area and that of the second logical storage area being different in size, and in response to a request for creating a file, selecting a logical storage area for storing the file from the at least first logical storage area and second logical storage area; and storing the file in the selected logical storage area. According to the above various embodiments of the present invention, a direct and effective way may be used to support variable-length block size in a file system, without increasing metadata and positioning overheads.
Opening claim text (preview).
What is claimed is: 1. A method for a file system, wherein the file system comprises at least a first logical storage area and a second logical storage area, a logical block of the first logical storage area being different in size from that of a logical block of the second logical storage area, the method comprising: in response to a request for creating a file, selecting, by a policy engine, a logical storage area for storing the file from the at least first logical storage area and second logical storage area, wherein selection of a logical block size of the selected logical storage area is controlled by configuring the policy engine, wherein variable-length block size is supported in the file system through use of the configurable policy engine; storing the logical block size of the selected logical storage area in an inode associated with the file, the inode recording the logical block size for the entire file, including all logical blocks of the file; and storing the file in the selected logical storage area. 2. The method according to claim 1 , wherein a storage area for storing the file is selected from the at least first logical storage area and second logical storage area based on a pre-defined parameter. 3. The method according to claim 2 , wherein the pre-defined parameter is a file type and/or a file size. 4. The method according to claim 3 , wherein the file types comprise at least one or more of video files, audio files, image files, content files, information files, data files and text files. 5. The method according to claim 1 , wherein storing the file in the selected logical storage area further comprises: selecting a location for storing the file in the selected logical storage area; allocating a physical storage block with a corresponding size from a physical storage pool; and writing the file contents into the physical storage block. 6. The method according to claim 5 , wherein the file system further comprises a mapping table for recording a relationship between the logical storage area and the physical storage block. 7. The method as claimed in claim 5 , wherein storing the file in the selected logical storage area further comprises: updating a block map table based on the relationship between the logical storage area and the physical storage block. 8. The method as claimed in claim 5 , wherein storing the file in the selected logical storage area further comprises: updating a block map table based on the relationship between the logical storage area and the physical storage block. 9. A system, comprising: a data storage system; and computer-executable program logic encoded in memory of one or more computers enabled to implement a file system comprising at least a first logical storage area and a second logical storage area, wherein a logical block of the first logical storage area being different in size from a logical block of the second logical storage area, wherein the computer-executable program logic is configured for the execution of: in response to a request for creating a file, selecting, by a policy engine, a logical storage area for storing the file from the at least first logical storage area and second logical storage area, wherein selection of a logical block size of the selected logical storage area is controlled by configuring the policy engine, wherein variable-length block size is supported in the file system through use of the configurable policy engine; storing the logical block size of the selected logical storage area in an inode associated with the file, the inode recording the logical block size for the entire file, including all logical blocks of the file; and storing the file in the selected logical storage area. 10. The system according to claim 9 , wherein the computer-executable program logic is configured for the execution of: selecting a storage area for storing the file from the at least first logical storage area and second logical storage area based on a pre-defined parameter, and wherein the predefined parameter is a file type and/or a file size, and wherein the file type comprise at least one or more of video files, audio files, image files, content files, information files, data files and text files. 11. The system according to claim 9 , wherein the computer-executable program logic is configured for the execution of: selecting a location for storing the file in the selected logical storage area; allocating a physical storage block with a corresponding size from a physical storage pool; and writing the file contents into the physical storage block. 12. The system according to claim 11 , wherein the file system further comprises a mapping table for recording a relationship between the logical storage area and the physical storage block. 13. The system according to claim 12 , wherein storing the file in the selected logical storage area further comprises: updating a block map table based on the correspondence relationship between the logical storage area and the physical storage block. 14. A computer program product for implementing a file system on a data storage system, wherein the file system comprises at least a first logical storage area and a second logical storage area, a logical block of the first logical storage area being different in size from that of a logical block of the second logical storage area, the computer program product comprising: a non-transitory computer readable medium encoded with computer-executable code, the code configured to enable the execution of: in response to a request for creating a file, selecting, by a policy engine, a logical storage area for storing the file from the at least first logical storage area and second logical storage area, wherein selection of a logical block size of the selected logical storage area is controlled by configuring the policy engine, wherein variable-length block size is supported in the file system through use of the configurable policy engine; storing the logical block size of the selected logical storage area in an inode associated with the file, the inode recording the logical block size for the entire file, including all logical blocks of the file; and storing the file in the selected logical storage area. 15. The computer program product of claim 14 , wherein the code is further configured to enable the execution of: selecting a storage area for storing the file from the at least first logical storage area and second logical storage area based on a pre-defined parameter. 16. The computer program product of claim 15 , wherein the pre-defined parameter is a file type and/or a file size. 17. The computer program product of claim 16 , wherein the file types comprise at least one or more of video files, audio files, image files, content files, information files, data files and text files. 18. The computer program product of claim 14 , wherein storing the file in the selected logical storage area further comprises: selecting a location for storing the file in the selected logical storage area; allocating a physical storage block with a corresponding size from a physical storage pool; and writing the file contents into the physical storage block. 19. The computer program product of claim 18 , wherein the file system further comprises a mapping table for recording a relationship between the logical storage area and the physical storage block.
at area level, e.g. provisioning of virtual or logical volumes · CPC title
Plurality of storage devices · CPC title
Saving storage space on storage systems · CPC title
File access structures, e.g. distributed indices (arrangements of input from, or output to, record carriers G06F3/06) · CPC title
Details of free space management performed by the file system (saving storage space on storage systems G06F3/0608; management of blocks in storage devices G06F3/064) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.