US2017163759A1PendingUtilityA1

Managing preloading of data on client systems

Assignee: AMAZON TECH INCPriority: Feb 27, 2012Filed: Feb 21, 2017Published: Jun 8, 2017
Est. expiryFeb 27, 2032(~5.6 yrs left)· nominal 20-yr term from priority
H04L 67/1097H04L 67/42H04L 67/2842H04L 67/568G06F 16/9574H04L 67/01
52
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Techniques are described for managing preloading of data for client computing systems. A client computing system may provide one or more persistent data storage caches on local storage, such as to support a particular software program executing on the client computing system (e.g., a Web browser program, with the persistent data storage cache designed to store browser cookies and other data for later access by the Web browser program). Additional data may be stored in such a persistent data storage cache by preloading those data groups before they are requested by the client computing system (e.g., based on interactions of a user of the client computing system with an executing program on the client computing system). Particular data groups to preload may be selected in various manners, including to provide a specified type of minimum functionality to a client computing system based on the preloaded data groups.

Claims

exact text as granted — not AI-modified
1 - 30 . (canceled) 
     
     
         31 . A computer-implemented method, comprising:
 determining, by a server computing system and for a video available to be provided over one or more networks to a client device, a subset of the video that provides a minimum level of functionality when presented on the client device;   initiating, by the server computing system and before the video is requested, preloading of the determined subset of the video to storage local to the client device, wherein an additional portion of the video separate from the determined subset is not preloaded to the storage local to the client device; and   streaming, by the server computing system and after presentation begins of the determined subset of the video, the additional portion of the video over the one or more networks to the client device for presentation.   
     
     
         32 . The computer-implemented method of  claim 31  wherein the determined subset of the video is an initial portion of the video, and wherein the method further comprises determining the minimum level of functionality to enable the initial portion of the video to be immediately presented on the client device while the additional portion of the video is streamed to the client device. 
     
     
         33 . The computer-implemented method of  claim 32  wherein the determining of the minimum level of functionality includes selecting an amount of the initial portion of the video that corresponds to a specified amount of time of presentation. 
     
     
         34 . The computer-implemented method of  claim 32  wherein the determining of the minimum level of functionality includes using information about a current bandwidth of a connection for the streaming of the additional portion of the video. 
     
     
         35 . The computer-implemented method of  claim 32  wherein the determining of the minimum level of functionality includes using information about a predicted bandwidth of a connection for the streaming of the additional portion of the video. 
     
     
         36 . The computer-implemented method of  claim 32  wherein the video is protected by Digital Rights Management (“DRM”) functionality, wherein the determining of the minimum level of functionality for the client device is further based in part on providing access to one or more data files that include DRM information for the video, and wherein the determining of the subset includes selecting the one or more data files as part of the determined sub set. 
     
     
         37 . The computer-implemented method of  claim 32  wherein the video is part of a Web page, wherein the determining of the minimum level of functionality for the client device is further based on providing access to a non-personalized version of the Web page, wherein the determining of the subset includes selecting one or more additional data groups for the non-personalized version of the Web page, and wherein the method further comprises transmitting, by the server computing system after presentation of the non-personalized version of the Web page, additional personalized information for a user of the client device for display in a modified personalized version of the Web page. 
     
     
         38 . The computer-implemented method of  claim 31  further comprising determining the minimum level of functionality to enable the determined subset of the video to act as a data buffer upon selection of the video by a user of the client device. 
     
     
         39 . The computer-implemented method of  claim 31  wherein the storage local to the client device includes one or more non-volatile storage devices, and wherein the method further comprises determining the subset of the video by selecting an amount of the video for the determined subset based at least in part on an amount of storage available in the one or more non-volatile storage devices for the preloading. 
     
     
         40 . The computer-implemented method of  claim 31  wherein the storage local to the client device is a persistent storage cache on the client device, and wherein the initiating preloading includes storing the determined subset of the video in the persistent storage cache. 
     
     
         41 . The computer-implemented method of  claim 31  further comprising, after preloading of the determined subset of the video and under control of the client device:
 receiving a request from a user of the client device corresponding to initiating the presentation of the video; 
 retrieving the determined subset of the video from the storage local to the client device; 
 initiating the presentation of the determined subset of the video on the client device in response to the received request; and 
 requesting the additional portion of the video from the server computing system, and wherein the streaming of the additional portion of the video is performed in response to the requesting of the additional portion. 
 
     
     
         42 . A non-transitory computer-readable medium having stored contents that cause a computer system to at least:
 determine, by the computer system and for a video available to be provided over one or more networks to a client device, a subset of the video that provides a minimum level of functionality when presented on the client device;   initiate, by the computer system, preloading of the determined subset of the video to storage accessible to the client device, wherein an additional portion of the video is not preloaded; and   transmit, after presentation begins of the determined subset of the video on the client device, the additional portion of the video over the one or more networks to the client device.   
     
     
         43 . The non-transitory computer-readable medium of  claim 42  wherein transmitting of the additional portion of the video includes streaming, by the computer system, the additional portion of the video to the client device. 
     
     
         44 . The non-transitory computer-readable medium of  claim 42  wherein transmitting of the additional portion of the video includes downloading the additional portion of the video to the client device while the presentation of the determined subset of the video is ongoing. 
     
     
         45 . The non-transitory computer-readable medium of  claim 42  wherein the storage accessible to the client device is part of a non-volatile storage device attached to the client device. 
     
     
         46 . The non-transitory computer-readable medium of  claim 42  wherein the storage accessible to the client device is part of a network device separate from the client device that is selected to support the client device. 
     
     
         47 . The non-transitory computer-readable medium of  claim 46  wherein the stored contents include software instructions that, when executed, further cause the computer system to select the network device from multiple available network devices based at least in part on the selected network device satisfying one or more indicated measures of proximity to the client device. 
     
     
         48 . A system, comprising:
 one or more hardware processors of one or more computer systems; and   one or more memories with stored instructions that, when executed by the system, cause the system to:
 determine a subset of the data for presentation that provides a minimum level of functionality when presented on a client device; 
 initiate, before the data for presentation is requested from the client device, preloading of the determined subset to storage accessible to the client device, wherein an additional portion of the data for presentation is not preloaded; and 
 stream, after presentation begins of the determined subset on the client device, the additional portion of the data over one or more networks to the client device. 
   
     
     
         49 . The system of  claim 48  wherein the data for presentation includes video data, and wherein the one or more computer systems include a first computer system that performs the preloading and include a second computer system that performs the streaming. 
     
     
         50 . The system of  claim 48  wherein the storage accessible to the client device is non-volatile storage local to the client device, and wherein the stored instructions further cause the system to determine the subset by selecting an amount of data for the determined subset that is based at least in part on an amount of storage available in the non-volatile storage for the preloading.

Join the waitlist — get patent alerts

Track US2017163759A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.