Systems and methods for preserving individual backed-up files in accordance with legal-hold policies
US-8972354-B1 · Mar 3, 2015 · US
US9043334B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9043334-B2 |
| Application number | US-201213726628-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 26, 2012 |
| Priority date | Dec 26, 2012 |
| Publication date | May 26, 2015 |
| Grant date | May 26, 2015 |
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.
A method for accessing files on a storage system is provided. A hash memory table including a plurality of hash buckets respectively corresponding to a plurality of index hash codes is built. Each of the hash buckets has a pointer pointing towards at least one entry. Each of the entries has a physical address field and a hash code field. The physical address fields respectively record physical addresses storing the files, and the hash code fields respectively record verification hash codes corresponding to the files. The index hash codes are generated by inputting keys of the files to an index hash function and the verification hash codes are generated by inputting keys of the files to a verification hash function. Then, the hash memory table is loaded into the buffer with a bucket-based replacement policy so that the files are able to be accessed according to the hash memory table.
Opening claim text (preview).
What is claimed is: 1. A method for accessing files on a storage system having a buffer and a disk, the method comprising: building a hash memory table, wherein the hash memory table includes a plurality of hash buckets respectively corresponding to a plurality of index hash codes, each of the hash buckets has a pointer, each of the pointer points towards at least one entry, each of the entries has a physical address field and a hash code field, the physical address fields respectively record physical addresses storing the files, the hash code fields respectively record verification hash codes corresponding to the files, the index hash codes is generated by inputting keys of the files to an index hash function and the verification hash codes is generated by inputting the keys of the files to a verification hash function; loading the hash memory table into the buffer with a bucket-based replacement policy; and accessing the files according to the hash memory table loaded into the buffer, wherein the step of accessing the files according to the hash memory table loaded into the buffer comprises: writing a new file into the disk and obtaining a physical address storing the new file from a file memory table loaded into the buffer system of the disk, wherein writing a new file into the disk comprises embedding a logical file name of the new file into the physical address; inserting a new hash bucket in the hash memory table; generating an index hash code corresponding to the new hash bucket by inputting a key of the new file into the index hash function; adding an entry corresponding to the new file in the new hash bucket and setting a pointer of the new hash bucket pointing towards the entry corresponding to the new file; generating a verification hash code corresponding to the new file by inputting the key of the new file into the verification hash function; recording physical address storing the new file into the physical address field of the entry corresponding to the new file; and recording the verification hash code corresponding to the new file into the hash code field of the entry corresponding to the new file. 2. The method according to claim 1 , wherein said step of accessing the files according to the hash memory table loaded into the buffer comprises: receiving a command for reading the new file; generating a first search hash code by inputting the key of the new file into the index hash function; identifying the new hash bucket form the hash buckets by comparing the first search hash code with the index hash codes; reading at least one searched entry according to the pointer of the new hash bucket corresponding to the first search hash code; generating a second search hash code by inputting the key of the new file into the verification hash function; identifying the entry corresponding to the new file among the at least one searched entry by comparing the second search hash code with at least one verification hash code recorded in at least one hash code field of the at least one searched; and reading content of the new file from the disk according to the physical address recorded in the physical address filed the entry corresponding to the new file. 3. The method according to claim 1 , wherein said step of accessing the files according to the hash memory table loaded into the buffer comprises: receiving a command for reading the new file; generating a first search hash code by inputting the key of the new file into the index hash function; identifying the new hash bucket form the hash buckets by comparing the first search hash code with the index hash codes; reading at least one searched entry according to the pointer of the new hash bucket corresponding to the first search hash code; generating a second search hash code by inputting the key of the new file into the verification hash function; identifying the entry corresponding to the new file among the at least one searched entry by comparing the second search hash code with at least one verification hash code recorded in at least one hash code field of the at least one searched and comparing the logical file name of the new file with at least one logical file name embedded into at least one physical address storing at least one files corresponding to at least one searched entry; and reading content of the new file from the disk according to the physical address recorded in the physical address filed the entry corresponding to the new file. 4. The method according to claim 1 , wherein said step of accessing the files according to the hash memory table loaded into the buffer comprises: when the file system of the disk moves the new file from the physical address storing the new file to another physical address, updating the another physical address into the physical address field of the entry corresponding to the new file in the hash memory table. 5. The method according to claim 1 , wherein said step of accessing the files according to the hash memory table loaded into the buffer comprises: when the file system of the disk deletes the new file from the physical address storing the new file to another physical address, deleting the entry corresponding to the new file in the hash memory table. 6. The method according to claim 1 , further comprising: building a metadata database; and storing information recorded in the hash memory table into the metadata database. 7. The method according to claim 6 , further comprising: backuping a copy of the metadata database into a backup server; and recovering the hash memory table based on the copy of the metadata database stored in the backup server. 8. A storage system, comprising: a microprocessor; a buffer, coupled to the microprocessor; a disk, coupled to the microprocessor; a metadata management unit, coupled to the microprocessor and configured to build a hash memory table, wherein the hash memory table includes a plurality of hash buckets respectively corresponding to a plurality of index hash codes, each of the hash buckets has a pointer, each of the pointer points towards at least one entry, each of the entries has a physical address field and a hash code field, the physical address fields respectively record physical addresses storing files, the hash code fields respectively record verification hash codes corresponding to the files, the index hash codes is generated by inputting keys of the files to an index hash function and the verification hash codes is generated by inputting the keys of the files to a verification hash function, the metadata management unit is configured to load the hash memory table into the buffer with a bucket-based replacement policy and access the files according to the hash memory table loaded into the buffer, and the metadata management unit writes a new file into the disk and obtains a physical address storing the new file from a file system of the disk, wherein the metadata management unit generates an index hash code corresponding to a new hash bucket by inputting a key of the new file into the index hash function and generates a verification hash code corresponding to the new file by inputting the key of the new file into the verification hash function, wherein writing the new file into disk includes embedding a logical file name of the new file into the physical address, wherein the metadata management unit inserts a new hash bucket in the hash memory table, adds an entry corresponding to the new file in the new hash bucket and sets a pointer of the new hash bucket pointing towards the entry corresponding to the new file, wherein the metadata management unit records the physical address storing the new file into a physical address field of the entry corresponding to the n
Hash-based (content-based indexing of textual data G06F16/31) · CPC title
Protecting data integrity, e.g. using checksums, certificates or signatures · CPC title
Physics · mapped topic
Related publications grouped by family.
Answers are generated from the same data shown on this page.