DYNAMIC SELECTION OF STORAGE TIERS
1 Assignment
0 Petitions
Accused Products
Abstract
An operating system is configured to receive a request to store an object that does not specify the location at which the object should be stored. The request might also include an optimization factor and one or more object location factors. The operating system might also generate object location factors or retrieve object location factors from one or more external locations. Object location factors might also be utilized that are based upon properties of the object to be stored. Utilizing the object location factors, and the optimization factor if provided, the operating system dynamically selects an appropriate storage tier for storing the object. The tiers might include a local storage tier, a local network storage tier, a remote network storage tier, and other types of storage tiers. The object is then stored on the selected storage tier. The object may be retrieved from the storage tier at a later time.
17 Citations
44 Claims
-
1-24. -24. (canceled)
-
25. A computer-implemented method for dynamically selecting a storage tier for storing an object from a plurality of storage tiers, the method comprising performing computer-implemented operations for:
-
receiving, at an operating system executing on a computing device, a request to store an object, the request being received from an application executing on the computing device and comprising the object to be stored; monitoring object location factors for the plurality of storage tiers, the plurality of storage tiers including a local storage tier including a memory of a local storage device and a mass storage device of the local storage device, a local network storage tier, and a remote network storage tier, wherein the object location factors include a usage pattern associated with the object; in response to receiving the request, selecting by way of the operating system the selected storage tier from the plurality of storage tiers for storing the object based at least in part upon a type of the object and one or more of the object location factors; causing the object to be stored at the selected storage tier; creating data that indicates the object is stored at the selected storage tier; receiving a request to retrieve the object; and in response to receiving the request to retrieve the object, utilizing the data to identify the selected storage tier for the object, retrieving the object from the selected storage tier, and providing the object in response to the request to retrieve the object. - View Dependent Claims (26, 27, 28, 29, 30)
-
-
31. An apparatus, comprising:
-
a processor; and a non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by the processor, cause the apparatus to; receive, by an operating system executing on the apparatus, a request to store an object, the request being received from an application executing on the apparatus; in response to receiving the request, select, by the operating system, a selected storage location for storing the object based at least in part upon a type of the object and one or more object location factors, wherein the selected storage location is selected from a plurality of storage locations including a local storage location and a network storage location, wherein the local storage location comprises one or more memories and one or more mass storage devices of the apparatus; cause the object to be stored at the selected storage location; create data that indicates the object is stored at the selected storage location; receive a request to retrieve the object; and in response to receiving the request to retrieve the object, utilize the data to identify the selected storage location for the object, retrieve the object from the selected storage location, and provide the object in response to the request to retrieve the object. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38)
-
-
39. A non-transitory computer-readable storage medium having computer-executable instructions stored thereupon which, when executed by a computer, cause the computer to:
-
receive, at an operating system executing on the computer, a request to store an object, the request being received from an application executing on the computer; in response to receiving the request to store the object, determine a selected storage tier for the object based at least in part upon a type of the object and one or more object location factors, the selected storage tier is selected from a local storage tier that comprises one or more memories of the computer, one or more mass storage devices of the computer, and one or more of a local network storage tier, or a remote network storage tier; cause the object to be stored at the selected storage tier; create data that indicates the object is stored at the selected storage tier; receive a request to retrieve the object; and in response to receiving the request to retrieve the object, utilize the data to identify the selected storage tier for the object, retrieve the object from the selected storage tier, and provide the object in response to the request to retrieve the object. - View Dependent Claims (40, 41, 42, 43, 44)
-
Specification