Patents by Inventor Vishesh Khemani
Vishesh Khemani has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20240064196Abstract: Methods, systems, and apparatus for automatic sharding and load balancing in a distributed data processing system. In one aspect, a method includes determining workload distribution for an application across worker computers and in response to determining a load balancing operation is required: selecting a first worker computer having a highest load measure relative to respective load measure of the other work computers; determining one or more move operations for a partition of data assigned to the first worker computer and a weight for each move operation; and selecting the move operation with a highest weight the selected move operation.Type: ApplicationFiled: November 2, 2023Publication date: February 22, 2024Applicant: Google LLCInventors: Alexander Shraer, Kfir Lev-Ari, Arif Abdulhusein Merchant, Vishesh Khemani, Atul Adya
-
Patent number: 11838356Abstract: Methods, systems, and apparatus for automatic sharding and load balancing in a distributed data processing system. In one aspect, a method includes determining workload distribution for an application across worker computers and in response to determining a load balancing operation is required: selecting a first worker computer having a highest load measure relative to respective load measure of the other work computers; determining one or more move operations for a partition of data assigned to the first worker computer and a weight for each move operation; and selecting the move operation with a highest weight the selected move operation.Type: GrantFiled: May 16, 2022Date of Patent: December 5, 2023Assignee: Google LLCInventors: Alexander Shraer, Kfir Lev-Ari, Arif Merchant, Vishesh Khemani, Atul Adya
-
Publication number: 20220272148Abstract: Methods, systems, and apparatus for automatic sharding and load balancing in a distributed data processing system. In one aspect, a method includes determining workload distribution for an application across worker computers and in response to determining a load balancing operation is required: selecting a first worker computer having a highest load measure relative to respective load measure of the other work computers; determining one or more move operations for a partition of data assigned to the first worker computer and a weight for each move operation; and selecting the move operation with a highest weight the selected move operation.Type: ApplicationFiled: May 16, 2022Publication date: August 25, 2022Applicant: Google LLCInventors: Alexander Shraer, Kfir Lev-Ari, Arif Merchant, Vishesh Khemani, Atul Adya
-
Patent number: 11363096Abstract: Methods, systems, and apparatus for automatic sharding and load balancing in a distributed data processing system. In one aspect, a method includes determining workload distribution for an application across worker computers and in response to determining a load balancing operation is required: selecting a first worker computer having a highest load measure relative to respective load measure of the other work computers; determining one or more move operations for a partition of data assigned to the first worker computer and a weight for each move operation; and selecting the move operation with a highest weight the selected move operation.Type: GrantFiled: December 23, 2019Date of Patent: June 14, 2022Assignee: Google LLCInventors: Alexander Shraer, Kfir Lev-Ari, Arif Abdulhusein Merchant, Vishesh Khemani, Atul Adya
-
Publication number: 20200137149Abstract: Methods, systems, and apparatus for automatic sharding and load balancing in a distributed data processing system. In one aspect, a method includes determining workload distribution for an application across worker computers and in response to determining a load balancing operation is required: selecting a first worker computer having a highest load measure relative to respective load measure of the other work computers; determining one or more move operations for a partition of data assigned to the first worker computer and a weight for each move operation; and selecting the move operation with a highest weight the selected move operation.Type: ApplicationFiled: December 23, 2019Publication date: April 30, 2020Inventors: Alexander Shraer, Kfir Lev-Ari, Arif Abdulhusein Merchant, Vishesh Khemani, Atul Adya
-
Patent number: 10530844Abstract: Methods, systems, and apparatus for automatic sharding and load balancing in a distributed data processing system. In one aspect, a method includes determining workload distribution for an application across worker computers and in response to determining a load balancing operation is required: selecting a first worker computer having a highest load measure relative to respective load measure of the other work computers; determining one or more move operations for a partition of data assigned to the first worker computer and a weight for each move operation; and selecting the move operation with a highest weight the selected move operation.Type: GrantFiled: February 9, 2017Date of Patent: January 7, 2020Assignee: Google LLCInventors: Alexander Shraer, Kfir Lev-Ari, Arif Abdulhusein Merchant, Vishesh Khemani, Atul Adya
-
Publication number: 20170353536Abstract: Methods, systems, and apparatus for automatic sharding and load balancing in a distributed data processing system. In one aspect, a method includes determining workload distribution for an application across worker computers and in response to determining a load balancing operation is required: selecting a first worker computer having a highest load measure relative to respective load measure of the other work computers; determining one or more move operations for a partition of data assigned to the first worker computer and a weight for each move operation; and selecting the move operation with a highest weight the selected move operation.Type: ApplicationFiled: February 9, 2017Publication date: December 7, 2017Inventors: Alexander Shraer, Kfir Lev-Ari, Arif Abdulhusein Merchant, Vishesh Khemani, Atul Adya
-
Patent number: 9292319Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for implementing a global computing interface. One of the methods includes maintaining a global database of virtual machine configuration information, the database including information on cloud computing resources in each of a plurality of regions, wherein each region of the plurality of regions includes one or more datacenters. A virtual machine image is received in a first region. The global database is updated with configuration information about the received virtual machine image that is stored in the first region. A request is received to start one or more virtual machines from the virtual machine image in a second different region, and the virtual machine image is transmitted from the first region to the second region and one or more virtual machines are started from the virtual machine image in a datacenter of the second different region.Type: GrantFiled: March 15, 2013Date of Patent: March 22, 2016Assignee: Google Inc.Inventors: Joseph S. Beda, III, Cristian Petrescu-Prahova, Vishesh Khemani
-
Publication number: 20150149642Abstract: Techniques are described for facilitating a client's control over use of computing-related resources on the client's behalf. In some situations, a client's control is based on specifying a group of one or more resource usage constraints with a client resource constraint manager service, which provides information about the client-specified constraints to one or more other remote network services with which the client interacts. Those remote services then use that constraint information to determine whether and how to use computing-related resources on the client's behalf. For example, the resource usage constraints specified by a client may relate to one or more particular geographical areas and/or to one or more measures of relative proximity between computing-related resources (e.g., between multiple instances of a single type of computing-related resource provided by a single service, or between multiple distinct types of computing-related resources provided by multiple unaffiliated services).Type: ApplicationFiled: February 3, 2015Publication date: May 28, 2015Inventors: John Cormie, Vishesh Khemani, David R. Richardson, Luis Felipe Cabrera
-
Patent number: 8954592Abstract: Techniques for facilitating a client's control over use of computing-related resources on the client's behalf. In some situations, a client's control is based on specifying a group of one or more resource usage constraints with a client resource constraint manager service, which provides information about the client-specified constraints to one or more other remote network services with which the client interacts. Those remote services then use that constraint information to determine whether and how to use computing-related resources on the client's behalf. For example, the resource usage constraints specified by a client may relate to one or more particular geographical areas and/or to one or more measures of relative proximity between computing-related resources (e.g., between multiple instances of a single type of computing-related resource provided by a single service, or between multiple distinct types of computing-related resources provided by multiple unaffiliated services).Type: GrantFiled: December 21, 2007Date of Patent: February 10, 2015Assignee: Amazon Technologies, Inc.Inventors: John Cormie, Vishesh Khemani, David R. Richardson, Luis Felipe Cabrera
-
Patent number: 8862743Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for managing resources in a computing system. A plurality of distributed computing system resources are represented as nodes in a graph. Links between the nodes are defined, where each link in the links representing ownership or usage by a parent node of a respective resource represented by a child node. A message is sent from a source node in the graph to a target node in the graph wherein the source node is linked directly or indirectly to the target node. The message is processed by a message handler task associated with the target node, wherein processing includes allocating or deallocating a respective resource represented by the target node.Type: GrantFiled: January 12, 2012Date of Patent: October 14, 2014Assignee: Google Inc.Inventors: Cristian Petrescu-Prahova, Joseph S. Beda, III, Vishesh Khemani, Robert A. Horn
-
Publication number: 20130263131Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for implementing a global computing interface. One of the methods includes maintaining a global database of virtual machine configuration information, the database including information on cloud computing resources in each of a plurality of regions, wherein each region of the plurality of regions includes one or more datacenters. A virtual machine image is received in a first region. The global database is updated with configuration information about the received virtual machine image that is stored in the first region. A request is received to start one or more virtual machines from the virtual machine image in a second different region, and the virtual machine image is transmitted from the first region to the second region and one or more virtual machines are started from the virtual machine image in a datacenter of the second different region.Type: ApplicationFiled: March 15, 2013Publication date: October 3, 2013Inventors: Joseph S. Beda, III, Cristian Petrescu-Prahova, Vishesh Khemani