Smart cache for offline data availability

US9936041B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9936041-B2
Application numberUS-201514619208-A
CountryUS
Kind codeB2
Filing dateFeb 11, 2015
Priority dateFeb 11, 2015
Publication dateApr 3, 2018
Grant dateApr 3, 2018

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

At an application executing in a system, a usage pattern of the system and an entry in a data use history of the system are analyzed. Responsive to the analyzing, a data item is identified for caching at the system, wherein the data item is accessible to the system from at a remote data processing system over a data network at a present time, and the data item will be requested from the system at a future time when no network connectivity will be available to the system. A determination is made whether a caching control prevents the caching of the data item at the system. Responsive to the caching control not preventing the caching of the data item, the data item is cached on the system.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for automatically caching remote data for offline availability, the method comprising: analyzing, at an application executing in a first data processing system, a usage pattern of the first data processing system and an entry in a data use history of the first data processing system; identifying, responsive to the analyzing, a data item for caching at the first data processing system, wherein the data item is accessible to the first data processing system from at a remote data processing system over a data network at a present time, and the data item will be requested from the first data processing system at a future time when no network connectivity will be available to the first data processing system; determining whether a caching control prevents the caching of the data item at the first data processing system; caching, responsive to the caching control not preventing the caching of the data item, the data item on the first data processing system; determining, responsive to the analyzing a second usage pattern, that the data item will be requested from a second data processing system at the future time when no network connectivity will be available to the second data processing system; determining whether a second caching control prevents the caching of the data item at the second data processing system; supplying, responsive to the second caching control not preventing the caching of the data item at the second data processing system, information usable to cache the data item on the second data processing system; determining that the second data processing system has access to the remote data processing system at the present time; constructing a manifest at the first data processing system, wherein the manifest includes an identifier of the data item; sending, as a part of the supplying, the manifest to the second data processing system, wherein the second data processing system uses the identifier in the manifest to obtain the data item from the remote data processing system; caching a second data item at the first data processing system; determining, at the application, that a third caching control prevents the caching of the second data item at the second data processing system; and omitting, responsive to the second caching control preventing the caching of the second data item at the second data processing system, information usable to cache the second data item from the manifest. 2. The method of claim 1 , further comprising: caching, at the first data processing system, a second data item from a second remote data processing system; determining that the second data processing system has access to the second remote data processing system at the present time; and sending, as a part of the supplying, the manifest and the second data item to the second data processing system. 3. The method of claim 1 , further comprising: determining that the second data processing system does not have access to the remote data processing system at the present time; and sending, as a part of the supplying, the data item to the second data processing system. 4. The method of claim 1 , wherein a caching control comprises: a policy that determines whether a particular data item can be cached, and wherein the policy is specified by a system in the data network. 5. The method of claim 1 , wherein a caching control comprises: a policy that determines whether a particular data item can be cached, and wherein the policy is specified by a source of the particular data item. 6. The method of claim 1 , wherein a caching control comprises: a policy that determines whether a particular data item can be cached, and wherein the policy is specified by the particular data item. 7. The method of claim 1 , wherein a caching control comprises: a policy that determines whether a particular data item can be cached on the first data processing system, and wherein the policy is specified by one of (i) a system in the data network, and (ii) the first data processing system. 8. The method of claim 1 , wherein the data item is unrelated to an activity being performed at the first data processing system at the present time, and wherein the data item is not specified by a user of the first data processing system. 9. The method of claim 1 , wherein the usage pattern comprises: information describing a period, a location, and an indicator of network availability at the first data processing system at the location during the period. 10. The method of claim 1 , further comprising: constructing the usage pattern using a calendar entry from a calendar application. 11. The method of claim 1 , further comprising: constructing the usage pattern using network availability information from a social media application. 12. The method of claim 1 , further comprising: constructing the usage pattern using network availability information from a search engine. 13. The method of claim 1 , wherein the entry in the data use pattern comprises information identifying a type of data accessed by the first data processing system corresponding to the usage pattern, wherein the data item is of the type of data. 14. The method of claim 1 , wherein the method is embodied in a computer program product comprising one or more computer-readable storage devices and computer-readable program instructions which are stored on the one or more computer-readable tangible storage devices and executed by one or more processors. 15. The method of claim 1 , wherein the method is embodied in a computer system comprising one or more processors, one or more computer-readable memories, one or more computer-readable storage devices and program instructions which are stored on the one or more computer-readable storage devices for execution by the one or more processors via the one or more memories and executed by the one or more processors. 16. A computer program product for automatically caching remote data for offline availability, the computer program product comprising: one or more computer-readable tangible storage devices; program instructions, stored on at least one of the one or more storage devices, to analyze, at an application executing in a first data processing system, a usage pattern of the first data processing system and an entry in a data use history of the first data processing system; program instructions, stored on at least one of the one or more storage devices, to identify, responsive to the analyzing, a data item for caching at the first data processing system, wherein the data item is accessible to the first data processing system from at a remote data processing system over a data network at a present time, and the data item will be requested from the first data processing system at a future time when no network connectivity will be available to the first data processing system; program instructions, stored on at least one of the one or more storage devices, to determine whether a caching control prevents the caching of the data item at the first data processing system; program instructions, stored on at least one of the one or more storage devices, to cache, responsive to the caching control not preventing the caching of the data item, the data item on the first data processing system; program instructions, stored on at least one of the one or more storage devices, to determine, responsive to the analyzing a second usage pattern, that the data item will be requested from a second data processing system at the future time when no network connectivity will be available to the second da

Assignees

Inventors

Classifications

  • Electricity · mapped topic

  • Pre-fetching or pre-delivering data based on network characteristics · CPC title

  • H04L67/568Primary

    Storing data temporarily at an intermediate stage, e.g. caching · CPC title

  • Policies or rules for updating, deleting or replacing the stored data · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9936041B2 cover?
At an application executing in a system, a usage pattern of the system and an entry in a data use history of the system are analyzed. Responsive to the analyzing, a data item is identified for caching at the system, wherein the data item is accessible to the system from at a remote data processing system over a data network at a present time, and the data item will be requested from the system …
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification H04L67/2842. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Apr 03 2018 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).