Amazon Patent Applications

LIVE MIGRATION FOR VIRTUAL COMPUTING RESOURCES UTILIZING NETWORK-BASED STORAGE

Granted: June 22, 2017
Application Number: 20170177401
Live migration may be performed for virtual computing resources utilizing network-based storage. A virtual compute instance operating at a source host may be moved to a destination host. The virtual compute instance may be a client of a network-based storage resource that stores data for the virtual compute instance. Access to the data stored for the virtual compute instance may be limited to the source host. When migration is performed, the destination host may be prepared to assume…

CACHED VOLUMES AT STORAGE GATEWAYS

Granted: June 22, 2017
Application Number: 20170177479
Methods and apparatus for supporting cached volumes at storage gateways are disclosed. A storage gateway appliance is configured to cache at least a portion of a storage object of a remote storage service at local storage devices. In response to a client's write request, directed to at least a portion of a data chunk of the storage object, the appliance stores a data modification indicated in the write request at a storage device, and asynchronously uploads the modification to the…

PROVISIONING OF A SHIPPABLE STORAGE DEVICE AND INGESTING DATA FROM THE SHIPPABLE STORAGE DEVICE

Granted: June 22, 2017
Application Number: 20170177883
When a client requests a data import job, a remote storage service provider provisions a shippable storage device that will be used to transfer client data from the client to the service provider for import. The service provider generates security information for the data import job, provisions the shippable storage device with the security information, and sends the shippable storage device to the client. The service provider also sends client-keys to the client, separate from the…

DATA TRANSFER TOOL FOR SECURE CLIENT-SIDE DATA TRANSFER TO A SHIPPABLE STORAGE DEVICE

Granted: June 22, 2017
Application Number: 20170178069
A client-side data transfer tool may be used to encrypt customer data and store the encrypted data onto a shippable data storage device. The shippable storage device is provided to the client by a remote storage service provider for importing the customer data into the service provider. The data transfer tool receives client-keys from the service provider, separate from the shippable storage device. The data transfer tool generates keys to encrypt the customer data. The data transfer…

SHIFTING NETWORK TRAFFIC FROM A NETWORK DEVICE

Granted: June 22, 2017
Application Number: 20170180210
A traffic shifting system is described to shift traffic away from one or more network devices or interfaces. The system ensures that traffic can be safely shifted off of a network device before the shifting occurs. The method is described as broken into several phases, such as a discovery phase, a pre-check phase, a shifting phase, and a post-shift phase. Before shifting occurs, the discovery phase is used to obtain network topology and configuration information. In the pre-check phase,…

SECURITY MODEL FOR DATA TRANSFER USING A SHIPPABLE STORAGE DEVICE

Granted: June 22, 2017
Application Number: 20170180368
Data may be securely stored onto a shippable data storage device in order for the client data to be protected during shipment to the remote storage service provider. The service provider prepares a shippable storage device and ships it to the client. The service provider also sends client-keys and security information to the client, separate from the shippable storage device. A client-side data transfer tool authenticates the shippable storage device using the security information. The…

AGGREGATION OF NETWORK TRAFFIC SOURCE BEHAVIOR DATA ACROSS NETWORK-BASED ENDPOINTS

Granted: June 22, 2017
Application Number: 20170180406
Aggregation of network traffic source behavior data across network endpoints may be implemented. Indications of endpoint-specific network traffic directed to different network endpoints may be received. Aggregate traffic source behavior data may be generated across multiple aggregation levels. One or more traffic aggregation nodes may be implemented for each aggregation level to maintain different respective portions of the aggregate traffic source behavior data. Different granularity of…

SYSTEM AND METHOD FOR RESOURCE ALLOCATION IN DISTRIBUTED SYSTEMS

Granted: June 8, 2017
Application Number: 20170163722
Resource management techniques for shared resources in a distributed system are described. Clients and servers may exchange messages according to an asynchronous messaging protocol that does not guarantee delivery or ordering of messages. A client may send a resource request message including a client timestamp and a measure of client resource demand. The server may allocate a grant of the resource to the client in a manner that prevents resource overload, and indicate the grant to the…

ASYNCHRONOUS AND IDEMPOTENT DISTRIBUTED LOCK INTERFACES

Granted: June 8, 2017
Application Number: 20170163762
Methods and apparatus for distributed locking interfaces are disclosed. A state manager implements programmatic interfaces for distributed locking operations. In response to a queue-for-lock request for a registry element received via an interface, the state manager provides to the requester, a reference to a first asynchronous computation. The first asynchronous computation comprises an insertion of a lock request into a queue of waiters for a lock on the element. In response to a…

CONDITIONAL MASTER ELECTION IN DISTRIBUTED DATABASES

Granted: June 1, 2017
Application Number: 20170154091
Methods and apparatus for conditional master election in a distributed database are described. A plurality of replicas of a database object are stored by a distributed database service. Some types of operations corresponding to client requests directed at the database object are to be coordinated by a master replica. Client access to the database object is enabled prior to election of a master replica. In response to a triggering condition, a particular replica is elected master. The…

SYSTEM AND METHOD WITH TIMING SELF-CONFIGURATION

Granted: June 1, 2017
Application Number: 20170154745
A method of operating an automatic transfer switch to switch an electrical load from one power source to another power source includes measuring one or more characteristics of a switching circuit in the automatic transfer switch. A value of one or more timing variables is determined based on the measured characteristics of the switching circuit. The switching circuit is operated to close relays in the automatic transfer switch. The timing of closing of the relays is based on the value of…

FINE-GRAINED STRUCTURED DATA STORE ACCESS USING FEDERATED IDENTITY MANAGEMENT

Granted: June 1, 2017
Application Number: 20170155686
A structured data store service, such as a database service, may implement fine-grained access to data maintained at the database service using federated identity. Fine grained access requests may be received at a database service for specified data maintained for an application provider from a client of the application provider. An access credential may be also be received. Verification of the access credential may be obtained, and the database service may evaluate the fine-grained…

PROFILE-GUIDED DATA PRELOADING FOR VIRTUALIZED RESOURCES

Granted: May 25, 2017
Application Number: 20170147243
Methods and apparatus for profile-guided preloading for virtualized resources are described. A block-level storage volume whose contents are to be populated via data transfers from a repository service is programmatically attached to a compute instance. An indication of data transfers from the repository to a block storage service implementing the volume is obtained, corresponding to a particular phase of program execution at the compute instance. A storage profile is generated, based at…

SYSTEM AND METHOD FOR LOGICAL DELETION OF STORED DATA OBJECTS

Granted: May 25, 2017
Application Number: 20170147512
Systems and methods for providing object versioning in a storage system may support the logical deletion of stored objects. In response to a delete operation specifying both a user key and a version identifier, the storage system may permanently delete the specified version of an object having the specified key. In response to a delete operation specifying a user key, but not a version identifier, the storage system may create a delete marker object that does not contain object data, and…

DATACENTER POWER MANAGEMENT OPTIMIZATIONS

Granted: May 18, 2017
Application Number: 20170139462
Methods and apparatus for datacenter power management optimization are disclosed. Metrics, including workload data, thermal measurements and the like are collected from numerous endpoints within a datacenter. System profiles of a plurality of servers, and application workload profiles for various workloads, are stored. Based on analysis of collected metrics, power optimization operations comprising either workload scheduling operations, power configuration change operations, or both, are…

VERSIONING OF DATABASE PARTITION MAPS

Granted: May 18, 2017
Application Number: 20170139910
System and methods for managing versions of partition maps in a distributed data store are disclosed. A relational database may use partition maps to indicate the location of data in a particular partition, or in a replica thereof. These partition maps may be versioned using a two-stage mechanism in which partition map updates are communicated to all nodes, or to affected nodes only, and in which operation may continue without waiting for acknowledgment of their application to each node.…

DEDICATED ENDPOINTS FOR NETWORK-ACCESSIBLE SERVICES

Granted: May 18, 2017
Application Number: 20170141958
Methods and apparatus for dedicated endpoint instances for network-accessible services are disclosed. The number of dedicated endpoint instances to be established to direct work requests of a given client to back-end nodes of a service may be determined. Configuration policies for the instances, including one or more policies related to caching, authentication, redundancy, durability, availability, and/or load balancing, may also be determined. Configuration of the instances may be…

APPLICATION-SPECIFIC VIRTUALIZED GRAPHICS PROCESSING

Granted: May 11, 2017
Application Number: 20170132744
Methods, systems, and computer-readable media for application-specific virtualized graphics processing are disclosed. A virtual compute instance is provisioned from a provider network. The provider network comprises a plurality of computing devices configured to implement a plurality of virtual compute instances with multi-tenancy. A virtual GPU is attached to the virtual compute instance. The virtual GPU is selected based at least in part on requirements of an application. The virtual…

LOCAL-TO-REMOTE MIGRATION FOR VIRTUALIZED GRAPHICS PROCESSING

Granted: May 11, 2017
Application Number: 20170132745
Methods, systems, and computer-readable media for local-to-remote migration for virtualized graphics processing are disclosed. A virtual compute instance comprising a local GPU is provisioned from a provider network. The provider network comprises a plurality of computing devices configured to implement a plurality of virtual compute instances with multi-tenancy. A virtual GPU is attached to the virtual compute instance. The virtual GPU is implemented using a physical GPU, and the…

PLACEMENT OPTIMIZATION FOR VIRTUALIZED GRAPHICS PROCESSING

Granted: May 11, 2017
Application Number: 20170132746
Methods, systems, and computer-readable media for placement optimization for virtualized graphics processing are disclosed. A provider network comprises a plurality of instance locations for physical compute instances and a plurality of graphics processing unit (GPU) locations for physical GPUs. A GPU location for a physical GPU or an instance location for a physical compute instance is selected in the provider network. The GPU location or instance location is selected based at least in…