Patent classifications
G06F2211/104
DATA AND METADATA STORAGE IN STORAGE DEVICES
In an example, a storage device includes a plurality of pages, a main page table structure, and an auxiliary page table structure. The main page table structure includes a first data mapping between a logical address of first data and a first physical address pointing to a first data page. Further, the auxiliary page table structure includes a first metadata mapping between a logical address of first metadata and a second physical address pointing to a first metadata page.
Detecting single event upsets and stuck-at faults in RAM-based data path controllers
In one embodiment, a system includes logic configured to receive data comprising a plurality of data elements, where each data element comprises one or more bits. Further, the logic is configured to output bursts of data comprising the plurality of data elements along with a number of parity bits equal to a number of data elements in the plurality of data elements received from a first parity module to an input of a data path. Further still, the system includes a binary sequence generator configured to create a binary sequence comprising a plurality of bonus bits in a pseudo-random pattern that has less than a predetermined chance of matching any sequence of bits in the data while in the data path. Further still, the first parity module is configured to provide a parity calculation prior to passing the plurality of data elements to the input of the data path.
Scalable cloud—assigning scores to requesters and treating requests differently based on those scores
A method begins by a computing device of a dispersed storage network (DSN) maintaining a queue of pending requests to access the DSN while new requests are added to the queue and executed requests are deleted from the queue. The method continues by the computing device determining, for each pending request in the queue, a prioritization score to produce a plurality of prioritization scores. The prioritization score is determined by determining an identity of a requestor associated with a pending request, obtaining a trust score based on the requestor's identity, and obtaining a compliance score based on the requestor's identity. The trust score indicates the requestor's level of legitimate use of the DSN and the compliance score indicates the requestor's level of compliance with DSN system requests. The method continues by the computing device executing pending requests of the queue in accordance with the plurality of prioritization scores.
Secure Storage Network and Methods for use Therewith
A storage network operates by: encoding a data segment into a set of encoded data slices, wherein a read threshold of encoded data slices of the set of encoded data slices is required to decode the data segment, wherein the read threshold has a value greater than one, and wherein the data segment has an associated security level; selecting a subset of the plurality of storage units based on the security level, wherein the subset includes at least the read threshold of storage units of the plurality of storage units, wherein each of the subset of the plurality of storage units has a connection security approach that corresponds to the security level; and communicating the set of encoded data slices to the subset of the plurality of storage units in accordance with the connection security approach associated with each of the subset of the plurality of storage units.
Updating an encoded data slice
A distributed storage (DS) processing unit distributes an initial set of encoded data slices and an initial parity slice, for storage in multiple DS units. The initial parity slice is associated with an initial encoded data slice stored in a first DS unit. The DS processing unit transmits an updated encoded data slice reflecting changes to the initial encoded data slice, and obtains, from the first DS unit, delta parity information associated with a delta parity slice. The delta parity slice reflects differences between parity values calculated using the updated data slice and the initial data slice. An updated parity slice is generated by performing an exclusive OR (XOR) operation on the initial parity slice and the delta parity slice. A message transmitted to a second DS unit, which currently stores the initial parity slice, directs the second DS unit to store the updated parity slice.
Method and apparatus for distributed storage integrity processing
A distributed storage integrity system in a dispersed storage network includes a scanning agent and a control unit. The scanning agent identifies an encoded data slice that requires rebuilding, wherein the encoded data slice is one of a plurality of encoded data slices generated from a data segment using an error encoding dispersal function. The control unit retrieves at least a number T of encoded data slices needed to reconstruct the data segment based on the error encoding dispersal function. The control unit is operable to reconstruct the data segment from at least the number T of the encoded data slices and generate a rebuilt encoded data slice from the reconstructed data segment. The scanning agent is located in a storage unit and the control unit is located in the storage unit or in a storage integrity processing unit, a dispersed storage processing unit or a dispersed storage managing unit.
COMBINED SECURE MAC AND DEVICE CORRECTION USING ENCRYPTED PARITY WITH MULTI-KEY DOMAINS
In one example a computer implemented method comprises generating an error correction code for a memory line, the memory line comprising a first plurality of data blocks, wherein the error correction code comprises a first plurality of parity bits and a second plurality of parity bits, applying a domain-specific function to the second plurality of parity bits to generate a modified block of parity bits, generating a metadata block corresponding to the memory line, wherein the metadata block comprises the error correction code for the memory line and at least a portion of the modified block of parity bits, encoding the first plurality of data blocks and the metadata block to generate a first encoded data set, and providing the encoded data set and the encoded metadata block for storage on a memory module. Other examples may be described.
Data stripping, allocation and reconstruction
A method for data stripping, allocation and reconstruction in an active drive storage system including a plurality of active object storage devices, each of the plurality of active object storage devices including one or more storage devices and a controller is provided. The method includes the controller of the identified one of the plurality of active object storage devices segmenting the received data into a plurality of data chunks and generating one or more parity chunks in response to the plurality of data chunks. The method further includes the controller of the identified one of the plurality of active object storage devices reorganizing the plurality of data chunks and the one or more parity chunks in response to a number of the plurality of data chunks and a number of the one or more of the plurality of active object storage devices into which the received data is to be stored. Finally, the method includes the step of the controller of the identified one of the plurality of active object storage devices storing the plurality of data chunks and the one or more parity chunks into the one or more of the plurality of active object storage devices.
CODING TECHNIQUE
Disclosed herein is a computer-implemented method of including data characterising values of source data in redundant data, wherein there are K source nodes of source data and R redundant nodes of redundant data such that there are a plurality of N nodes, where N=(K+R), wherein each of the N nodes comprises a plurality of sub-blocks of data, wherein a block of data comprises N sub-blocks with each of the N sub-blocks comprised by a different one of the N nodes, such that each block comprises K sub-blocks of source data and R sub-blocks of redundant data, the method comprising: calculating K data characterising values in dependence on sub-blocks comprised by the source nodes, wherein each of the data characterising values is associated with a different one of the K source nodes, each of the K data characterising values is associated with a different block and each of the K data characterising values is calculated in dependence on all of the sub-blocks of the source node that the data characterising value is associated with except the one sub-block of the source node that is also comprised by the block that the data characterising value is associated with; and generating one or more sub-blocks of the source and redundant nodes in dependence on the K data characterising values. Advantages include one or more of improved determination of whether or not the stored data comprises errors, an increase in the number of errors that can detected and improved recovery from errors. By including data characteristics within the stored data rather than as metadata, the data characteristics do not increase the amount of metadata required.
SCALABLE CLOUD - ASSIGNING SCORES TO REQUESTERS AND TREATING REQUESTS DIFFERENTLY BASED ON THOSE SCORES
A method begins by a computing device of a dispersed storage network (DSN) maintaining a queue of pending requests to access the DSN while new requests are added to the queue and executed requests are deleted from the queue. The method continues by the computing device determining, for each pending request in the queue, a prioritization score to produce a plurality of prioritization scores. The prioritization score is determined by determining an identity of a requestor associated with a pending request, obtaining a trust score based on the requestor's identity, and obtaining a compliance score based on the requestor's identity. The trust score indicates the requestor's level of legitimate use of the DSN and the compliance score indicates the requestor's level of compliance with DSN system requests. The method continues by the computing device executing pending requests of the queue in accordance with the plurality of prioritization scores.