Caching for data store clients
AssigneeInternational Business Machines Corporation
InventorArun Iyengar
Life of this patent
Estimating the term…
Abstract
Methods, systems and computer program products for enhanced storage clients. An interface for using a storage service is provided. The interface for each storage service of a plurality of storage services can be implemented within a storage client. A cache can be integrated within the storage client for reducing a number of accesses to a storage service of the plurality of storage services. A compression method in the storage client can reduce a size of data objects. An encryption method in the storage client can preserve data privacy. An application can select at least one storage service of the plurality of storage services and use the at least one storage service via the storage client.
Claims16
A computer-implemented method comprising:
- providing an interface for using a storage service;
- implementing the interface within a storage client, the interface implemented for each of a plurality of storage services;
- integrating a cache within the storage client for reducing a number of accesses to a storage service of the plurality of storage services;
- associating an object expiration time with at least one object stored in the cache;
- keeping the at least one object in the cache after the object expiration time has passed;
- selecting, by an application, through the interface via the storage client at least one storage service in the plurality of storage services and using the at least one storage service via the interface within the storage client;
- monitoring a latency for data accesses from the storage client to the at least one storage service of the plurality of storage services;
- increasing an amount of caching in response to determining based on the monitored latency for data accesses that the latency is increasing;
- and
- decreasing the amount of caching in response to determining based on the monitored latency for data accesses that the latency is decreasing.
An information processing system comprising:
- a storage client comprising an integrated cache for reducing a number of accesses to a storage service of a plurality of storage services;
- a memory;
- and
- a processor communicatively coupled to the memory and to the storage client, wherein the processor, responsive to executing computer instructions, performs operations comprising:
- providing an interface for using a storage service via the storage client;
- implementing the interface within the storage client, the interface implemented for each of a plurality of storage services;
- associating an object expiration time with at least one object stored in the cache;
- keeping the at least one object in the cache after the object expiration time has passed;
- selecting, by an application, through the interface via the storage client at least one storage service in the plurality of storage services and using the at least one storage service via the interface within the storage client;
- monitoring a latency for data accesses from the storage client to the at least one storage service of the plurality of storage services;
- increasing an amount of caching in response to determining based on the monitored latency for data accesses that the latency is increasing;
- and
- decreasing the amount of caching in response to determining based on the monitored latency for data accesses that the latency is decreasing.
A non-transitory computer readable storage medium, comprising computer instructions which, responsive to being executed by a processor cause the processor to perform operations, the processor being in an information processing system comprised of a memory communicatively coupled with the processor, and a storage client comprising an integrated cache for reducing a number of accesses to a storage service of a plurality of storage services, and wherein the processor, responsive to executing the computer instructions, performs operations comprising:
- providing an interface for using a storage service via the storage client;
- implementing the interface for each of a plurality of storage services;
- associating an object expiration time with at least one object stored in the cache;
- keeping the at least one object in the cache after the object expiration time has passed;
- selecting, by an application, through the interface via the storage client at least one storage service in the plurality of storage services and using the at least one storage service via the interface within the storage client;
- monitoring a latency for data accesses from the storage client to the at least one storage service of the plurality of storage services;
- increasing an amount of caching in response to determining based on the monitored latency for data accesses that the latency is increasing;
- and
- decreasing the amount of caching in response to determining based on the monitored latency for data accesses that the latency is decreasing.
Dependencies are inferred from the claim text.