ZONE STORAGE - QUICKLY RETURNING TO A STATE OF CONSISTENCY FOLLOWING AN UNEXPECTED EVENT
First Claim
1. A method of storing data comprising:
- writing slice content data to a volatile memory;
flushing the slice content data to a bin in a non-volatile memory after determining the slice content data was completely written to the volatile memory;
writing missing metadata corresponding to the slice content data after flushing the slice content data to the bin; and
writing missing metadata corresponding to the bin after flushing the slice content data to the bin.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and Methods for data storage in a distributed storage network are disclosed. Unexpected errors can adversely affect consistency of both the content of a write (including the slice data), and the synchronicity between the written slices and metadata structures. To maintain consistency between these data structures, a sequencing of the order of writes and flushes to the memory devices for the different data structures may be enforced as follows: First: Slice content data is first written to the volatile memory (e.g. a cache memory) of a DS unit; Second: the Slice content data stored in volatile memory is “flushed” to a non-volatile bin (which bin is associated with a group of physical memory blocks in non-volatile memory); Third: after the flush of the slice content data to the bin (i.e. data is durable on the media device): metadata relating to the data is written.
20 Citations
20 Claims
-
1. A method of storing data comprising:
-
writing slice content data to a volatile memory; flushing the slice content data to a bin in a non-volatile memory after determining the slice content data was completely written to the volatile memory; writing missing metadata corresponding to the slice content data after flushing the slice content data to the bin; and writing missing metadata corresponding to the bin after flushing the slice content data to the bin. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A dispersed storage unit for use in a dispersed storage network, the dispersed storage unit comprising:
-
a communications interface; a volatile memory; a non-volatile memory; and a computer processor; wherein the non-volatile memory includes instructions for causing the computer processor to; write slice content data to the volatile memory; flush the slice content data to a bin in the non-volatile memory after a determination that the slice content data was completely written to the volatile memory; write missing metadata corresponding to the slice content data after the slice content data has been flushed to the bin; and write missing metadata corresponding to the bin after the slice content data has been flushed to the bin. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. A dispersed storage network comprising:
-
a plurality of dispersed storage units; a dispersed storage processing unit wherein a first dispersed storage unit of the plurality of dispersed storage units includes; a volatile memory; a non-volatile memory; and a computer processor; wherein the non-volatile memory includes instructions for causing the computer processor to; write slice content data to the volatile memory; flush the slice content data to a bin in the non-volatile memory after a determination that the slice content data was completely written to the volatile memory; write missing metadata corresponding to the slice content data after the slice content data has been flushed to the bin; and write missing metadata corresponding to the bin after the slice content data has been flushed to the bin. - View Dependent Claims (20)
-
Specification