Amazon Patent Applications

PRIVATE NETWORK LAYERING IN PROVIDER NETWORK ENVIRONMENTS

Granted: June 13, 2019
Application Number: 20190182256
Methods and apparatus that allow clients to establish sub private networks as resources within private networks on a provider network. A sub private network may be owned and controlled by a different entity than the owner of its parent private network. A parent private network controls access to its sub private networks, and each sub private network also controls access to its resources. This enables a layered topology in which a parent private network may establish access control rules…

PORTABLE VOICE ASSISTANT DEVICE WITH LINEAR LIGHTING ELEMENTS

Granted: June 6, 2019
Application Number: 20190171413
Systems, methods, and computer-readable media are disclosed for portable voice assistant devices with linear lighting elements. In one embodiment, an example device may include a housing having a first portion and a second portion, an elongated light bar disposed between the first portion and the second portion, and a first LED disposed within the housing. Example devices may include a reflector component configured to reflect light towards the elongated light bar, and a diffuser…

MODULAR MASS STORAGE SYSTEM

Granted: June 6, 2019
Application Number: 20190171606
A system for storing data includes a rack, one or more data storage modules coupled to the rack, and one or more data control modules coupled to the rack. The data storage modules may include a chassis, two or more backplanes coupled to the chassis, and one or more mass storage devices (for example, hard disk drives) coupled to the backplanes. The data control modules may access the mass storage devices in the data storage modules.

NETWORK TRAFFIC MANAGEMENT FOR VIRTUALIZED GRAPHICS DEVICES

Granted: June 6, 2019
Application Number: 20190173759
A determination is made that network access between a virtualized graphics device and a compute instance of a client is to be enabled. A source network address for graphics-related traffic of the compute instance is identified. From a range of source port numbers associated with the source network address, a particular source port number which is unused is found. Routing metadata is transmitted to one or more routing devices indicating that a key based at least in part on (a) the source…

ROUTE ADVERTISEMENT MANAGEMENT USING TAGS IN DIRECTLY CONNECTED NETWORKS

Granted: June 6, 2019
Application Number: 20190173774
A system includes a provider network and a client network connected via a dedicated physical connection. The client network and the provider network exchange routing information using routing protocol messages, such as border gateway protocol (BGP) update messages exchanged during a BGP session. A provider network includes tag field values in outgoing routing protocol messages that indicate a portion of the provider network wherein resources of the provider network associated with a…

PROGRAM CODE ALLOCATION BASED ON PROCESSOR FEATURES

Granted: May 30, 2019
Application Number: 20190166228
Methods, systems, and computer-readable media for program code allocation based on processor features are disclosed. Analysis of program code is performed using static analysis and/or runtime analysis. The analysis determines one or more processor features invoked by the program code. One or more program execution servers are selected from a plurality of program execution servers based at least in part on the one or more processor features invoked by the program code. One or more…

MULTI-REGION, MULTI-MASTER REPLICATION OF DATABASE TABLES

Granted: May 23, 2019
Application Number: 20190155937
A geographically distributed system using a hybrid, multi-master design is disclosed. The system may use global tables, for which both reads and writes may be performed locally, but with a single region serving as a master region. All strongly consistent reads and writes may be sent to the master region, whereas eventually consistent reads and writes may be performed in any region with a replica. The master region may not be statically assigned but may move from region to region. The…

GENERATING AND DEPLOYING PACKAGES FOR MACHINE LEARNING AT EDGE DEVICES

Granted: May 23, 2019
Application Number: 20190156246
A provider network implements a machine learning deployment service for generating and deploying packages to implement machine learning at connected devices. The service may receive from a client an indication of an inference application, a machine learning framework to be used by the inference application, a machine learning model to be used by the inference application, and an edge device to run the inference application. The service may then generate a package based on the inference…

ANALYZING RESOURCE PLACEMENT FRAGMENTATION FOR CAPACITY PLANNING

Granted: May 23, 2019
Application Number: 20190158422
A distributed system may implement analyzing resource placement fragmentation for capacity planning. Capacity planning may determine when, where, and how much capacity to implement for a distributed system that hosts resources. Placement constraints for resources may, over time, create fragmentation or stranded capacity which is available yet unusable to host new resources. Analyzing capacity fragmentation across a distributed system may allow a determination of available capacity that…

PRIVATE NETWORK PEERING IN VIRTUAL NETWORK ENVIRONMENTS

Granted: May 23, 2019
Application Number: 20190158466
Methods and apparatus for private network peering in virtual network environments in which peerings between virtual client private networks on a provider network may be established by clients via an API to a peering service. The peering service and API 104 may allow clients to dynamically establish and manage virtual network transit centers on the provider network at which virtual ports may be established and configured, virtual peerings between private networks may be requested and, if…

DISAGGREGATED GRAPHICS ASSET MANAGEMENT FOR VIRTUALIZED GRAPHICS

Granted: May 16, 2019
Application Number: 20190147562
Methods, systems, and computer-readable media for disaggregated graphics asset management for virtualized graphics are disclosed. A virtual GPU attached to a virtual compute instance is provisioned in a multi-tenant provider network. The virtual compute instance is implemented using a physical compute instance, and the virtual GPU is implemented using a physical GPU. A plurality of graphics assets are added to a graphics asset repository. The graphics assets are associated with…

PIPELINED EVALUATIONS FOR ALGORITHMIC FORWARDING ROUTE LOOKUP

Granted: May 16, 2019
Application Number: 20190149472
Packet processors or other devices with packet processing pipelines may implement pipelined evaluations of algorithmic forwarding route lookups. As network packets are received, a destination address for the network packets may be divided into different possible prefix lengths and corresponding entries in a routing table for the different possible prefix lengths may be determined according to a hash scheme for the routing table. The entry values may be read from the routing table and…

ARTIFICIAL INTELLIGENCE SYSTEM FOR REAL-TIME VISUAL FEEDBACK-BASED REFINEMENT OF QUERY RESULTS

Granted: May 2, 2019
Application Number: 20190130285
In response to a programmatic interaction, respective representations of items of an initial result set are presented to an item consumer. One or more result refinement iterations are then conducted. In a given iteration, one or more feedback indicators with respect to one or more items are identified, a machine learning model is trained using at least the feedback indicators to generate respective result set candidacy metrics for at least some items, and the metrics are then used to…

CLONING AND RECOVERY OF DATA VOLUMES

Granted: April 25, 2019
Application Number: 20190121706
Aspects of a data environment, such as the cloning, hibernation, and recovery of databases, are managed using a separate control environment. A monitoring component of the control environment can periodically communicate with the data environment to determine any necessary actions to be performed, such as to recover from faults or events for a data instance in the data environment. A workflow can be instantiated that includes tasks necessary to perform actions such as recovery,…

RELATIONAL MODELER AND RENDERER FOR NON-RELATIONAL DATA

Granted: April 25, 2019
Application Number: 20190121819
Methods and apparatus for a relational modeler and renderer for non-relational data are disclosed. In response to an indication of non-relational data sources, a relational data model based on one or more model inclusion criteria is generated to represent at least some contents of the non-relational data sources. In response to a model population request from a client, data obtained from the one or more non-relational data sources for one or more tables of the model is stored in cache…

FEATURE PROCESSING TRADEOFF MANAGEMENT

Granted: April 25, 2019
Application Number: 20190122136
At a machine learning service, a set of candidate variables that can be used to train a model is identified, including at least one processed variable produced by a feature processing transformation. A cost estimate indicative of an effect of implementing the feature processing transformation on a performance metric associated with a prediction goal of the model is determined. Based at least in part on the cost estimate, a feature processing proposal that excludes the feature processing…

DEPLOYABLE BARRIER FOR DATA CENTER

Granted: April 18, 2019
Application Number: 20190116685
Deployable barriers are reversibly deployed in a data center hall to partition the data center. The hall is partitioned into an operational area, where rack computer systems are installed, a non-operational area, and a staging area where support infrastructure is at least partially installed. A barrier can be collapsed to incorporate the staging area into the operational area, thereby expanding the operational area, when rack computer systems are to be installed in the staging area. A…

LOGIC REPOSITORY SERVICE

Granted: April 11, 2019
Application Number: 20190108295
The following description is directed to a logic repository service. In one example, a method of a logic repository service can include receiving a first request to generate configuration data for configurable hardware using a specification for application logic of the configurable hardware. The method can include generating the configuration data for the configurable hardware. The configuration data can include data for implementing the application logic. The method can include…

GRAPH PROCESSING SERVICE COMPONENT IN A CATALOG SERVICE PLATFORM

Granted: April 11, 2019
Application Number: 20190108575
A service provider system may implement an enterprise catalog service that manages software products and portfolios of software products on behalf of service provider customer organizations. A graph processing service of the enterprise catalog service may create a graph representation of the enterprise catalog service data, including principals, product listings, portfolios, and constraints (and the relationships between them) that may be used to manage access control, launch contexts,…

VIRTUAL MACHINE MIGRATION

Granted: April 4, 2019
Application Number: 20190102215
Migrating servers from client networks to virtual machines (VMs) on a provider network. A migration appliance is installed or booted on the client network, and a migration initiator is instantiated on the provider network. A VM and associated volumes are instantiated on the provider network. The initiator sends a request for a boot sector to the appliance; the appliance reads the blocks from a volume on the client network, converts the blocks to a format used by the VM, and sends the…