SYSTEM AND METHOD FOR INLINE ERASURE CODING FOR A DISTRIBUTED LOG STRUCTURED STORAGE SYSTEM
First Claim
1. A method comprising:
- receiving a write request for first data from a file system;
selecting a physical sector on a selected storage device in an array of storage devices on which to store the first data;
assigning a key to the physical sector;
storing the key and an indication of the physical sector in a key-to-physical medium map;
erasure coding the data, including generating parity data associated with the first data;
writing the first data and the parity data as a data stripe to each storage device in the array of storage devices; and
in response to receiving the write request, sending the key to the file system.
1 Assignment
0 Petitions
Accused Products
Abstract
Presented herein are methodologies for implementing erasure coding in a distributed log structured storage system. A method includes receiving a write request for first data from a file system, selecting a physical sector on a selected storage device in an array of storage devices on which to store the first data, assigning a key to the physical sector, storing the key and an indication of the physical sector in a key-to-physical medium map, erasure coding the data, including generating parity data associated with the first data, writing the first data and the parity data as a data stripe to each storage device in the array of storage devices and, in response to receiving the write request, sending the key to the file system. Read, update, and delete procedures in the context of a log structured framework are also described.
0 Citations
20 Claims
-
1. A method comprising:
-
receiving a write request for first data from a file system; selecting a physical sector on a selected storage device in an array of storage devices on which to store the first data; assigning a key to the physical sector; storing the key and an indication of the physical sector in a key-to-physical medium map; erasure coding the data, including generating parity data associated with the first data; writing the first data and the parity data as a data stripe to each storage device in the array of storage devices; and in response to receiving the write request, sending the key to the file system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A device comprising:
-
an interface unit configured to enable network communications; a memory; and one or more processors coupled to the interface unit and the memory, and configured to; receive a write request for first data from a file system; select a physical sector on a selected storage device in an array of storage devices on which to store the first data; assign a key to the physical sector; store the key and an indication of the physical sector in a key-to-physical medium map; erasure code the data, including generating parity data associated with the first data; write the first data and the parity data as a data stripe to each storage device in the array of storage devices; and in response to receipt of the write request, send the key to the file system. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A non-transitory computer readable storage media encoded with instructions that, when executed by a processor, cause the processor to:
-
receive a write request for first data from a file system; select a physical sector on a selected storage device in an array of storage devices on which to store the first data; assign a key to the physical sector; store the key and an indication of the physical sector in a key-to-physical medium map; erasure code the data, including generating parity data associated with the first data; write the first data and the parity data as a data stripe to each storage device in the array of storage devices; and in response to receiving of the write request, send the key to the file system. - View Dependent Claims (18, 19, 20)
-
Specification