Patents by Inventor Lawrence E. Greenfield
Lawrence E. Greenfield 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).
-
Patent number: 11979336Abstract: The present disclosure relates to dynamically scheduling resource requests in a distributed system based on usage quotas. One example method includes identifying usage information for a distributed system including atoms, each atom representing a distinct item used by users of the distributed system; determining that a usage quota associated with the distributed system has been exceeded based on the usage information, the usage quota representing an upper limit for a particular type of usage of the distributed system; receiving a first request for a particular atom requiring invocation of the particular type of usage represented by the usage quota; determining that a second request for a different type of usage of the particular atom is waiting to be processed; and processing the second request for the particular atom before processing the first request.Type: GrantFiled: December 9, 2022Date of Patent: May 7, 2024Assignee: Google LLCInventors: Priyanka Gupta, Sean Quinlan, Lawrence E. Greenfield
-
Patent number: 11539636Abstract: The present disclosure relates to dynamically scheduling resource requests in a distributed system based on usage quotas. One example method includes identifying usage information for a distributed system including atoms, each atom representing a distinct item used by users of the distributed system; determining that a usage quota associated with the distributed system has been exceeded based on the usage information, the usage quota representing an upper limit for a particular type of usage of the distributed system; receiving a first request for a particular atom requiring invocation of the particular type of usage represented by the usage quota; determining that a second request for a different type of usage of the particular atom is waiting to be processed; and processing the second request for the particular atom before processing the first request.Type: GrantFiled: February 22, 2021Date of Patent: December 27, 2022Inventors: Lawrence E. Greenfield, Sean Quinlan, Priyanka Gupta
-
Publication number: 20220066811Abstract: A system including a data plane including a first virtual machine designated as a primary node and a second virtual machine designated as a secondary node, and a lock service configured to control changes in designation of the primary node and the secondary node. The first virtual machine repeatedly issues requests to the second virtual machine or lock service extending designation as the primary node for a first duration. The request is repeatedly issued within a duration shorter than the first duration. The second virtual machine receives an indication of the designation of the first virtual machine as the primary node being extended, issues a request to the lock service to change the designation of the primary node after passage the first duration of time without further indication of first virtual machine being extended as primary node, and receives confirmation from the lock service of the change in designation.Type: ApplicationFiled: August 31, 2021Publication date: March 3, 2022Inventors: Zhenyu Zhao, Zachary Fewtrell, Srishti Srivastava, Prajakta Joshi, Nikhil Kothari, Nayer Naguib, Lawrence E. Greenfield, Huseyin Simitci, Gopal Ashok, Cristopher Whitton Shumate
-
Patent number: 10931592Abstract: The present disclosure relates to dynamically scheduling resource requests in a distributed system based on usage quotas. One example method includes identifying usage information for a distributed system including atoms, each atom representing a distinct item used by users of the distributed system; determining that a usage quota associated with the distributed system has been exceeded based on the usage information, the usage quota representing an upper limit for a particular type of usage of the distributed system; receiving a first request for a particular atom requiring invocation of the particular type of usage represented by the usage quota; determining that a second request for a different type of usage of the particular atom is waiting to be processed; and processing the second request for the particular atom before processing the first request.Type: GrantFiled: April 8, 2019Date of Patent: February 23, 2021Assignee: Google LLCInventors: Lawrence E. Greenfield, Sean Quinlan, Priyanka Gupta
-
Patent number: 10257111Abstract: The present disclosure relates to dynamically scheduling resource requests in a distributed system based on usage quotas. One example method includes identifying usage information for a distributed system including atoms, each atom representing a distinct item used by users of the distributed system; determining that a usage quota associated with the distributed system has been exceeded based on the usage information, the usage quota representing an upper limit for a particular type of usage of the distributed system; receiving a first request for a particular atom requiring invocation of the particular type of usage represented by the usage quota; determining that a second request for a different type of usage of the particular atom is waiting to be processed; and processing the second request for the particular atom before processing the first request.Type: GrantFiled: August 29, 2017Date of Patent: April 9, 2019Assignee: Google LLCInventors: Lawrence E. Greenfield, Sean Quinlan, Priyanka Gupta
-
Patent number: 9781054Abstract: The present disclosure relates to dynamically scheduling resource requests in a distributed system based on usage quotas. One example method includes identifying usage information for a distributed system including atoms, each atom representing a distinct item used by users of the distributed system; determining that a usage quota associated with the distributed system has been exceeded based on the usage information, the usage quota representing an upper limit for a particular type of usage of the distributed system; receiving a first request for a particular atom requiring invocation of the particular type of usage represented by the usage quota; determining that a second request for a different type of usage of the particular atom is waiting to be processed; and processing the second request for the particular atom before processing the first request.Type: GrantFiled: July 27, 2015Date of Patent: October 3, 2017Assignee: Google Inc.Inventors: Lawrence E. Greenfield, Sean Quinlan, Priyanka Gupta
-
Publication number: 20160132263Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing data on storage nodes. In one aspect, a method includes receiving a file to be stored across a plurality of storage nodes each including a cache. The is stored by storing portions of the file each on a different storage node. A first portion is written to a first storage node's cache until determining that the first storage node's cache is full. A different second storage node is selected in response to determining that the first storage node's cache is full. For each portion of the file, a location of the portion is recorded, the location indicating at least a storage node storing the portion.Type: ApplicationFiled: January 19, 2016Publication date: May 12, 2016Inventors: Andrew Kadatch, Lawrence E. Greenfield
-
Patent number: 9262093Abstract: A storage system may include a set of storage devices; a controller; and a management device. The controller may arbitrate among operations for execution by the set of storage devices, where the operations are received from users that are associated with priority levels. The controller may maintain queues, corresponding to the users, to queue operations from the users. The controller may additionally include a scoring component and a scheduler. The scoring component may maintain a score for each queue. The scheduler may choose, from the queues and based on the score of each queue, one of the operations to service. The management device may receive usage updates, from the controller, reflecting usage of the set of storage devices; calculate a maximum allowed usage levels, based on the received usage updates, for each user; and transmit the calculated maximum usage levels to the controller.Type: GrantFiled: December 16, 2013Date of Patent: February 16, 2016Assignee: Google Inc.Inventors: Lawrence E. Greenfield, Alexander Khesin
-
Patent number: 9250830Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing data on storage nodes. In one aspect, a method includes receiving a file to be stored across a plurality of storage nodes each including a cache. The is stored by storing portions of the file each on a different storage node. A first portion is written to a first storage node's cache until determining that the first storage node's cache is full. A different second storage node is selected in response to determining that the first storage node's cache is full. For each portion of the file, a location of the portion is recorded, the location indicating at least a storage node storing the portion.Type: GrantFiled: June 2, 2014Date of Patent: February 2, 2016Assignee: Google Inc.Inventors: Andrew Kadatch, Lawrence E. Greenfield
-
Publication number: 20140281233Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing data on storage nodes. In one aspect, a method includes receiving a file to be stored across a plurality of storage nodes each including a cache. The is stored by storing portions of the file each on a different storage node. A first portion is written to a first storage node's cache until determining that the first storage node's cache is full. A different second storage node is selected in response to determining that the first storage node's cache is full. For each portion of the file, a location of the portion is recorded, the location indicating at least a storage node storing the portion.Type: ApplicationFiled: June 2, 2014Publication date: September 18, 2014Applicant: Google Inc.Inventors: Andrew Kadatch, Lawrence E. Greenfield
-
Patent number: 8745329Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing data on storage nodes. In one aspect, a method includes receiving a file to be stored across a plurality of storage nodes each including a cache. The is stored by storing portions of the file each on a different storage node. A first portion is written to a first storage node's cache until determining that the first storage node's cache is full. A different second storage node is selected in response to determining that the first storage node's cache is full. For each portion of the file, a location of the portion is recorded, the location indicating at least a storage node storing the portion.Type: GrantFiled: January 20, 2011Date of Patent: June 3, 2014Assignee: Google Inc.Inventors: Andrew Kadatch, Lawrence E. Greenfield
-
Patent number: 8612990Abstract: A storage system may include a set of storage devices; a controller; and a management device. The controller may arbitrate among operations for execution by the set of storage devices, where the operations are received from users that are associated with priority levels. The controller may maintain queues, corresponding to the users, to queue operations from the users. The controller may additionally include a scoring component and a scheduler. The scoring component may maintain a score for each queue. The scheduler may choose, from the queues and based on the score of each queue, one of the operations to service. The management device may receive usage updates, from the controller, reflecting usage of the set of storage devices; calculate a maximum allowed usage levels, based on the received usage updates, for each user; and transmit the calculated maximum usage levels to the controller.Type: GrantFiled: October 25, 2011Date of Patent: December 17, 2013Assignee: Google Inc.Inventors: Lawrence E. Greenfield, Alexander Khesin
-
Patent number: 8484222Abstract: One embodiment of the present invention provides a system that automatically determines if a location is a standalone location, which can be unambiguously identified by a name for the location alone. During operation, the system determines a name score for the location which indicates a popularity of the name for the location. The system also obtains a signature for the location, wherein the signature is a set of combinations of location specifiers, wherein each combination of location specifiers refers to the location. The system then determines a signature score for the location which indicates a popularity of the signature for the location. Finally, the system determines whether the location is a standalone location based on the name score and the signature score.Type: GrantFiled: December 1, 2006Date of Patent: July 9, 2013Assignee: Google Inc.Inventors: Xin Li, Jiang Qian, Daniel T. Egnor, Lawrence E. Greenfield
-
Publication number: 20120191912Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for storing data on storage nodes. In one aspect, a method includes receiving a file to be stored across a plurality of storage nodes each including a cache. The is stored by storing portions of the file each on a different storage node. A first portion is written to a first storage node's cache until determining that the first storage node's cache is full. A different second storage node is selected in response to determining that the first storage node's cache is full. For each portion of the file, a location of the portion is recorded, the location indicating at least a storage node storing the portion.Type: ApplicationFiled: January 20, 2011Publication date: July 26, 2012Applicant: GOOGLE INC.Inventors: Andrew Kadatch, Lawrence E. Greenfield
-
Patent number: 8046371Abstract: A system may identify a first document associated with a geographic location within a geographical area and identify a second document associated with a geographic location outside the geographical area. The system may also assign a first score to the first document based on a first scoring function and assign a second score to the second document based on a second scoring function.Type: GrantFiled: September 29, 2010Date of Patent: October 25, 2011Assignee: Google Inc.Inventors: Brian O'Clair, Daniel Egnor, Lawrence E Greenfield
-
Publication number: 20110022604Abstract: A system may identify a first document associated with a geographic location within a geographical area and identify a second document associated with a geographic location outside the geographical area. The system may also assign a first score to the first document based on a first scoring function and assign a second score to the second document based on a second scoring function.Type: ApplicationFiled: September 29, 2010Publication date: January 27, 2011Applicant: GOOGLE INC.Inventors: Brian O'Clair, Daniel Egnor, Lawrence E. Greenfield
-
Patent number: 7822751Abstract: A system may identify a first document associated with a geographic location within a geographical area and identify a second document associated with a geographic location outside the geographical area. The system may also assign a first score to the first document based on a first scoring function and assign a second score to the second document based on a second scoring function.Type: GrantFiled: May 27, 2005Date of Patent: October 26, 2010Assignee: Google Inc.Inventors: Brian O'Clair, Daniel Egnor, Lawrence E. Greenfield