Systems and methods for storing digital content
First Claim
1. A computer-implemented system for storing digital content in a remote storage location, the system including:
- a gateway module configured to receive storage request data representing a request to store digital content, the storage request data including data identifying a source location of the digital content;
an allocator module configured to;
determine from a plurality of remote storage locations the remote storage location at which the digital content is to be stored, wherein the plurality of remote storage locations includes a first location accessible using a first message format and a second location accessible using a second different message format, wherein at least one agent process communicates with the remote storage location;
receive at least one status message, from one or more of the at least one agent processes, containing data representing whether or not previous digital content has been successfully stored;
dynamically create one or more additional agent processes that communicate with the remote storage location,wherein the one or more additional agent processes are overlay processes external to the storage location, and the one or more additional agent processes are configured to transfer the digital content,wherein the creation of the one or more additional agent processes is in response to;
a determination, based on the at least one status message, that adding the digital content to a queue of the at least one agent process will cause the queue to exceed capacity threshold; and
/ora determination that no agent processes that communicate with the remote storage location are available;
send, to the one or more additional agent processes that communicate with the remote storage location, transfer request data representing a request to retrieve the digital content from the source location, and store it in the remote storage location, wherein the one or more additional agent processes return a content location after storing the digital content, and the stored content location is for directly accessing the storage location without utilizing the one or more additional agent processes.
0 Assignments
0 Petitions
Accused Products
Abstract
An overlay content distribution network provides a consistent interface to enable the storage and retrieval of digital content at multiple storage providers (210). An allocator component (140) instantiates and destroys location and/or provider specific agent processes (240) which transfer digital content to and from the storage providers (210). Encoding agent processes (250) are geographically located near the storage providers (210) at which the content is to be stored. Content may be stored in a manner which guarantees content availability, each storage provider (210) being periodically probed by a Quality of Service (QoS) probes distributed within the network.
4 Citations
24 Claims
-
1. A computer-implemented system for storing digital content in a remote storage location, the system including:
-
a gateway module configured to receive storage request data representing a request to store digital content, the storage request data including data identifying a source location of the digital content; an allocator module configured to; determine from a plurality of remote storage locations the remote storage location at which the digital content is to be stored, wherein the plurality of remote storage locations includes a first location accessible using a first message format and a second location accessible using a second different message format, wherein at least one agent process communicates with the remote storage location; receive at least one status message, from one or more of the at least one agent processes, containing data representing whether or not previous digital content has been successfully stored; dynamically create one or more additional agent processes that communicate with the remote storage location, wherein the one or more additional agent processes are overlay processes external to the storage location, and the one or more additional agent processes are configured to transfer the digital content, wherein the creation of the one or more additional agent processes is in response to; a determination, based on the at least one status message, that adding the digital content to a queue of the at least one agent process will cause the queue to exceed capacity threshold; and
/ora determination that no agent processes that communicate with the remote storage location are available; send, to the one or more additional agent processes that communicate with the remote storage location, transfer request data representing a request to retrieve the digital content from the source location, and store it in the remote storage location, wherein the one or more additional agent processes return a content location after storing the digital content, and the stored content location is for directly accessing the storage location without utilizing the one or more additional agent processes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for storing content in a storage location, the method including:
-
receiving storage request data representing a request to store digital content, the storage request data including data identifying a source location of the digital content; determining from a plurality of remote storage locations the storage location at which the digital content is to be stored, wherein the plurality of remote storage locations includes a first location accessible using a first message format and a second location accessible using a second different message format, wherein at least one agent process connects to the storage location; receiving at least one status message, from one or more of the at least one agent processes, containing data representing whether or not previous digital content has been successfully stored; dynamically creating one or more additional agent processes that connect to the storage location, wherein the one or more additional agent processes are overlay processes external to the storage location, and the one or more additional agent processes are configured to transfer the digital content; wherein the creation of the one or more additional agent processes is in response to; a determination, based on the at least one status message, that adding the digital content to a queue of the at least one agent process will cause the queue to exceed capacity threshold; and
/ora determination that no agent processes that communicates with the storage location are available; and sending, to the one or more additional agent processes that connect to the storage location, transfer request data representing a request to retrieve the digital content from the source location, and store it in the storage location, wherein the one or more additional agent processes return a content location after storing the digital content, and the stored content location is for directly accessing the storage location without utilizing the one or more additional agent processes. - View Dependent Claims (18, 19, 20, 21, 22, 23)
-
-
24. A non-transitory computer-readable storage medium storing instructions that, when executed by a computing system, cause the computing system to perform operations for storing content in a storage location, the operations comprising:
-
receiving storage request data representing a request to store digital content, the storage request data including data identifying a source location of the digital content; determining from a plurality of remote storage locations the storage location at which the digital content is to be stored, wherein the plurality of remote storage locations includes a first location accessible using a first message format and a second location accessible using a second different message format, wherein at least one agent process connects to the storage location; receiving at least one status message, from one or more of the at least one agent processes, containing data representing whether or not previous digital content has been successfully stored; dynamically creating one or more additional agent processes that connect to the storage location, wherein the one or more additional agent processes are overlay processes external to the storage location, and the one or more additional agent processes are configured to transfer the digital content; wherein the creation of the one or more additional agent processes is in response to; a determination, based on the at least one status message, that adding the digital content to a queue of the at least one agent process will cause the queue to exceed capacity threshold; and
/ora determination that no agent processes that communicates with the storage location are available; and sending, to the one or more additional agent processes that connect to the storage location, transfer request data representing a request to retrieve the digital content from the source location, and store it in the storage location, wherein the one or more additional agent processes return a content location after storing the digital content, and the stored content location is for directly accessing the storage location without utilizing the one or more additional agent processes.
-
Specification