Storage media abstraction for uniform data storage
First Claim
1. A computer-implemented method to store application data, the method comprising:
- receiving metadata describing one or more characteristics of application data generated by an application, at least one of the characteristics provided in the metadata comprising an expected frequency of access of the application data;
automatically determining one or more additional characteristics associated with the application data, at least one of the automatically determined additional characteristics comprising information from a knowledge base describing typical behavior of the application;
receiving information specifying one or more storage location properties for each of one or more potential storage locations;
automatically selecting a storage location for the application data from the one or more potential storage locations based on the metadata describing the one or more characteristics of the application data, the one or more automatically determined additional characteristics, and the one or more storage location properties for each of the one or more potential storage locations; and
providing, to the application, a reference for requesting the application data, wherein the preceding steps are performed by at least one processor.
2 Assignments
0 Petitions
Accused Products
Abstract
A storage abstraction system is described herein that exposes storage from an operating system as a uniform storage device and abstracts from applications the selection of a particular storage location and different properties of storage devices. The application provides the data to store and some information about the application'"'"'s goals for storing the data, and lets the operating system route the data to the right place based on the data'"'"'s characteristics. The operating system may choose to store data anywhere from L2 cache to a cloud-based storage service and anything in between, based on information about the data'"'"'s persistence requirements, expected usage, access frequency, security needs, and so forth. The system lets applications and users focus on expressing their goals and needs for the data, and lets the operating system manage the hardware.
-
Citations
20 Claims
-
1. A computer-implemented method to store application data, the method comprising:
-
receiving metadata describing one or more characteristics of application data generated by an application, at least one of the characteristics provided in the metadata comprising an expected frequency of access of the application data; automatically determining one or more additional characteristics associated with the application data, at least one of the automatically determined additional characteristics comprising information from a knowledge base describing typical behavior of the application; receiving information specifying one or more storage location properties for each of one or more potential storage locations; automatically selecting a storage location for the application data from the one or more potential storage locations based on the metadata describing the one or more characteristics of the application data, the one or more automatically determined additional characteristics, and the one or more storage location properties for each of the one or more potential storage locations; and providing, to the application, a reference for requesting the application data, wherein the preceding steps are performed by at least one processor. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computer system for storage media abstraction to provide uniform data storage, the system comprising:
-
a processor and memory configured to execute software instructions embodied within the following components; one or more data stores that store data received from one or more applications and managed by the system; a storage metadata component that receives application data generated by an application and metadata from the application, and determines from the metadata one or more characteristics of the application data that the application requests to be stored, wherein at least one of the characteristics comprises an expected frequency of access of the application data; a storage policy component that that determines at least one policy associated with the application data, the at least one policy based on typical behavior of the application determined from information in a knowledge base; a location selection component that automatically selects a storage medium from a plurality of different storage media on which to store the application data and a location therein at which to store the application data based on the determined one or more characteristics, and the at least one policy based on the typical behavior of the application and a data access component that provides access to applications to one or more application data items regardless of a storage location of the application data items that was previously selected by the system. - View Dependent Claims (14, 15, 16)
-
-
17. A computer-readable storage device comprising instructions for storing application data, wherein the instructions, upon execution, cause a processor to perform actions comprising:
-
receiving metadata describing one or more characteristics of application data generated by an application, at least one of the characteristics provided in the metadata comprising an expected frequency of access of the application data; automatically determining one or more additional characteristics associated with the application data, at least one of the automatically determined additional characteristics comprising information from a knowledge base describing typical behavior of the application; receiving information specifying one or more storage location properties for each of one or more potential storage locations; automatically selecting a storage location for the application data from the one or more potential storage locations based on the metadata describing the one or more characteristics of the application data, the one or more automatically determined additional characteristics, and the one or more storage location properties for each of the one or more potential storage locations; and providing, to the application, a reference for requesting the application data. - View Dependent Claims (18, 19, 20)
-
Specification