Lightweight data reconstruction based on backup data
US-2018113769-A1 · Apr 26, 2018 · US
US10831742B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10831742-B2 |
| Application number | US-201715620900-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 13, 2017 |
| Priority date | Dec 9, 2016 |
| Publication date | Nov 10, 2020 |
| Grant date | Nov 10, 2020 |
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 computer program product, system, and method for generating a test data set using object count and object size parameters, storing the generated data set in storage, subsequently regenerating the data set, and comparing the regenerated data set to the stored data set to validate the storage.
Opening claim text (preview).
What is claimed is: 1. A method for testing storage systems, comprising: receiving parameters including an object count (N) and an object size, the parameters being received as user input via a user interface for specifying storage system tests; generating, by a data set generator, a data set key, and providing the data set key to a data stream generator; generating, by the data stream generator, a quasi-random data stream of N object identifiers based on based on the data set key and the object count and providing the quasi-random data stream to the data set generator; providing, by the data set generator, each of the N object identifiers to the data stream generator together with the object size; for each of the N object identifiers, receiving, by the data set generator, object contents corresponding to the object identifier and adding the object identifier and the object identifier's corresponding object contents to a storage system under testing, the object identifier's corresponding object contents being generated by the data stream generator in response to the object identifier, the object identifier's corresponding object contents including quasi-random data that is reproducible based on the object identifier and the object size; regenerating the N object identifiers using the data set key and the object count; for each of the N object identifiers, regenerating the object identifier's corresponding object contents using the object identifier and the object size; for each of the N object identifiers, retrieving, from the storage system under testing, the object identifier's corresponding object contents; and detecting whether the storage system under testing is operating correctly by comparing each object identifier's corresponding regenerated contents to the object identifier's corresponding retrieved contents. 2. The method of claim 1 wherein the parameters further include a data set name, the method further including: storing the data set key, object count (N), and object size to local storage using the data set name. 3. The method of claim 1 wherein generating the data set key includes generating the data set key using a pseudo-random number generator (PRNG). 4. The method of claim 1 wherein the quasi-random data stream of N object identifiers is generated by using a pseudo-random number generator (PRNG) seeded with the data set key. 5. The method of claim 1 wherein each object identifier's corresponding object contents are generated by using a pseudo-random number generator (PRNG) seeded with the object identifier. 6. A system comprising: a processor; a volatile memory; and a non-volatile memory storing computer program code which, when executed on the processor, causes the processor to execute a process operable to perform the operations of: receiving parameters including an object count (N) and an object size, the parameters being received as user input via a user interface for specifying storage system tests; generating, by a data set generator, a data set key, and providing the data set key to a data stream generator; generating, by the data stream generator, a quasi-random data stream of N object identifiers based on the data set key and the object count, and providing the quasi-random data stream to the data set generator; providing, by the data set generator, each of the N object identifiers to the data stream generator together with the object size; for each of the N object identifiers, receiving, by the data set generator, object contents corresponding to the object identifier and adding the object identifier and the object identifier's corresponding object contents to a storage system under testing, the object identifier's corresponding object contents being generated by the data stream generator in response to the object identifier, the object identifier's corresponding object contents including quasi-random data that is reproducible based on the object identifier and the object size; regenerating the N object identifiers using the data set key and the object count; for each of the N object identifiers, regenerating the object identifier's corresponding object contents using the object identifier and the object size; for each of the N object identifiers, retrieving, from the storage system under testing, the object identifier's corresponding object contents; and detecting whether the storage system under testing is operating correctly by comparing each object identifier's corresponding regenerated contents to the object identifier's corresponding retrieved contents. 7. The system of claim 6 wherein the parameters further include a data set name, the computer program code causes the processor to execute a process further operable to perform the operations of: storing the data set key, object count (N), and object size to local storage using the data set name. 8. The system of claim 6 wherein generating the data set key includes generating the data set key using a pseudo-random number generator (PRNG). 9. The system of claim 6 , wherein the quasi-random data stream of N object identifiers is generated by using a pseudo-random number generator (PRNG) seeded with the data set key. 10. The system of claim 6 wherein each object identifier's corresponding object contents are generated by using a pseudo-random number generator (PRNG) seeded with the object identifier. 11. A computer program product tangibly embodied in a non-transitory computer-readable medium, the computer-readable medium storing program instructions that are executable to: receive parameters including an object count (N) and an object size, the parameters being received as user input via a user interface for specifying storage system tests; generate, by a data set generator, a data set key, the data set key including a random value, and providing the data set key to a data stream generator; generate, by the data stream generator, a quasi-random data stream of N object identifiers based on the data set key and the object count and providing the quasi-random data stream to the data set generator; providing, by the data set generator, each of the N object identifiers to the data stream generator together with the object size; for each of the N object identifiers, receive, by the data set generator, object contents corresponding to the object identifier and add the object identifier and the object identifier's corresponding object contents to a storage system under testing, the object identifier's corresponding object contents being generated by the data stream generator in response to the object identifier, the object identifier's corresponding object contents including quasi-random data that is reproducible based on the object identifier and the object size; regenerate the N object identifiers using the data set key and the object count; for each of the N object identifiers, regenerate the object identifier's corresponding object contents using the object identifier and the object size; for each of the N object identifiers, retrieve, from the storage system under testing, the object identifier's corresponding object contents; and detecting whether the storage system under testing is operating correctly by comparing each object identifier's corresponding regenerated contents to the object identifier's corresponding retrieved contents. 12. The computer program product of claim 11 wherein the parameters further include a data set name, the program instructions further executable to: store the data set key, object count (N), and object size to local storage using the data set name. 13. The computer program product of claim 11 wherein generat
Ensuring data consistency and integrity · CPC title
Techniques for file synchronisation in file systems · CPC title
Management of the data involved in backup or backup restore · CPC title
Generation of test inputs, e.g. test vectors, patterns or sequences {; with adaptation of the tested hardware for testability with external testers} · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.