Storage systems having differentiated storage pools
First Claim
Patent Images
1. An apparatus comprising:
- an interface to a storage device having a plurality of storage locations accessible using logical block names;
a storage controller configured to determine a level of performance for the plurality of storage locations and to partition the plurality of storage locations into a plurality of regions as determined by their different levels of performance;
the storage controller determining the different levels of performance by scanning the storage locations, and specifically by performing experimental read and write operations to determine the different levels of performance from experimental data collected in the experimental read and write operations;
the storage controller further mapping the partitioned regions of the storage locations and aggregate the logical block names of the storage locations in the partitioned regions having an identical level of performance to a selected logical block name space; and
a RAID controller, for assigning a first RAID level configuration to a first set of aggregated logical block names of the storage device, and assigning a second RAID level configuration to a second set of aggregated logical block names of the storage device, the first and second RAID level configurations being different from each other.
15 Assignments
0 Petitions
Accused Products
Abstract
The systems and methods described herein include among other things, systems for providing a block level data storage service. More particularly, the systems and methods of the invention provide a block level data storage service that provides differentiated pools of storage on a single storage device. To this end, the systems and methods described herein leverage the different performance characteristics across the logical block name (LBN) space of the storage device (or devices). These different performance characteristics may be exploited to support two or more classes of storage on a single device.
-
Citations
17 Claims
-
1. An apparatus comprising:
-
an interface to a storage device having a plurality of storage locations accessible using logical block names; a storage controller configured to determine a level of performance for the plurality of storage locations and to partition the plurality of storage locations into a plurality of regions as determined by their different levels of performance; the storage controller determining the different levels of performance by scanning the storage locations, and specifically by performing experimental read and write operations to determine the different levels of performance from experimental data collected in the experimental read and write operations; the storage controller further mapping the partitioned regions of the storage locations and aggregate the logical block names of the storage locations in the partitioned regions having an identical level of performance to a selected logical block name space; and a RAID controller, for assigning a first RAID level configuration to a first set of aggregated logical block names of the storage device, and assigning a second RAID level configuration to a second set of aggregated logical block names of the storage device, the first and second RAID level configurations being different from each other. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for providing differentiated classes of storage performance from a storage device, comprising:
-
accessing the storage device using logical block names for organizing a plurality of the storage locations; determining a level of performance of the plurality of storage locations by partitioning the plurality of storage locations into a plurality of regions according to different levels of performance, wherein the different levels of performance are further determined by performing experimental read and write operations on the storage locations and determining the level of performance as a result of the experimental data collected from the experimental read and write operations; aggregating the logical block names of the storage locations in the partitioned regions having a given level of performance to a selected logical block name space; assigning a first RAID level configuration to a first set of such aggregated logical block names;
having a first level of performance;assigning a second RAID level configuration to a second set of such aggregated logical block names having a second level of performance different from the first level of performance; and the first RAID level configuration and second RAID level configuration being also different from one another;
thereby providing differentiated classes of RAID level storage to one or more clients. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A network storage controller for providing differentiated classes of storage to multiple client data processors, comprising:
-
a network interface to provide access by two or more client data processors; an interface to a storage device having a plurality of storage locations accessible using logical block names; the network storage controller further configured to; determine different levels of performance for the plurality of storage locations and to partition the plurality of storage locations into a plurality of regions as determined by the different levels of performance; further determine the different levels of performance by performing experimental read and write operations on the plurality of storage locations, and measuring data collected in response to the experimental read and write operations; aggregating the logical block names of the storage locations in the partitioned regions having an identical level of performance to a selected logical block name space; and a RAID controller, for assigning a first RAID level configuration to a first set of aggregated logical block names of the storage device, and assigning a second RAID level configuration to a second set of aggregated logical block names of the storage device, the first and second RAID level configurations being different from each other. - View Dependent Claims (16, 17)
-
Specification