Globally distributed virtual cache for worldwide real-time data access
First Claim
1. A computer-implemented method for caching data within a globally distributed virtual cache, the method comprising:
- provisioning, to a first server implementing a first portion of the globally distributed virtual cache, a first storage resource associated with a first geographic region to cache first data associated with a first computing device, wherein the first computing device is associated with a first user and is coupled to the first server;
determining that second data is streaming to the first computing device from a second computing device that is associated with a second user and is coupled to a second server implementing a second portion of the globally distributed virtual cache associated with a second geographic region located farther away from the first computing device than the first geographic region; and
in response;
automatically provisioning additional cache storage space to at least one of the first server and a third server implementing a third portion of the globally distributed virtual cache associated with a region located between the first geographic region and the second geographic region, andcausing one or more processors included in at least one of the first server and the third server to execute one or more applications that cause the additional cache storage space to buffer the second data while the second data is being streamed from the second computing device to the first computing device.
1 Assignment
0 Petitions
Accused Products
Abstract
A globally distributed virtual cache is configured to provide storage resources for users around the globe. A user of the virtual cache uses a computing device to access data that is stored in storage centers included within the virtual cache. Those storage centers may be surface-based, atmosphere-based, or space-based. When the user accesses the same data repeatedly, the virtual cache migrates that data to a storage center that is closer to the user, thereby reducing latencies associated with accessing that data. When the user attempts to communicate with another user also coupled to the virtual cache, the virtual cache buffers data that is exchanged between those users to facilitate real-time or near real-time communication between those users.
-
Citations
22 Claims
-
1. A computer-implemented method for caching data within a globally distributed virtual cache, the method comprising:
-
provisioning, to a first server implementing a first portion of the globally distributed virtual cache, a first storage resource associated with a first geographic region to cache first data associated with a first computing device, wherein the first computing device is associated with a first user and is coupled to the first server; determining that second data is streaming to the first computing device from a second computing device that is associated with a second user and is coupled to a second server implementing a second portion of the globally distributed virtual cache associated with a second geographic region located farther away from the first computing device than the first geographic region; and in response; automatically provisioning additional cache storage space to at least one of the first server and a third server implementing a third portion of the globally distributed virtual cache associated with a region located between the first geographic region and the second geographic region, and causing one or more processors included in at least one of the first server and the third server to execute one or more applications that cause the additional cache storage space to buffer the second data while the second data is being streamed from the second computing device to the first computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system to cache data, comprising:
a first server machine, including; a memory including a virtual cache engine, a processor coupled to the memory, wherein, when the processor executes the virtual cache engine, the processor; provisions, to a first server implementing a first portion of the globally distributed virtual cache, a first storage resource associated with a first geographic region to cache first data associated with a first computing device, wherein the first computing device is associated with a first user and is coupled to the first server, determines that second data is streaming to the first computing device from a second computing device that is associated with a second user and is coupled to a second server implementing a second portion of the globally distributed virtual cache associated with a second geographic region located farther away from the first computing device than the first geographic region, and in response; automatically provisions additional cache storage space to at least one of the first server and a third server implementing a third portion of the globally distributed virtual cache associated with a region located between the first geographic region and the second geographic region, and cause one or more processors included in at least one of the first server and the third server to execute one or more applications that cause the additional cache storage space to buffer the second data while the second data is being streamed from the second computing device to the first computing device. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
19. A non-transitory computer-readable medium storing program instructions that, when executed by a processor, cause the processor to cache data within a globally distributed virtual cache, by performing the steps of:
-
provisioning, to a first server implementing a first portion of the globally distributed virtual cache, a first storage resource associated with a first geographic region to cache first data associated with a first computing device, wherein the first computing device is associated with a first user and is coupled to the first server; determining that second data is streaming to the first computing device from a second computing device that is associated with a second user and is coupled to a second server implementing a second portion of the globally distributed virtual cache associated with a second geographic region located farther away from the first computing device than the first geographic region; and in response; automatically provisioning additional cache storage space to at least one of the first server and a third server implementing a third portion of the globally distributed virtual cache associated with a region located between the first geographic region and the second geographic region, and causing one or more processors included in at least one of the first server and the third server to execute one or more applications that cause the additional cache storage space to buffer the second data while the second data is being streamed from the second computing device to the first computing device. - View Dependent Claims (20, 21, 22)
-
Specification