Multi-tier dynamic data caching
US-2017366637-A1 · Dec 21, 2017 · US
US10382552B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10382552-B2 |
| Application number | US-201615375274-A |
| Country | US |
| Kind code | B2 |
| Filing date | Dec 12, 2016 |
| Priority date | Dec 12, 2016 |
| Publication date | Aug 13, 2019 |
| Grant date | Aug 13, 2019 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A device receives a user election of participation in a distributed cache service, and receives user selection of one or more devices, that are each associated with the user, to register with the distributed cache service as participant nodes. The device determines an amount of available storage offered to the cache service for each of the one or more participant nodes, and determines an available bandwidth of a respective network connection associated with each of the one or more participant nodes. The device admits selected devices of the one or more participant nodes into the distributed cache service based on the available storage and the available bandwidth, and interleaves storage of multiple chunks of content across a subset of the participant nodes admitted into the distributed cache service. The device enables client access to the multiple chunks of content interleaved across the subset of the participant nodes.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: receiving a user election of participation in a distributed cache service; receiving a user selection of one or more devices, that are each associated with the user, to register with the distributed cache service as participant nodes, wherein the participant nodes include cache applications that facilitate caching chunks of content for one or more user devices; determining an amount of available storage offered to the distributed cache service for reach of the one or more devices; determining an available bandwidth of a respective network connection associated with each of the one or more devices; admitting selected devices of the one or more devices as participant noes into the distributed cache based on the available storage and the available bandwidth for each of the selected devices; interleaving storage of multiple chunks of content across a subset of the participant nodes admitted into the distributed cache service; and enabling client access to the multiple chunks of content interleaved across the subset of the participant nodes. 2. The method of claim 1 , further comprising: identifying the content for caching; dividing the content into the multiple chunks of content; and encrypting each of the multiple chunks of content. 3. The method of claim 1 , further comprising: determining a calendar of availability, for each of the one or more participant nodes, that indicates a pattern of availability or non-availability to the distributed cache service, wherein admitting the selected devices of the one or more participant nodes into the distributed cache service is further based on the calendar of availability for each of the one or more participant nodes. 4. The method of claim 1 , further comprising: determining the subset of the participant nodes, for caching the multiple chunks of content, based on a network location of the participant nodes, based on load balancing principles, or based on network traffic loads in the vicinities of the participant nodes. 5. The method of claim 1 , wherein enabling the client access to the multiple chunks of content interleaved across the subset of the participant nodes comprises: receiving a request for the content from a client; obtaining device network addresses, unique device identifiers, and storage locations at which the multiple chunks of the content are interleaved; and sending a chunk access permission, the device network addresses, the unique device identifiers, and the storage locations, to the client for retrieval of the content. 6. The method of claim 1 , further comprising: determining, after admitting the selected devices of the one or more devices as participant nodes into the distributed cache service, a current amount of available storage of each of the selected devices; determining, after admitting the selected devices of the one or more devices as participant nodes into the distributed cache service, a current bandwidth of a respective connection to each of the selected devices; and removing ones of the selected devices from availability for use in the distributed cache service based on the determined current amount of available storage and based on the determined current bandwidth. 7. The method of claim 1 , further comprising: determining, after admitting the selected devices of the one or more devices as participant nodes into the distributed cache service, a calendar of availability, for each of the selected devices that indicates a pattern of availability or non-availability to the distributed cache service; and removing ones of the selected devices from availability for use in the distributed cache service based on the determined calendar of availability for each of the selected devices. 8. A system, comprising: at least one communication interface configured to connect to a network and to: receive a user election of participation in a distributed cache service, and receive a user selection of one or more devices, that are each associated with the user, to register with the distributed cache service as participant nodes, wherein the participant nodes include cache applications that facilitate caching chunks of content for one or more user devices; and at least one processing unit configured to: determine an amount of available storage offered to the distributed cache service for reach of the one or more devices; determine an available bandwidth of a respective network connection associated with each of the one or more devices; admit selected devices of the one or more devices as participant noes into the distributed cache based on the available storage and the available bandwidth for each of the selected devices; interleave storage of multiple chunks of content across a subset of the participant nodes admitted into the distributed cache service; and enable client access to the multiple chunks of content interleaved across the subset of the participant nodes. 9. The system of claim 8 , wherein the at least one processing unit is further configured to: identify the content for caching, and divide the content into the multiple chunks of content. 10. The system of claim 8 , wherein the at least one processing unit is further configured to: determine the subset of the participant nodes, for caching the multiple chunks of content, based on a network location of the participant nodes, based on load balancing principles, or based on network traffic loads in the vicinities of the participant nodes. 11. The system of claim 8 , wherein the at least one communication interface is further configured to receive a request for the content from a client, and wherein, when enabling the client access to the multiple chunks of content interleaved across the subset of the participant nodes, the at least one processing unit is further configured to: obtain device network addresses, unique device identifiers, and storage locations at which the multiple chunks of the content are interleaved, and send a chunk access permission, the device network addresses, the unique device identifiers, and the storage locations, to the client for retrieval of the content. 12. The system of claim 8 , wherein the at least one processing unit is further configured to: determine, after admitting the selected devices of the one or more devices as participant nodes into the distributed cache service, a current amount of available storage of each of the selected devices, and remove ones of the selected devices from availability for use in the distributed cache service based on the determined current amount of available storage. 13. The system of claim 8 , wherein the at least one processing unit is further configured to: determine, after admitting the selected devices of the one or more devices as participant nodes into the distributed cache service, a current bandwidth of a respective connection to each of the selected devices, and remove ones of the selected devices from availability for use in the distributed cache service based on the determined current bandwidth. 14. A non-transitory storage medium storing instructions executable by a device, wherein the instructions comprise instructions to: receive a user election of participation in a distributed cache service; receive a user selection of one or more devices, that are each associated with the user, to register with the distributed cache service as participant nodes, wherein the participant nodes include cache applications that facilitate caching chunks of content; determine an amount of available storage offered to the distributed cache service for each of
Server selection for load balancing · CPC title
Electricity · mapped topic
for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS] · CPC title
Storing data temporarily at an intermediate stage, e.g. caching · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.