Live configurable storage
First Claim
1. A persistent storage entity comprising:
- a plurality of storage tiers, at least one storage tier comprising a first type of persistent storage device and at least one other storage tier comprising a second type of persistent storage device;
one or more computer-readable media storing computer-executable instructions;
one or more processors which, when executing the computer-executable instructions, cause the persistent storage entity to dynamically change a layout configuration for data stored at storage tiers of the persistent storage entity, and wherein dynamically changing the layout configuration comprises;
receiving a request to store data;
identifying requirements for storing the received data, wherein the requirements comprise at least one of performance relating to how quickly the data is required to be accessed, or resiliency relating to maintaining availability within a specified statistical figure of the data in the event of a hardware failure at the persistent storage entity;
in accordance with either or both of the performance and resilience requirements identified for the received data, changing an initial data layout of the at least one storage tier, wherein changing the initial data layout does not disturb performance or resilience requirements of data already stored in the initial data layout; and
using the changed data layout of the at least one storage tier, storing the data at the at least one storage tier.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for storing data in a dynamic fashion. The system includes a storage entity. The storage entity includes portions of a plurality of different persistent storage devices. Each storage device has a set of constraints. The storage entity is configured to store data in a dynamic fashion in a layout on the persistent storage devices of the storage entity that meets the different data requirements for the data while still being within the constraints for the persistent storage devices. The storage entity is configured to change the layout for a portion of the data as requirements related to at least one of performance or resiliency for a portion of the data change while the storage entity continues to provide the data from the storage entity.
-
Citations
21 Claims
-
1. A persistent storage entity comprising:
-
a plurality of storage tiers, at least one storage tier comprising a first type of persistent storage device and at least one other storage tier comprising a second type of persistent storage device; one or more computer-readable media storing computer-executable instructions; one or more processors which, when executing the computer-executable instructions, cause the persistent storage entity to dynamically change a layout configuration for data stored at storage tiers of the persistent storage entity, and wherein dynamically changing the layout configuration comprises; receiving a request to store data; identifying requirements for storing the received data, wherein the requirements comprise at least one of performance relating to how quickly the data is required to be accessed, or resiliency relating to maintaining availability within a specified statistical figure of the data in the event of a hardware failure at the persistent storage entity; in accordance with either or both of the performance and resilience requirements identified for the received data, changing an initial data layout of the at least one storage tier, wherein changing the initial data layout does not disturb performance or resilience requirements of data already stored in the initial data layout; and using the changed data layout of the at least one storage tier, storing the data at the at least one storage tier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-implemented method of changing a layout configuration for data stored at storage tiers of a persistent storage entity to allow for changing requirements regarding performance or resiliency of data, the computer-implemented method being performed by one or more processors executing computer executable instructions for the computer-implemented method, and the computer-implemented method comprising:
-
receiving at a persistent storage entity a request to store data; identifying requirements for storing the received data, wherein the requirements comprise at least one of performance relating to how quickly the data is required to be accessed, or resiliency relating to maintaining availability within a specified statistical figure of the data in the event of a hardware failure at the persistent storage entity; in accordance with either or both of the performance and resilience requirements identified for the received data, changing an initial data layout of the at least one storage tier, wherein changing the initial data layout does not disturb performance or resilience requirements of data already stored in the initial data layout; and using the changed data layout of the at least one storage tier, storing the data at the at least one storage tier. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer-implemented method of dynamically changing a layout configuration for data stored at a persistent storage entity to allow for changing requirements regarding performance or resiliency of data that is stored over time, the computer-implemented method being performed by one or more processors executing computer executable instructions for the computer-implemented method, and the computer-implemented method computer-implemented method comprising:
-
receiving at a persistent storage entity a request to store data, wherein the persistent storage entity has at least one storage tier comprising at least a first type of persistent storage device; identifying requirements for storing the received data, wherein the requirements comprise at least one of performance relating to how quickly the data is required to be accessed, or resiliency relating to maintaining availability within a specified statistical figure of the data in the event of a hardware failure at the persistent storage entity; identifying an initial data layout used at the at least one storage tier of the persistent storage entity, including identifying constraints of the at least first type of persistent storage device; in accordance with either or both of the performance and resilience requirements identified for the received data, dynamically changing the initial data layout of the at least one storage tier while the persistent storage entity is storing and providing data, and wherein the dynamic change does not alter the identified constraints for the at least first type of persistent storage device so that performance or resilience requirements of data already stored in the initial data layout is undisturbed; and using the changed data layout of the at least one storage tier, storing the data at the at least one storage tier. - View Dependent Claims (21)
-
Specification