Method for writing contiguous arrays of stripes in a RAID storage system using mapped block writes
DCFirst Claim
Patent Images
1. A method for controlling storage of data blocks in a plurality of storage devices, the method comprising:
- buffering a plurality of write requests associated with the data blocks for a single write transaction;
defining a group of storage blocks, the group comprising a plurality of storage blocks in each of the plurality of storage devices; and
associating each data block with a respective one of the storage blocks across the plurality of stripes to generate an association; and
transmitting the association to a storage device manager for processing of the single write transaction.
2 Assignments
Litigations
0 Petitions
Accused Products
Abstract
The invention features a method for controlling storage of data in a plurality of storage devices each including storage blocks, for example, in a RAID array. The method includes receiving a plurality of write requests associated with data, and buffering the write requests. A file system defines a group of storage blocks, responsive to disk topology information. The group includes a plurality of storage blocks in each of the plurality of storage devices. Each data block of the data to be written is associated with a respective one of the storage blocks, for transmitting the association to the plurality of storage devices.
190 Citations
52 Claims
-
1. A method for controlling storage of data blocks in a plurality of storage devices, the method comprising:
-
buffering a plurality of write requests associated with the data blocks for a single write transaction; defining a group of storage blocks, the group comprising a plurality of storage blocks in each of the plurality of storage devices; and associating each data block with a respective one of the storage blocks across the plurality of stripes to generate an association; and transmitting the association to a storage device manager for processing of the single write transaction. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A device for controlling storage of data in a plurality of storage devices each having storage blocks configured in a plurality of parallel stripes, the device comprising:
-
a buffer collecting write requests, each request associated with data blocks; a processor defining a group of storage blocks, the group having a plurality of storage blocks in each of the plurality of storage devices, the processor associating each data block with a respective one of the storage blocks across the plurality of stripes for a single write transaction; and a transmitter transmitting an association to a storage device manager for processing of the single write transaction.
-
-
19. A device for controlling storage of data in a plurality of storage devices each having storage blocks configured in a plurality of parallel stripes, the device comprising:
-
means for buffering a plurality of write requests associated with data blocks for a single write transaction; means for defining a group of storage blocks, the group having a plurality of storage blocks in each of the plurality of storage devices; and means for associating each data block with a respective one of the storage blocks across the plurality of stripes, for transmitting an association to a storage device manager for processing of the single write transaction.
-
-
20. A computer readable media, comprising:
- the computer readable media containing instructions for execution in a processor for the practice of the method of,
buffering a plurality of write requests associated with data blocks for a single write transaction; defining a group of storage blocks, the group comprising a plurality of storage blocks configured in a plurality of parallel stripes in each of a plurality of storage devices; and associating each data block with a respective one of the storage blocks across the plurality of stripes, for transmitting an association to a storage device manager for processing of the single write transaction.
- the computer readable media containing instructions for execution in a processor for the practice of the method of,
-
21. A method for controlling storage of data, comprising:
-
receiving one or more write requests associated with data blocks; receiving topological information associated with storage blocks configured in a plurality of parallel stripes of a storage system; associating the data blocks with one or more storage blocks across the plurality of stripes as an association; and writing the data blocks, in response to the association, to the one or more storage devices in a single write request. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38)
-
-
39. A storage system, comprising:
-
a file system, the file system to receive one of more write requests associated with data blocks; a storage device manager, the storage device manager to generate topological information of storage blocks configured in a plurality of parallel stripes of one or more storage devices, and to send the topological information to the file system; and an association generated in the file system, the association to associate the data blocks with one or more storage blocks across the plurality of stripes of the one or more storage devices, the association to be sent to the storage device manager, the storage device manager to write the data blocks, in response to the association, to the one or more storage blocks as a single write request. - View Dependent Claims (40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50)
-
-
51. A storage system, comprising:
-
means for receiving one or more write requests associated with data blocks; means for receiving topological information associated with storage blocks configured in a plurality of parallel stripes of a storage system; means for associating the data blocks with one or more storage blocks across the plurality of stripes as an association; and means for writing the data blocks, in response to the association, to the one or more storage devices in a single write request.
-
-
52. A computer readable media, comprising:
- the computer readable media containing instructions for execution in a processor for the practice of the method of,
receiving one or more write requests associated with data blocks; receiving topological information associated with storage blocks configured in a plurality of parallel stripes of a storage system; associating the data blocks with one or more storage blocks across the plurality of stripes as an association; and writing the data blocks, in response to the association, to the one or more storage devices in a single write request.
- the computer readable media containing instructions for execution in a processor for the practice of the method of,
Specification