Patents by Inventor Brian F. Cooper

Brian F. Cooper 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: 20240160641
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, a leader is selected from among candidate computing clusters. To make this selection, an activity monitor predicts or monitors the workload of one or more clients. Different activities of the workload are given corresponding weights. The delay in performing requested activities, modified by these weights is found, and the candidate leader with the lowest weighted delay is selected as the leader.
    Type: Application
    Filed: January 20, 2024
    Publication date: May 16, 2024
    Applicant: Google LLC
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Patent number: 11907258
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, a leader is selected from among candidate computing clusters. To make this selection, an activity monitor predicts or monitors the workload of one or more clients. Different activities of the workload are given corresponding weights. The delay in performing requested activities, modified by these weights is found, and the candidate leader with the lowest weighted delay is selected as the leader.
    Type: Grant
    Filed: December 28, 2022
    Date of Patent: February 20, 2024
    Assignee: Google LLC
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Publication number: 20230188452
    Abstract: Methods and systems for monitoring performance in a distributed storage system described. One example method includes identifying requests sent by clients to the distributed storage system, each request including request parameter values for request parameters; generating probe requests based on the identified requests, the probe requests including probe request parameter values for probe request parameter values, representing a statistical sample of the request parameters included in the identified requests; sending the generated probe requests to the distributed storage system over a network, wherein the distributed storage system is configured to perform preparations for servicing each probe request in response to receiving the probe request; receiving responses to the probe requests from the distributed storage system; and outputting at least one performance metric value measuring a current performance state of the distributed storage system based on the received responses.
    Type: Application
    Filed: February 7, 2023
    Publication date: June 15, 2023
    Applicant: Google LLC
    Inventors: Vadim Borisov, Andrew Fikes, Brian F. Cooper
  • Publication number: 20230136193
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, a leader is selected from among candidate computing clusters. To make this selection, an activity monitor predicts or monitors the workload of one or more clients. Different activities of the workload are given corresponding weights. The delay in performing requested activities, modified by these weights is found, and the candidate leader with the lowest weighted delay is selected as the leader.
    Type: Application
    Filed: December 28, 2022
    Publication date: May 4, 2023
    Applicant: Google LLC
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Patent number: 11582130
    Abstract: Methods and systems for monitoring performance in a distributed storage system described. One example method includes identifying requests sent by clients to the distributed storage system, each request including request parameter values for request parameters; generating probe requests based on the identified requests, the probe requests including probe request parameter values for probe request parameter values, representing a statistical sample of the request parameters included in the identified requests; sending the generated probe requests to the distributed storage system over a network, wherein the distributed storage system is configured to perform preparations for servicing each probe request in response to receiving the probe request; receiving responses to the probe requests from the distributed storage system, and outputting at least one performance metric value measuring a current performance state of the distributed storage system based on the received responses.
    Type: Grant
    Filed: June 15, 2020
    Date of Patent: February 14, 2023
    Assignee: Google LLC
    Inventors: Vadim Borisov, Andrew Fikes, Brian F. Cooper
  • Patent number: 11556561
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, a leader is selected from among candidate computing dusters. To make this selection, an activity monitor predicts or monitors the workload of one or more clients. Different activities of the workload are given corresponding weights. The delay in performing requested activities, modified by these weights is found, and the candidate leader with the lowest weighted delay is selected as the leader.
    Type: Grant
    Filed: October 19, 2020
    Date of Patent: January 17, 2023
    Assignee: Google LLC
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Publication number: 20210034641
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, a leader is selected from among candidate computing dusters. To make this selection, an activity monitor predicts or monitors the workload of one or more clients. Different activities of the workload are given corresponding weights. The delay in performing requested activities, modified by these weights is found, and the candidate leader with the lowest weighted delay is selected as the leader.
    Type: Application
    Filed: October 19, 2020
    Publication date: February 4, 2021
    Applicant: Google LLC
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Publication number: 20200382403
    Abstract: Methods and systems for monitoring performance in a distributed storage system described. One example method includes identifying requests sent by clients to the distributed storage system, each request including request parameter values for request parameters; generating probe requests based on the identified requests, the probe requests including probe request parameter values for probe request parameter values, representing a statistical sample of the request parameters included in the identified requests; sending the generated probe requests to the distributed storage system over a network, wherein the distributed storage system is configured to perform preparations for servicing each probe request in response to receiving the probe request; receiving responses to the probe requests from the distributed storage system, and outputting at least one performance metric value measuring a current performance state of the distributed storage system based on the received responses.
    Type: Application
    Filed: June 15, 2020
    Publication date: December 3, 2020
    Applicant: Google LLC
    Inventors: Vadim Borisov, Andrew Fikes, Brian F. Cooper
  • Patent number: 10831777
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, a leader is selected from among candidate computing clusters. To make this selection, an activity monitor predicts or monitors the workload of one or more clients. Different activities of the workload are given corresponding weights. The delay in performing requested activities, modified by these weights is found, and the candidate leader with the lowest weighted delay is selected as the leader.
    Type: Grant
    Filed: July 1, 2016
    Date of Patent: November 10, 2020
    Assignee: Google LLC
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Patent number: 10686686
    Abstract: Methods and systems for monitoring performance in a distributed storage system described. One example method includes identifying requests sent by clients to the distributed storage system, each request including request parameter values for request parameters; generating probe requests based on the identified requests, the probe requests including probe request parameter values for probe request parameter values, representing a statistical sample of the request parameters included in the identified requests; sending the generated probe requests to the distributed storage system over a network, wherein the distributed storage system is configured to perform preparations for servicing each probe request in response to receiving the probe request; receiving responses to the probe requests from the distributed storage system; and outputting at least one performance metric value measuring a current performance state of the distributed storage system based on the received responses.
    Type: Grant
    Filed: November 10, 2016
    Date of Patent: June 16, 2020
    Assignee: Google LLC
    Inventors: Vadim Borisov, Andrew Fikes, Brian F. Cooper
  • Patent number: 10521450
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, the role of voting is assigned to a number of computing clusters. To make this selection, a task assigning service finds a candidate leader and M computing clusters to be used as voters. This selection may be based on finding latencies between the M computing clusters and the leader.
    Type: Grant
    Filed: July 1, 2016
    Date of Patent: December 31, 2019
    Assignee: Google LLC
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Patent number: 10346425
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, an indication that a number N of clusters are to be assigned a replica role and a second number M of the replica-role assigned clusters are to be assigned to a voting role. N computing clusters are selected using workload data, and M of the clusters are assigned to a voting role.
    Type: Grant
    Filed: July 1, 2016
    Date of Patent: July 9, 2019
    Assignee: Google LLC
    Inventors: Alexander Shraer, Arif Abdulhusein Merchant, Artyom Sharov, Brian F. Cooper
  • Publication number: 20170141992
    Abstract: Methods and systems for monitoring performance in a distributed storage system described. One example method includes identifying requests sent by clients to the distributed storage system, each request including request parameter values for request parameters; generating probe requests based on the identified requests, the probe requests including probe request parameter values for probe request parameter values, representing a statistical sample of the request parameters included in the identified requests; sending the generated probe requests to the distributed storage system over a network, wherein the distributed storage system is configured to perform preparations for servicing each probe request in response to receiving the probe request; receiving responses to the probe requests from the distributed storage system; and outputting at least one performance metric value measuring a current performance state of the distributed storage system based on the received responses.
    Type: Application
    Filed: November 10, 2016
    Publication date: May 18, 2017
    Inventors: Vadim Borisov, Andrew Fikes, Brian F. Cooper
  • Publication number: 20170006105
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, an indication that a number N of clusters are to be assigned a replica role and a second number M of the replica-role assigned clusters are to be assigned to a voting role. N computing clusters are selected using workload data, and M of the clusters are assigned to a voting role.
    Type: Application
    Filed: July 1, 2016
    Publication date: January 5, 2017
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Publication number: 20170004219
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, a leader is selected from among candidate computing clusters. To make this selection, an activity monitor predicts or monitors the workload of one or more clients. Different activities of the workload are given corresponding weights. The delay in performing requested activities, modified by these weights is found, and the candidate leader with the lowest weighted delay is selected as the leader.
    Type: Application
    Filed: July 1, 2016
    Publication date: January 5, 2017
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Publication number: 20170004193
    Abstract: Replicas are selected in a large distributed network, and the roles for these replicas are identified. In one example, the role of voting is assigned to a number of computing clusters. To make this selection, a task assigning service finds a candidate leader and M computing clusters to be used as voters. This selection may be based on finding latencies between the M computing clusters and the leader.
    Type: Application
    Filed: July 1, 2016
    Publication date: January 5, 2017
    Inventors: Alexander Shraer, Artyom Sharov, Arif Abdulhusein Merchant, Brian F. Cooper
  • Publication number: 20140344263
    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for receiving a search query that includes a query term from a client device; obtaining first search results for the search query; identifying a candidate expansion of the query term in text associated with the first search results; revising the search query to include the candidate expansion of the query term; and obtaining second search results for the revised search query.
    Type: Application
    Filed: August 1, 2011
    Publication date: November 20, 2014
    Inventors: Kedar Dhamdhere, P. Pandurang Nayak, Thomas Strohmann, Brian F. Cooper
  • Publication number: 20110225120
    Abstract: A system and method for maintaining a database with a plurality of replicas that are geographically distributed. A plurality of tables are stored in a first replica, each table including a plurality of records. The system identifying if the record is a stub and requesting a lease from a second replica designated as master for the record if the record is a stub. The system receiving a copy of the record from the second replica and storing data fields of the record in the first replica after receiving the lease.
    Type: Application
    Filed: March 11, 2010
    Publication date: September 15, 2011
    Applicant: Yahoo! Inc.
    Inventors: Brian F. Cooper, Sudarshan V. Kadambi
  • Publication number: 20110225121
    Abstract: A method and system for maintaining a database with a plurality of replicas that are geographically distributed. A plurality of tables are stored in the database, each table includes a plurality of records. The location where each record is stored being controlled based on a constraint property included in the record.
    Type: Application
    Filed: March 11, 2010
    Publication date: September 15, 2011
    Applicant: Yahoo! Inc.
    Inventors: Brian F. Cooper, Sudarshan V. Kadambi
  • Publication number: 20100174863
    Abstract: A system is described for providing scalable in-memory caching for a distributed database. The system may include a cache, an interface, a non-volatile memory and a processor. The cache may store a cached copy of data items stored in the non-volatile memory. The interface may communicate with devices and a replication server. The non-volatile memory may store the data items. The processor may receive an update to a data item from a device to be applied to the non-volatile memory. The processor may apply the update to the cache. The processor may generate an acknowledgement indicating that the update was applied to the non-volatile memory and may communicate the acknowledgment to the device. The processor may then communicate the update to a replication server. The processor may apply the update to the non-volatile memory upon receiving an indication that the update was stored by the replication server.
    Type: Application
    Filed: March 15, 2010
    Publication date: July 8, 2010
    Applicant: Yahoo! Inc.
    Inventors: Brian F. Cooper, Adam Silberstein, Utkarsh Srivastava, Raghu Ramakrishnan, Rodrigo Fonseca