Amazon Patent Applications

LOCALITY BASED QUORUMS

Granted: March 14, 2019
Application Number: 20190079839
Disclosed are various embodiments for distributing data items within a plurality of nodes. A data item that is subject to a data item update request is updated from a master node to a plurality of slave notes. The update of the data item is determined to be locality-based durable based at least in part on acknowledgements received from the slave nodes. Upon detection that the master node has failed, a new master candidate is determined via an election among the plurality of slave nodes.

CONTROL SERVICE FOR DATA MANAGEMENT

Granted: March 14, 2019
Application Number: 20190079857
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…

PROACTIVE OPTIMIZATIONS AT MULTI-TIER FILE SYSTEMS

Granted: March 14, 2019
Application Number: 20190079940
A recommendations manager (RM) of a file system service identifies a file system object group (FSOG) for which proactive placement recommendations are to be generated using statistical analyses. Usage metrics collected from the FSOG are used to train a model. Predictions obtained from the model are used to generate a recommendation to transfer a file system object proactively from one storage device group of the service to another. The recommendations are provided to an object migrator…

REAL TIME ANOMALY DETECTION FOR DATA STREAMS

Granted: March 14, 2019
Application Number: 20190081876
Real time detection of anomalies may be implemented for a data stream. A data stream may receive data records as input. An evaluation of the data records may be performed as the data records are received utilizing an anomaly detection model that is dynamically generated for a time period that includes the data records. A responsive action may be performed in response to detecting various anomalies, such as providing a notification of the anomaly, requesting a corrective action, invoking…

MANAGED FUNCTION EXECUTION FOR PROCESSING DATA STREAMS IN REAL TIME

Granted: March 14, 2019
Application Number: 20190082005
Managed function execution for processing data streams in real time may be. A function that describes one or more operations to be performed with respect to one or more data streams may be received via programmatic interface for a managed stream processing system. Stream processing nodes capable of applying the function may be determined and execution of the one or more operations may be initiated at the stream processing nodes as data records of the data stream are received. Results of…

OPTIMIZING A LOAD BALANCER CONFIGURATION

Granted: March 14, 2019
Application Number: 20190082006
Methods, systems, and computer-readable media for optimizing a load balancer configuration are disclosed. A load balancer is configured to perform traffic management for a distributed system. A new component is deployed to the distributed system or a performance deviation is predicted in the distributed system. In response to the initiation of the deployment or the prediction of the performance deviation, the configuration of the load balancer is modified from a first state to a second…

SERVICE AND APIs FOR REMOTE VOLUME-BASED BLOCK STORAGE

Granted: March 14, 2019
Application Number: 20190082012
Methods, apparatus, and computer-accessible storage media for providing a volume-based block storage service and application programming interfaces (APIs) to the service. A block storage service and block storage service APIs may allow processes (applications or appliances) on the service client network to leverage remote, volume-based block storage provided by the service provider. The APIs may provide a standard interface to volume-based block storage operations on a remote data store.…

VOICE-ACTIVATED SELECTIVE MEMORY FOR VOICE-CAPTURING DEVICES

Granted: March 7, 2019
Application Number: 20190073998
Methods, systems, and computer-readable media for voice-activated selective memory for voice-capturing devices are disclosed. A first voice input from a voice-capturing device is received, via a network, at a service provider environment comprising one or more services. The first voice input comprises one or more utterances from a user of the voice-capturing device. A representation of the first voice input is stored. A second voice input from the voice-capturing device is received, via…

NETWORKED STORAGE ARCHITECTURE

Granted: March 7, 2019
Application Number: 20190075186
Technologies are provided for a dynamically scalable storage architecture. A workload manager can be configured to monitor compute workloads targeting network-enabled storage devices. The workload manager can identify servers to perform all or part of the compute workloads. The workload management server can configure the identified servers to establish logical connections with the network-enabled storage devices, wherein the identified servers can transmit data access commands to the…

SYSTEM AND METHOD FOR CONTROLLING ACCESS TO WEB SERVICES RESOURCES

Granted: February 28, 2019
Application Number: 20190068518
A system and method for controlling access to web services resources. A system may include a storage medium configured to store instructions and one or more processors configured to access the storage medium. The instructions may be executable by at least one of the processors to implement a web services access control system (ACS) configured to receive requests. Each request specifies an access operation to be performed with respect to a corresponding resource. Each of the requests is…

APPLICATION STREAMING USING ACCESS AND EXECUTION ENVIRONMENTS

Granted: February 28, 2019
Application Number: 20190068669
Methods, systems, and computer-readable media for application streaming using access and execution environments are disclosed. User input comprising a selection of an application by a user is received. The user input is received at an access environment from a computing device associated with a client. The access environment permits access by the user, and the access environment is associated with an execution environment for the application. The execution environment specifies a…

AUTOMATED MANAGEMENT OF RESOURCE ATTRIBUTES ACROSS NETWORK-BASED SERVICES

Granted: February 28, 2019
Application Number: 20190068690
A provider network hosting multiple network-based services that implement different resources for a client may provide automated management of resource attributes across the multiple network-based services. A client may send a request to a resource attribute service implemented at the provider network to add a resource attribute to different resources implemented among different network-based services that satisfy resource metadata selection criteria. In response to receiving the…

APPLYING PARTICIPANT METRICS IN GAME ENVIRONMENTS

Granted: February 14, 2019
Application Number: 20190046886
A system that collects, analyzes, and applies physical metrics from participants in game environments. Participants (players and/or spectators) in a game may wear or hold devices that collect physical data from the participants via sensors, generate metrics data from the sensor data, and provide the metrics data to a participant metrics module. The module may receive the metrics data from the devices, analyze the metrics data to generate game inputs based on the participants' physical…

MACHINE LEARNING SERVICE

Granted: February 14, 2019
Application Number: 20190050756
A machine learning service implements programmatic interfaces for a variety of operations on several entity types, such as data sources, statistics, feature processing recipes, models, and aliases. A first request to perform an operation on an instance of a particular entity type is received, and a first job corresponding to the requested operation is inserted in a job queue. Prior to the completion of the first job, a second request to perform another operation is received, where the…

SYSTEM WITH RACK-MOUNTED AC FANS

Granted: February 7, 2019
Application Number: 20190045667
A computer system includes a chassis, one or more hard disk drives coupled to the chassis, and one or more air passages under at least one of the hard disk drives. The air passages include one or more air inlets and one or more air outlets. The inlets direct at least a portion of the air downwardly into the passages. The passages allow air to move from the air inlets to the air outlets.

AVOIDING OR DEFERRING DATA COPIES

Granted: January 31, 2019
Application Number: 20190034214
Methods and systems for avoiding or deferring data copies are disclosed. Using a virtual machine, it is determined whether a set of program code comprises references to a data object after an operation to generate a copy of the data object. If not, a set of optimized program code is generated in which the operation to copy the data object is replaced with an operation to update a reference. Using the virtual machine, it is determined whether the set of program code comprises an operation…

USING SCRIPTS TO BOOTSTRAP APPLICATIONS WITH METADATA FROM A TEMPLATE

Granted: January 31, 2019
Application Number: 20190034243
Systems and methods are described for bootstrapping an application with metadata specified in a template. The template specifies a stack of resources that will be used to execute an application and also includes a set of metadata for customizing the resources and the application. When the system receives the template, it instantiates a compute node which will execute the application. The compute node may contain at least one initialization script for bootstrapping the application with…

TRAINING MODELS FOR IOT DEVICES

Granted: January 31, 2019
Application Number: 20190036716
A model training service of a provider network receives data from edge devices of a remote network. The model training service analyzes the received data. The model training service may also analyze global data from other edge devices of other remote networks. The model training service may then generate updates to local data processing models based on the analysis. The updates are configured to update the local data processing models at the edge devices of the remote network. The…

MODEL TIERING FOR IOT DEVICE CLUSTERS

Granted: January 31, 2019
Application Number: 20190037040
Edge devices of a network collect data. An edge device may determine whether to process the data using a local data processing model or to send the data to a tier device. The tier device may receive the data from the edge device and determine whether to process the data using a higher tier data processing model of the tier device. If the tier device determines to process the data, then the tier device processes the data using the higher tier data processing model, generates a result…

SPLIT PREDICTIONS FOR IOT DEVICES

Granted: January 31, 2019
Application Number: 20190037638
A hub device of a network receives data from edge devices and generates a local result. The hub device also sends the data to a remote provider network and receives a result from the remote provider network, wherein the result is based on the data received from the edge devices. The hub device then generates a response based on the local result or the received result. The hub device may determine to correct the local result based on the result received from the remote provider network,…