Systems and methods for predictive caching
AssigneeMicroStrategy Incorporated
InventorsChi Ho Yoon, Zhijian Xu, Ji Jin, Shrimohan Damani
Life of this patent
Estimating the term…
Abstract
A method for predictive caching may include determining previous user activity related to data items and/or documents, receiving a request to view a document from a user, predicting data items to pre-cache based on the previous user activity and at least one other factor, prioritizing the predicted data items for pre-caching, dividing the prioritized data items for pre-caching into a plurality of groups, downloading prioritized data items for each group among the plurality of groups according to the prioritization of the predicted data items, and displaying a view of the document after data items, corresponding to the request, are received.
Claims17
A computer-implemented method for predictive caching, the method comprising:
- determining previous user activity related to data items and/or documents;
- receiving a request to view a document from a user;
- predicting data items to pipe-cache based on the previous user activity and at least one other factor;
- prioritizing the predicted data items for pre-caching;
- dividing the prioritized data items for pre-caching into a plurality of groups;
- downloading prioritized data items for each group among the plurality of groups according to the prioritization of the predicted data items;
- and
- displaying a view of the document after data items, corresponding to the request, are received;
- wherein downloading prioritized data items further comprises:
- checking a status of a server from which the data items will be downloaded and a load level of the server from which the data items will be downloaded;
- determining that the server is unable to download the data items;
- upon determining that the server is unable to download the data items, applying a probability to determine not to send a request for the data items to the sever;
- upon determining not to send the request to the server, waiting a random time interval;
- and
- re-checking the status of the server and the load level of the server.
A system for predictive caching, the system comprising:
- at least one data storage device storing instructions for predictive caching in an electronic storage medium;
- and
- at least one processor configured to execute the instructions to perform a method including:
- determining previous user activity related to data items and/or documents;
- receiving a request to view a document from a user;
- predicting data items to pre-cache based on the previous user activity and at least one other factor;
- prioritizing the predicted data items for pre-caching;
- dividing the prioritized data items for pre-caching into a plurality of groups;
- downloading prioritized data items for each group among the plurality of groups according to the prioritization of the predicted data items;
- and
- displaying a view of the document after data items, corresponding to the request, are received;
- wherein downloading prioritized data items further comprises:
- checking a status of a server from which the data items will be downloaded and a load level of the server from which the data items will be downloaded;
- determining that the server is unable to download the data items;
- upon determining that the server is unable to download the data items, applying a probability to determine not to send a request for the data items to the server;
- upon determining not to send the request to the server, waiting a random time interval;
- and
- re-checking the status of the server and the load level of the server.
A non-transitory machine-readable medium storing instructions that, when executed by a computing system, causes the computing system to perform a method for predictive caching, the method including:
- determining previous user activity related to data items and/or documents;
- receiving a request to view a document from a user;
- predicting data items to pre-cache based on the previous user activity and at least one other factor;
- prioritizing the predicted data items for pre-caching;
- dividing the prioritized data items for pre-caching into a plurality of groups;
- downloading prioritized data items for each group among the plurality of groups according to the prioritization of the predicted data items;
- and
- displaying a view of the document after data items, corresponding to the request, are received;
- wherein downloading prioritized data items further comprises:
- checking a status of a server from which the data items will be downloaded and a load level of the server from which the data items will be downloaded;
- determining that the server is unable to download the data items;
- upon determining that the server is unable to download the data items, applying a probability to determine not to send a request for the data items to the server;
- upon determining not to send the request to the server, waiting a random time interval;
- and
- re-checking the status of the server and the load level of the server.
Dependencies are inferred from the claim text.