Patent application number | Description | Published |
20090172191 | SYSTEM AND METHOD FOR ROUTING SERVICE REQUESTS - A computer-implemented method routes service requests to services in a service framework provided by a plurality of hosts. The method comprises receiving a service request for a service in the service framework and discovering a plurality of candidate hosts that host the service. The plurality of candidate hosts are a subset of the plurality of hosts. The method further comprises selecting a candidate host from the plurality of candidate hosts based on measured latencies for the plurality of candidate hosts and routing the service request to the selected candidate host. | 07-02-2009 |
20090248786 | REQUEST ROUTING BASED ON CLASS - A system and method for management and processing of resource requests is provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a requested resource from the client computing device. The content delivery network service provider associates the client computing device with a cluster of other client computing devices. Based on routing information for the cluster, the content delivery network service provider routes the DNS query. The process can further include monitoring performance data associated with the delivery of the requested resource and updating the routing information for the cluster based on the performance data for use in processing subsequent requests from client computing devices in the cluster. | 10-01-2009 |
20090248787 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing content to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the content information. | 10-01-2009 |
20090248858 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing additional content, such as advertisement content or other additional content provided in anticipation of future resource requests, to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the additional content information. | 10-01-2009 |
20090248893 | REQUEST ROUTING - A system, method and computer-readable medium for request routing. A client request processing a resource identifier for requested content transmits a first DNS query to a content delivery network service provider. The content delivery network service provider transmits an alternative resource identifier in response to the client computing device DNS query. The client computing device then issues a second DNS query to the same content delivery network service provider. The content delivery network service provider can then either resolve the second DNS query with an IP address of a cache component or transmit another alternative resource identifier that will resolve to the content delivery network service provider. The process can repeat with the content delivery network service provider's network until a DNS server resolves a DNS query from the client computing device. | 10-01-2009 |
20090327517 | Request routing using network computing components - A system, method and computer-readable medium for request routing. A DNS server at a content delivery network service provider obtains a DNS query corresponding to a resource requested from a client computing device and associated with a first resource identifier. The first resource identifier includes a first portion with DNS information and a second portion with path information. The DNS server selects a network computing component for processing the requested resource based on the DNS portion of the resource identifier and transmits information identifying the selected network computing component to the client computing device. | 12-31-2009 |
20100125675 | UPDATING ROUTING INFORMATION BASED ON CLIENT LOCATION - A system, method, and computer-readable medium for updating request routing information associated with client location information are provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a resource identifier for requested content from the client computing device. The content delivery network service provider obtains a query IP address corresponding to the client computing device. Based on routing information associated with the query IP address, the content delivery network service provider routes the DNS query. The process further includes monitoring performance data associated with the transmission of the requested resource and updating routing information associated with the query IP address based on the performance data for use in processing subsequent requests form the client computing device. | 05-20-2010 |
20100250748 | Monitoring and Automatic Scaling of Data Volumes - Aspects of a data environment, such as various capacities of data stores and instances, can be managed using a separate control environment. A monitoring component of the control environment can periodically communicate with the data environment to obtain performance information. The information is analyzed, using algorithms such as trending and extrapolation algorithms, to determine any recommended scaling of resources in the data environment. The scaling can be performed automatically, or as authorized by a customer. A workflow can be instantiated that includes tasks necessary to perform the scaling. The scaling of storage capacity can be performed without affecting the availability of the data store. | 09-30-2010 |
20100251002 | Monitoring and Automated Recovery of Data Instances - The monitoring and recovery of data instances, data stores, and other such components in a data environment can be performed automatically using a separate control environment. A monitoring component of the control plane can include a set of event processors for monitoring a workload of the data environment, where an event processor detecting a problem in the data plane can cause a recovery workflow to generated in order to recover from the detected problem. The event processors can communicate with each other such that if one of the event processors becomes unavailable, the other event processors in a set are able to automatically redistribute responsibility for the workload. | 09-30-2010 |
20100251242 | Control Service for Relational Data Management - Aspects of a data environment, such as the creation, provisioning, and management of data stores and instances, are managed using a separate control environment. A user can call into an externally-facing interface of the control environment, the call being analyzed to determine actions to be performed in the data environment. A monitoring component of the control plane also can periodically communicate with the data environment to determine any necessary actions to be performed, such as to recover from faults or events in the data environment. A workflow can be instantiated that includes tasks necessary to perform the action. For each task, state information can be passed to a component in the data environment operable to perform the task, until all tasks for an action are completed. Data in the data environment can be accessed directly using an externally-facing interface of the data environment, without accessing the control plane. | 09-30-2010 |
20110072110 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing additional content, such as advertisement content or other additional content provided in anticipation of future resource requests, to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the additional content information. | 03-24-2011 |
20110072134 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing additional content, such as advertisement content or other additional content provided in anticipation of future resource requests, to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the additional content information. | 03-24-2011 |
20110072140 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing additional content, such as advertisement content or other additional content provided in anticipation of future resource requests, to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the additional content information. | 03-24-2011 |
20110078240 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing additional content, such as advertisement content or other additional content provided in anticipation of future resource requests, to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the additional content information. | 03-31-2011 |
20110083138 | SELF-SERVICE CONFIGURATION FOR DATA ENVIRONMENT - The values of various operating and/or configuration parameters of a data environment are managed using a set of self-service Web services and interfaces of a separate control environment. A customer can submit a Web services call into an externally-facing application programming interface (API) or other such externally-facing interface of the control environment. The API receiving the call, as well as information extracted from the call, can be used to determine appropriate adjustments to be performed in the data environment. A workflow can be instantiated that includes tasks used to validate and/or apply the adjustments to the target resources, such as databases, data instances, data stores, instance classes, etc. Various real-time functions such as monitoring and auto-scaling also can be performed via the control plane. | 04-07-2011 |
20110099146 | MONITORING OF REPLICATED DATA INSTANCES - Replicated instances in a database environment provide for automatic failover and recovery. A monitoring component can obtain a lease enabling the component to periodically communicate with, and monitor, one or more data instances in the data environment, where the data instance can be a replicated instance including a primary and a secondary replica. For a large number of instances, the data environment can be partitioned such that each monitoring component can be assigned a partition of the workload. In the event of a failure of a monitoring component, the instances can be repartitioned and the remaining monitoring components can be assigned to the new partitions to substantially evenly distribute the workload. | 04-28-2011 |
20110099147 | PROVISIONING AND MANAGING REPLICATED DATA INSTANCES - A replicated database instance can be provisioned that provides primary and secondary replicas that can be provisioned in different data zones or geographical locations. The database can be installed on the primary replica, and both the primary and secondary replica can have installed a block level replication mechanism that allows any I/O operation to be replicated by between the primary and secondary replicas. Any failure or outage of the primary replica can be addressed by performing a failover operation to the secondary replica. A DNS name or other such approach can be used such that the name can be aliased to the secondary replica during a failover, such that there is no action needed on the part of the customer to utilize the “new” primary replica. The creation of the database and provisioning of the replicated instance can be initiated using a Web service call to a control environment. | 04-28-2011 |
20110099420 | FAILOVER AND RECOVERY FOR REPLICATED DATA INSTANCES - Replicated instances in a database environment provide for automatic failover and recovery. A monitoring component can periodically communicate with a primary and a secondary replica for an instance, with each capable of residing in a separate data zone or geographic location to provide a level of reliability and availability. A database running on the primary instance can have information synchronously replicated to the secondary replica at a block level, such that the primary and secondary replicas are in sync. In the event that the monitoring component is not able to communicate with one of the replicas, the monitoring component can attempt to determine whether those replicas can communicate with each other, as well as whether the replicas have the same data generation version. Depending on the state information, the monitoring component can automatically perform a recovery operation, such as to failover to the secondary replica or perform secondary replica recovery. | 04-28-2011 |
20110153736 | REQUEST ROUTING USING NETWORK COMPUTING COMPONENTS - A system, method and computer-readable medium for request routing. A DNS server at a content delivery network service provider obtains a DNS query corresponding to a resource requested from a client computing device and associated with a first resource identifier. The first resource identifier includes a first portion with DNS information and a second portion with path information. The DNS server selects a network computing component for processing the requested resource based on the DNS portion of the resource identifier and transmits information identifying the selected network computing component to the client computing device. | 06-23-2011 |
20110184920 | SYSTEM AND METHOD FOR PROVIDING HIGH AVAILABILITY DATA - An embodiment relates to a computer-implemented data processing system and method for storing a data set at a plurality of data centers. The data centers and hosts within the data centers may, for example, be organized according to a multi-tiered ring arrangement. A hashing arrangement may be used to implement the ring arrangement to select the data centers and hosts where the writing and reading of the data sets occurs. Version histories may also be written and read at the hosts and may be used to evaluate causal relationships between the data sets after the reading occurs. | 07-28-2011 |
20110208876 | REQUEST ROUTING BASED ON CLASS - A system and method for management and processing of resource requests is provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a requested resource from the client computing device. The content delivery network service provider associates the client computing device with a cluster of other client computing devices. Based on routing information for the cluster, the content delivery network service provider routes the DNS query. The process can further include monitoring performance data associated with the delivery of the requested resource and updating the routing information for the cluster based on the performance data for use in processing subsequent requests from client computing devices in the cluster. | 08-25-2011 |
20110252142 | UPDATING ROUTING INFORMATION BASED ON CLIENT LOCATION - A system, method, and computer-readable medium for updating request routing information associated with client location information are provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a resource identifier for requested content from the client computing device. The content delivery network service provider obtains a query IP address corresponding to the client computing device. Based on routing information associated with the query IP address, the content delivery network service provider routes the DNS query. The process further includes monitoring performance data associated with the transmission of the requested resource and updating routing information associated with the query IP address based on the performance data for use in processing subsequent requests form the client computing device. | 10-13-2011 |
20110258253 | LOCALITY BASED CONTENT DISTRIBUTION - A system and method for content distribution are provided. A content provider generates a network topology having one or more subnetworks made up of content sources. The content provider segments content, such as applications, into segments for distribution. The content provider then distributes the content such that for each identified subnetwork, each content segment is distributed to a content source. Subsequent, client computing device requests for content can be serviced by selecting a content source in a particular subnetwork selected for delivering the requested content to the client computing device to minimize traffic flow of the requested content through the nodes of the distribution network. | 10-20-2011 |
20120030339 | SYSTEM AND METHOD FOR ROUTING SERVICE REQUESTS - A computer-implemented method routes service requests to services in a service framework provided by a plurality of hosts. The method comprises receiving a service request for a service in the service framework and discovering a plurality of candidate hosts that host the service. The plurality of candidate hosts are a subset of the plurality of hosts. The method further comprises selecting a candidate host from the plurality of candidate hosts based on measured latencies for the plurality of candidate hosts and routing the service request to the selected candidate host. | 02-02-2012 |
20120072600 | MANAGING CONTENT DELIVERY NETWORK SERVICE PROVIDERS - A system, method, and computer readable medium for managing CDN service providers are provided. A network storage provider storing one or more resources on behalf of a content provider obtains client computing device requests for content. The network storage provider processes the client computing device requests and determines whether a subsequent request for the resource should be directed to a CDN service provider as a function of the updated or processed by the network storage provider storage component. | 03-22-2012 |
20120079221 | System And Method For Providing Flexible Storage And Retrieval Of Snapshot Archives - A group of computers is configured to implement a block storage service. The block storage service includes a block-level storage for storing data from a set of distinct computing instances for a set of distinct users. An interface is configured to allow the set of distinct users to specify respective destinations for storing backup copies of respective data stored in the block-level storage for the distinct users. At least some of the respective destinations are for different storage systems remote from one another. A backup copy function is provided for creating backup copies of data stored in the block-level storage by the set of distinct computing instances for the set of distinct users. The backup copies are stored in different destination locations specified by respective ones of the plurality of distinct users via the interface. | 03-29-2012 |
20120102099 | LOCALITY BASED CONTENT DISTRIBUTION - A system and method for content distribution are provided. A content provider generates a network topology having one or more subnetworks made up of content sources. The content provider segments content, such as applications, into segments for distribution. The content provider then distributes the content such that for each identified subnetwork, each content segment is distributed to a content source. Subsequent, client computing device requests for content can be serviced by selecting a content source in a particular subnetwork selected for delivering the requested content to the client computing device to minimize traffic flow of the requested content through the nodes of the distribution network. | 04-26-2012 |
20120102203 | SERVICE PROVIDER REGISTRATION BY A CONTENT BROKER - A system, method, and computer readable medium for managing registration, by a content broker, of one or more resources with one or more service providers are provided. A content broker obtains registration information for registering the one or more resources with a service provider. The registration information may include a request to publish one or more resources to a service provider, an identification of the one or more resources, service provider selection criteria provided by the content provider or otherwise selected, and the like. The content broker transmits a service provider generation request corresponding to the registration information to the service provider. Then, the content broker manages and processes data pursuant to registration of the one or more resources with the service provider. | 04-26-2012 |
20120110159 | MANAGING CDN REGISTRATION BY A STORAGE PROVIDER - A system, method, and computer readable medium for managing registration, by a network storage provider, of one or more resources with a CDN service provider are provided. A network storage provider storing one or more resources on behalf of a content provider obtains registration information for registering the one or more resources with a CDN service provider. The registration information may include a request to publish one or more resources to a CDN service provider, an identification of the one or more resources, CDN selection criteria provided by the content provider or otherwise selected, and the like. The network storage provider transmits a CDN generation request corresponding to the registration information to the CDN service provider. Then, the network storage provider manages and processes data pursuant to registration of the one or more resources with the CDN service provider. | 05-03-2012 |
20120124165 | MANAGING CONTENT DELIVERY NETWORK SERVICE PROVIDERS BY A CONTENT BROKER - A system, method, and computer readable medium for managing network storage provider and CDN service providers are provided. A content broker component obtains client computing device requests for content provided by a content provider. The content broker processes the client computing device requests and determines whether a subsequent request for the resource should be directed to a network storage provider or a CDN service provider as a function of the updated or processed by the content broker. | 05-17-2012 |
20120173677 | REQUEST ROUTING - A system, method and computer-readable medium for request routing. A client request processing a resource identifier for requested content transmits a first DNS query to a content delivery network service provider. The content delivery network service provider transmits an alternative resource identifier in response to the client computing device DNS query. The client computing device then issues a second DNS query to the same content delivery network service provider. The content delivery network service provider can then either resolve the second DNS query with an IP address of a cache component or transmit another alternative resource identifier that will resolve to the content delivery network service provider. The process can repeat with the content delivery network service provider's network until a DNS server resolves a DNS query from the client computing device. | 07-05-2012 |
20120215914 | REQUEST ROUTING BASED ON CLASS - A system and method for management and processing of resource requests is provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a requested resource from the client computing device. The content delivery network service provider associates the client computing device with a cluster of other client computing devices. Based on routing information for the cluster, the content delivery network service provider routes the DNS query. The process can further include monitoring performance data associated with the delivery of the requested resource and updating the routing information for the cluster based on the performance data for use in processing subsequent requests from client computing devices in the cluster. | 08-23-2012 |
20120246640 | Replication of Machine Instances in a Computing Environment - Disclosed are various embodiments for replication of machine instances in a computing environment. A clone machine instance is instantiated from a machine image associated with an original machine instance. A stored execution state of the original machine instance is applied to the clone machine instance. At least a portion of a series of stored events received by the original machine instance is applied to the clone machine instance. | 09-27-2012 |
20120254300 | LOAD BALANCING UTILIZING ADAPTIVE THRESHOLDING - Methods and systems for processing data requests in a client-server computing environment, such as the Web, are disclosed. A client device initially transmits a data request to a randomly selected first server device. The first server device may reject the data request if its request queue threshold is exceeded. The client device retransmits the data request, including the request queue threshold, to a randomly selected second server device. The second server device may reject the data request if the request queue threshold of the first server device is smaller than a request queue threshold of the second server device. The client device transmits the data request back to the first server device, including the request queue threshold of the second server device. The first server device processes the data request and adjusts its request queue threshold based on the request queue thresholds of the first and second server devices. | 10-04-2012 |
20120265900 | UPDATING ROUTING INFORMATION BASED ON CLIENT LOCATION - A system, method, and computer-readable medium for updating request routing information associated with client location information are provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a resource identifier for requested content from the client computing device. The content delivery network service provider obtains a query IP address corresponding to the client computing device. Based on routing information associated with the query IP address, the content delivery network service provider routes the DNS query. The process further includes monitoring performance data associated with the transmission of the requested resource and updating routing information associated with the query IP address based on the performance data for use in processing subsequent requests form the client computing device. | 10-18-2012 |
20120303785 | REQUEST ROUTING USING NETWORK COMPUTING COMPONENTS - A system, method and computer-readable medium for request routing. A DNS server at a content delivery network service provider obtains a DNS query corresponding to a resource requested from a client computing device and associated with a first resource identifier. The first resource identifier includes a first portion with DNS information and a second portion with path information. The DNS server selects a network computing component for processing the requested resource based on the DNS portion of the resource identifier and transmits information identifying the selected network computing component to the client computing device. | 11-29-2012 |
20120303819 | MANAGING CONTENT DELIVERY NETWORK SERVICE PROVIDERS - A system, method, and computer readable medium for managing CDN service providers are provided. A network storage provider storing one or more resources on behalf of a content provider obtains client computing device requests for content. The network storage provider processes the client computing device requests and determines whether a subsequent request for the resource should be directed to a CDN service provider as a function of the updated or processed by the network storage provider storage component. | 11-29-2012 |
20120330954 | System And Method For Implementing A Scalable Data Storage Service - A system that implements a scalable data storage service may maintain tables in a non-relational data store on behalf of clients. The system may provide a Web services interface through which service requests are received, and an API usable to request that a table be created, deleted, or described; that an item be stored, retrieved, deleted, or its attributes modified; or that a table be queried (or scanned) with filtered items and/or their attributes returned. An asynchronous workflow may be invoked to create or delete a table. Items stored in tables may be partitioned and indexed using a simple or composite primary key. The system may not impose pre-defined limits on table size, and may employ a flexible schema. The service may provide a best-effort or committed throughput model. The system may automatically scale and/or re-partition tables in response to detecting workload changes, node failures, or other conditions or anomalies. | 12-27-2012 |
20130007117 | LOCALITY BASED CONTENT DISTRIBUTION - A system and method for content distribution are provided. A content provider generates a network topology having one or more subnetworks made up of content sources. The content provider segments content, such as applications, into segments for distribution. The content provider then distributes the content such that for each identified subnetwork, each content segment is distributed to a content source. Subsequent, client computing device requests for content can be serviced by selecting a content source in a particular subnetwork selected for delivering the requested content to the client computing device to minimize traffic flow of the requested content through the nodes of the distribution network. | 01-03-2013 |
20130007284 | SERVICE PROVIDER REGISTRATION BY A CONTENT BROKER - A system, method, and computer readable medium for managing registration, by a content broker, of one or more resources with one or more service providers are provided. A content broker obtains registration information for registering the one or more resources with a service provider. The registration information may include a request to publish one or more resources to a service provider, an identification of the one or more resources, service provider selection criteria provided by the content provider or otherwise selected, and the like. The content broker transmits a service provider generation request corresponding to the registration information to the service provider. Then, the content broker manages and processes data pursuant to registration of the one or more resources with the service provider. | 01-03-2013 |
20130010797 | CUSTOM ROUTING DECISIONS - With the advent of virtualization technologies, networks and routing for those networks can now be simulated using commodity hardware rather than actual routers. For example, virtualization technologies such as those provided by VMWare, XEN, or User-Mode Linux can be adapted to allow a single physical computing machine to be shared among multiple virtual networks by providing each virtual network user with one or more virtual machines hosted by the single physical computing machine, with each such virtual machine being a software simulation acting as a distinct logical computing system that provides users with the illusion that they are the sole operators and administrators of a given hardware computing resource. In addition, routing can be accomplished through software, providing additional routing flexibility to the virtual network in comparison with traditional routing. As a result, in some implementations, supplemental information other than packet information can be used to determine network routing. | 01-10-2013 |
20130013788 | MANAGING CDN REGISTRATION BY A STORAGE PROVIDER - A system, method, and computer readable medium for managing registration, by a network storage provider, of one or more resources with a CDN service provider are provided. A network storage provider storing one or more resources on behalf of a content provider obtains registration information for registering the one or more resources with a CDN service provider. The registration information may include a request to publish one or more resources to a CDN service provider, an identification of the one or more resources, CDN selection criteria provided by the content provider or otherwise selected, and the like. The network storage provider transmits a CDN generation request corresponding to the registration information to the CDN service provider. Then, the network storage provider manages and processes data pursuant to registration of the one or more resources with the CDN service provider. | 01-10-2013 |
20130013789 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing content to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the content information. | 01-10-2013 |
20130013790 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing content to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the content information. | 01-10-2013 |
20130066834 | PROVISIONING AND MANAGING REPLICATED DATA INSTANCES - A replicated database can be provisioned that provides primary and secondary replicas located in different data zones or geographical locations. The database can be installed on the primary replica, and both the primary and secondary replica can include a block level replication mechanism that allows any I/O operation to be replicated between the replicas. Any failure of the primary replica can be addressed by performing a failover operation to the secondary replica. A DNS name or other such approach can be used such that the name can be aliased to the secondary replica during a failover. The creation of the database and provisioning of the replicated instance can be initiated using a Web service call to a control environment. A replicated database can also be scaled according to storage or computing capacity with no disruption of service using a Web service call to the control environment. | 03-14-2013 |
20130066923 | CONTROL SERVICE FOR RELATIONAL DATA MANAGEMENT - Aspects of a data environment, such as the creation, provisioning, and management of data stores and instances, are managed using a separate control environment. A user can call into an interface of the control environment, the call being analyzed to determine actions to be performed in the data environment. A monitoring component of the control plane also can periodically communicate with the data environment to determine any necessary actions to be performed, such as to recover from faults or events in the data environment. A workflow can be instantiated that includes tasks necessary to perform the action. For each task, state information can be passed to a component in the data environment operable to perform the task, until all tasks for an action are completed. Data in the data environment can be accessed directly using a separate interface of the data environment, without accessing the control plane. | 03-14-2013 |
20130110916 | CONTENT MANAGEMENT | 05-02-2013 |
20130205030 | MANAGING RESOURCES IN RESOURCE CACHE COMPONENTS - A system, method, and computer readable medium for managing resources maintained in resource cache components are provided. A network storage provider storing one or more resources on behalf of a content provider obtains client computing device requests for content. The network storage provider provides resources that are received and maintained on resource cache components. The network storage provider either processes requests or provides notifications to the resource cache components to facilitate the management of resources that need to be updated or are otherwise treated as invalid. | 08-08-2013 |
20130205045 | UPDATING ROUTING INFORMATION BASED ON CLIENT LOCATION - A system, method, and computer-readable medium for updating request routing information associated with client location information are provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a resource identifier for requested content from the client computing device. The content delivery network service provider obtains a query IP address corresponding to the client computing device. Based on routing information associated with the query IP address, the content delivery network service provider routes the DNS query. The process further includes monitoring performance data associated with the transmission of the requested resource and updating routing information associated with the query IP address based on the performance data for use in processing subsequent requests form the client computing device. | 08-08-2013 |
20130254269 | REQUEST ROUTING USING NETWORK COMPUTING COMPONENTS - A system, method and computer-readable medium for request routing. A DNS server at a content delivery network service provider obtains a DNS query corresponding to a resource requested from a client computing device and associated with a first resource identifier. The first resource identifier includes a first portion with DNS information and a second portion with path information. The DNS server selects a network computing component for processing the requested resource based on the DNS portion of the resource identifier and transmits information identifying the selected network computing component to the client computing device. | 09-26-2013 |
20130262628 | INCENTIVE DRIVEN CONTENT DELIVERY - A system and method for management and processing of resource requests are provided. A content delivery network service provider receives a DNS query from a client computing device corresponding to a requested resource from the client computing device. The content delivery network service provider associates the requested content into a set of content segments. For each content segment, the content delivery network service provider identifies the network address of a registered content provider, such as peer computing device, and a cache component of the content delivery service provider. The content delivery network service provider also provides tokens for requesting the content from a registered content provider. The client computing device obtains the content from the registered content providers and/or the cache component of the content delivery network service provider. Thereafter, the content delivery network service provider reconciles with the registered content providers for content provided to client computing devices. | 10-03-2013 |
20130268635 | DYNAMICALLY TRANSLATING RESOURCE IDENTIFIERS FOR REQUEST ROUTING USING POPULARITY INFORMATION - A system, method and computer-readable medium for request routing based on content popularity information are provided. A client computer transmits a request for content from a content provider. The content provider utilizes executable code, such as translation request code, for facilitating request routing utilizing popularity information. The translation request code, may direct a client computing device to request further translation request code and/or translation information. Thereafter, the client issues a DNS query with the translated information including popularity information. The content delivery network service provider can then either resolve the DNS query with an IP address of a cache component or transmit another alternative resource identifier that will resolve to the content delivery network service provider. The process can repeat until a DNS nameserver resolves a DNS query from the client computing device. | 10-10-2013 |
20130297717 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing additional content, such as advertisement content or other additional content provided in anticipation of future resource requests, to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the additional content information. | 11-07-2013 |
20130311605 | MANAGING CDN REGISTRATION BY A STORAGE PROVIDER - A system, method, and computer readable medium for managing registration, by a network storage provider, of one or more resources with a CDN service provider are provided. A network storage provider storing one or more resources on behalf of a content provider obtains registration information for registering the one or more resources with a CDN service provider. The registration information may include a request to publish one or more resources to a CDN service provider, an identification of the one or more resources, CDN selection criteria provided by the content provider or otherwise selected, and the like. The network storage provider transmits a CDN generation request corresponding to the registration information to the CDN service provider. Then, the network storage provider manages and processes data pursuant to registration of the one or more resources with the CDN service provider. | 11-21-2013 |
20130318153 | LOCALITY BASED CONTENT DISTRIBUTION - A system and method for content distribution are provided. A content provider generates a network topology having one or more subnetworks made up of content sources. The content provider segments content, such as applications, into segments for distribution. The content provider then distributes the content such that for each identified subnetwork, each content segment is distributed to a content source. Subsequent, client computing device requests for content can be serviced by selecting a content source in a particular subnetwork selected for delivering the requested content to the client computing device to minimize traffic flow of the requested content through the nodes of the distribution network. | 11-28-2013 |
20130332569 | SERVICE PROVIDER REGISTRATION BY A CONTENT BROKER - A system, method, and computer readable medium for managing registration, by a content broker, of one or more resources with one or more service providers are provided. A content broker obtains registration information for registering the one or more resources with a service provider. The registration information may include a request to publish one or more resources to a service provider, an identification of the one or more resources, service provider selection criteria provided by the content provider or otherwise selected, and the like. The content broker transmits a service provider generation request corresponding to the registration information to the service provider. Then, the content broker manages and processes data pursuant to registration of the one or more resources with the service provider. | 12-12-2013 |
20130339429 | DNS QUERY PROCESSING USING RESOURCE IDENTIFIERS SPECIFYING AN APPLICATION BROKER - A system, method and computer-readable medium for request routing based on application information associated with the requested resource are provided. A DNS nameserver at an application broker obtains a DNS query corresponding to a resource requested from a client computing device and associated with a first resource identifier. The first resource identifier includes application information associated with the requested resource. Based on the application information parsed from the first resource identifier, the DNS nameserver at the application broker selects either a second resource identifier which resolves to a domain of a network computing provider or an IP address associated with a network computing component for processing the requested resource. The DNS nameserver then transmits either the second resource identifier or IP address to the client computing device. | 12-19-2013 |
20130346539 | CLIENT SIDE CACHE MANAGEMENT - A system, method and computer-readable medium for client-side cache management are provided. A client request for content is returned that includes executable code for generating a request for preload information. Based on processing the executable code, a client computing device requests preload information from a content delivery service provider. The content delivery service provider provides an identification of content based on resource requests previously served by the content delivery service provider. The client computing device processes the preload information and generates and obtains identified resources for maintenance in a client computing device memory, such as cache. | 12-26-2013 |
20130346567 | DYNAMICALLY TRANSLATING RESOURCE IDENTIFIERS FOR REQUEST ROUTING USING POPULARITY INFORMATION - A system, method and computer-readable medium for request routing based on content popularity information are provided. A client computer transmits a request for content from a content provider. The content provider utilizes executable code, such as translation request code, for facilitating request routing utilizing popularity information. The translation request code, may direct a client computing device to request further translation request code and/or translation information. Thereafter, the client issues a DNS query with the translated information including popularity information. The content delivery network service provider can then either resolve the DNS query with an IP address of a cache component or transmit another alternative resource identifier that will resolve to the content delivery network service provider. The process can repeat until a DNS nameserver resolves a DNS query from the client computing device. | 12-26-2013 |
20130346621 | MANAGING CONTENT DELIVERY NETWORK SERVICE PROVIDERS - A system, method, and computer readable medium for managing CDN service providers are provided. A network storage provider storing one or more resources on behalf of a content provider obtains client computing device requests for content. The network storage provider updates request processing information based on the process requests for content. The network storage provider then makes a recommendation regarding initialization of a CDN service provider as a function of the updated request processing information. Subsequent client computing device requests for resources can be provided to the recommended CDN service provider utilizing alternative resource identifiers. | 12-26-2013 |
20140012969 | TECHNIQUES FOR NETWORK REPLICATION - In response to a request to duplicate a network, the network is duplicated. The duplicate network includes one or more virtual devices that correspond to one or more devices in the network being duplicated. The devices of the duplicate network are communicatively arranged in a manner consistent with a topology of the network being duplicated. Once the duplicate network is created, access to the duplicate network is provided. | 01-09-2014 |
20140052865 | MANAGING CONTENT DELIVERY NETWORK SERVICE PROVIDERS - A system, method, and computer readable medium for managing CDN service providers are provided. A network storage provider storing one or more resources on behalf of a content provider obtains client computing device requests for content. The network storage provider processes the client computing device requests and determines whether a subsequent request for the resource should be directed to a CDN service provider as a function of the updated or processed by the network storage provider storage component. | 02-20-2014 |
20140059120 | NETWORK RESOURCE IDENTIFICATION - A system, method and computer-readable medium for client-side processing of resource identifiers. A client request for content is returned that includes information for generating a request for translation information and a number of embedded resource identifiers. Based on the information for generating a request for translation information, the client generates and obtains translation information and processes the embedded resource identifiers to obtain resources from a service provider. | 02-27-2014 |
20140081916 | FAILOVER AND RECOVERY FOR REPLICATED DATA INSTANCES - Replicated instances in a database environment provide for automatic failover and recovery. A monitoring component can periodically communicate with a primary and a secondary replica for an instance, with each capable of residing in a separate data zone or geographic location to provide a level of reliability and availability. A database running on the primary instance can have information synchronously replicated to the secondary replica at a block level, such that the primary and secondary replicas are in sync. In the event that the monitoring component is not able to communicate with one of the replicas, the monitoring component can attempt to determine whether those replicas can communicate with each other, as well as whether the replicas have the same data generation version. Depending on the state information, the monitoring component can automatically perform a recovery operation, such as to failover to the secondary replica or perform secondary replica recovery. | 03-20-2014 |
20140082028 | SYSTEM AND METHOD FOR IMPLEMENTING A SCALABLE DATA STORAGE SERVICE - A system that implements a scalable data storage service may maintain tables in a non-relational data store on behalf of clients. The system may provide a Web services interface through which service requests are received, and an API usable to request that a table be created, deleted, or described; that an item be stored, retrieved, deleted, or its attributes modified; or that a table be queried (or scanned) with filtered items and/or their attributes returned. An asynchronous workflow may be invoked to create or delete a table. Items stored in tables may be partitioned and indexed using a simple or composite primary key. The system may not impose pre-defined limits on table size, and may employ a flexible schema. The service may provide a best-effort or committed throughput model. The system may automatically scale and/or re-partition tables in response to detecting workload changes, node failures, or other conditions or anomalies. | 03-20-2014 |
20140143320 | CONTENT MANAGEMENT - A system and method for management and processing of resource requests is provided. A content delivery network service provider determines a class associated with a set of client computing devices and monitors resources requests for the determined class. The content delivery network service provider then identifies at least one cache component for providing additional content, such as advertisement content or other additional content provided in anticipation of future resource requests, to client computing devices as a function of the determined class. In other embodiments, instead of cache components, the content delivery network service provider identifies a second set of client computing devices as a function of the determined class for providing the additional content information. | 05-22-2014 |
20140201363 | MONITORING OF REPLICATED DATA INSTANCES - Replicated instances in a database environment provide for automatic failover and recovery. A monitoring component can obtain a lease enabling the component to periodically communicate with, and monitor, one or more data instances in the data environment, where the data instance can be a replicated instance including a primary and a secondary replica. For a large number of instances, the data environment can be partitioned such that each monitoring component can be assigned a partition of the workload. In the event of a failure of a monitoring component, the instances can be repartitioned and the remaining monitoring components can be assigned to the new partitions to substantially evenly distribute the workload. | 07-17-2014 |
20140215227 | SYSTEM AND METHOD FOR PROVIDING ENHANCEMENTS OF BLOCK-LEVEL STORAGE - A block storage service provides block-level storage to a plurality of distinct computing instances for a plurality of distinct users. For each of one or more of the plurality of distinct computing instances, information about data being stored in the block storage service is determined. Based on the information about the data being stored in the block storage service, a block storage transaction enhancement for the data being stored in the block storage service is determined. The block storage service performs the selected block storage transaction enhancement with respect to the data being stored in the block storage service. | 07-31-2014 |
20140222895 | LOAD BALANCING UTILIZING ADAPTIVE THRESHOLDING - Methods and systems for processing data requests in a client-server computing environment, such as the Web, are disclosed. A client device initially transmits a data request to a randomly selected first server device. The first server device may reject the data request if its request queue threshold is exceeded. The client device retransmits the data request, including the request queue threshold, to a randomly selected second server device. The second server device may reject the data request if the request queue threshold of the first server device is smaller than a request queue threshold of the second server device. The client device transmits the data request back to the first server device, including the request queue threshold of the second server device. The first server device processes the data request and adjusts its request queue threshold based on the request queue thresholds of the first and second server devices. | 08-07-2014 |
20140237032 | REQUEST ROUTING BASED ON CLASS - A system and method for management and processing of resource requests is provided. A content delivery network service provider receives a DNS query from a client computing device. The DNS query corresponds to a requested resource from the client computing device. The content delivery network service provider associates the client computing device with a cluster of other client computing devices. Based on routing information for the cluster, the content delivery network service provider routes the DNS query. The process can further include monitoring performance data associated with the delivery of the requested resource and updating the routing information for the cluster based on the performance data for use in processing subsequent requests from client computing devices in the cluster. | 08-21-2014 |
20140244585 | DATABASE SYSTEM PROVIDING SINGLE-TENANT AND MULTI-TENANT ENVIRONMENTS - A database service may provide multi-tenant and single-tenant environments in which tables may be maintained on behalf of clients. The service (or underlying system) may create database instances and tables in either or both types of environments (e.g., by default or according to various parameter values specified in requests to create the instances or tables). When receiving and servicing requests directed to a table hosted in a single-tenant environment, the system may elide at least some of the authentication or metering operations that would be performed when servicing requests directed to tables hosted in a multi-tenant environment. Tables may be moved from a single-tenant environment to a multi-tenant environment, or vice versa, automatically by the system (e.g., dependent on an observed, expected, or desired throughput) or in response to an explicit request from a client to do so (e.g., to increase throughput or reduce cost). | 08-28-2014 |
20140257891 | REQUEST ROUTING UTILIZING COST INFORMATION - A system, method and computer-readable medium for request routing based on cost information are provided. A client request processing a resource identifier for requested content transmits a first DNS query to a content delivery network service provider. The content delivery network service provider transmits an alternative resource identifier in response to the client computing device DNS query. The alternative resource identifier is selected as a function of cost information. The client computing device then issues a second DNS query to the same content delivery network service provider. The content delivery network service provider can then either resolve the second DNS query with an IP address of a cache component or transmit another alternative resource identifier that will resolve to the content delivery network service provider. The process can repeat with the content delivery network service provider's network until a DNS nameserver resolves a DNS query from the client computing device. | 09-11-2014 |
20140289319 | REQUEST ROUTING USING POPULARITY INFORMATION - A system, method and computer-readable medium for request routing based on content popularity information are provided. A client computing device transmits a first DNS query to a content delivery network service provider. The content delivery network service provider transmits an alternative resource identifier in response to the client computing device DNS query. The alternative resource identifier is selected as a function of popularity information pertaining to the requested resource. The client computing device then transmits a second DNS query to the content delivery network service provider. The content delivery network service provider can then either resolve the second DNS query with an IP address of a cache component or transmit another alternative resource identifier that will resolve to the content delivery network service provider. The process can repeat until a DNS nameserver resolves a DNS query from the client computing device. | 09-25-2014 |
20140325155 | MANAGING RESOURCES USING RESOURCE EXPIRATION DATA - Resource management techniques, such as cache optimization, are employed to organize resources within caches such that the most requested content (e.g., the most popular content) is more readily available. A service provider utilizes content expiration data as indicative of resource popularity. As resources are requested, the resources propagate through a cache server hierarchy associated with the service provider. More frequently requested resources are maintained at edge cache servers based on shorter expiration data that is reset with each repeated request. Less frequently requested resources are maintained at higher levels of a cache server hierarchy based on longer expiration data associated with cache servers higher on the hierarchy. | 10-30-2014 |
20140330980 | MANAGING CONTENT DELIVERY NETWORK SERVICE PROVIDERS BY A CONTENT BROKER - A system, method, and computer readable medium for managing network storage provider and CDN service providers are provided. A content broker component obtains client computing device requests for content provided by a content provider. The content broker processes the client computing device requests and determines whether a subsequent request for the resource should be directed to a network storage provider or a CDN service provider as a function of the updated or processed by the content broker. | 11-06-2014 |
20140365732 | SPECULATIVE READS - Patterns of access and/or behavior can be analyzed and persisted for use in pre-fetching data from a physical storage device. In at least some embodiments, data can be aggregated across volumes, instances, users, applications, or other such entities, and that data can be analyzed to attempt to determine patterns for any of those entities. The patterns and/or analysis can be persisted such that the information is not lost in the event of a reboot or other such occurrence. Further, aspects such as load and availability across the network can be analyzed to determine where to send and/or store data that is pre-fetched from disk or other such storage in order to reduce latency while preventing bottlenecks or other such issues with resource availability. | 12-11-2014 |
20140379921 | RESOURCE SILOS AT NETWORK-ACCESSIBLE SERVICES - Methods and apparatus for resource silos at network-accessible services are disclosed. A subset of resources used for a database service, including at least one resource from each of a plurality of data centers, is selected for membership in a resource silo based on grouping criteria. A silo routing layer node identifies the resource silo as the target silo to which a client work request is to be directed. The client work request is sent to a front-end resource of the target silo either by the client, or by the silo routing layer node on behalf of the client. The front-end resource of the target silo transmits a representation of the work request to a back-end resource of the target silo, where a work operation corresponding to request is performed. | 12-25-2014 |
20150019829 | DYNAMIC DATA SET REPLICA MANAGEMENT - Systems and methods dynamically manage replicas of data sets. A collection of data stores is used to redundantly store one or more replicas of one or more data sets. The replicas may be used to respond to read requests from multiple sources. Upon identification of a need to allocate storage space to a data object, space used by one or more of the replicas is allocated to the data object. Various parameters may be utilized in the selection of one or more replicas whose storage space can be allocated to the data object. The parameters may be based at least in part on characteristics of the one or more data sets relative to one another. | 01-15-2015 |
20150032896 | SYSTEM AND METHOD FOR ROUTING SERVICE REQUESTS - A computer-implemented method routes service requests to services in a service framework provided by a plurality of hosts. The method comprises receiving a service request for a service in the service framework and discovering a plurality of candidate hosts that host the service. The plurality of candidate hosts are a subset of the plurality of hosts. The method further comprises selecting a candidate host from the plurality of candidate hosts based on measured latencies for the plurality of candidate hosts and routing the service request to the selected candidate host. | 01-29-2015 |
20150081842 | NETWORK RESOURCE IDENTIFICATION - A system, method and computer-readable medium for client-side processing of resource identifiers. A client request for content is returned that includes information for generating a request for translation information and a number of embedded resource identifiers. Based on the information for generating a request for translation information, the client generates and obtains translation information and processes the embedded resource identifiers to obtain resources from a service provider. | 03-19-2015 |
20150089049 | WIDE AREA NETWORK MONITORING - As exterior routing protocols generally do not provide information about the internal routing paths of an autonomous system, a particular autonomous system has limited information about the internal health of other autonomous systems. However, if a monitoring system has access to routing data and/or other network data from multiple points of an autonomous system, the monitoring system can estimate, with some accuracy, the health of the autonomous system. In turn, by monitoring at least some of autonomous systems forming a larger internetwork, such as the Internet, the monitoring system can estimate the overall health of at least portions of the internetwork. | 03-26-2015 |