Patents by Inventor Andrew B. Fikes

Andrew B. Fikes 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: 10740301
    Abstract: A method of accessing data includes storing a table that includes a plurality of tablets corresponding to distinct non-overlapping table portions. Respective pluralities of tablet access objects and application objects are stored in a plurality of servers. A distinct application object and distinct tablet are associated with each tablet access object. Each application object corresponds to a distinct instantiation of an application associated with the table. The tablet access objects and associated application objects are redistributed among the servers in accordance with a first load-balancing criterion. A first request directed to a respective tablet is received from a client. In response, the tablet access object associated with the respective tablet is used to perform a data access operation on the respective tablet, and the application object associated with the respective tablet is used to perform an additional computational operation to produce a result to be returned to the client.
    Type: Grant
    Filed: January 11, 2018
    Date of Patent: August 11, 2020
    Assignee: Google LLC
    Inventors: Jeffrey A. Dean, Sanjay Ghemawat, Andrew B. Fikes, Yasushi Saito
  • Publication number: 20180173722
    Abstract: A method of accessing data includes storing a table that includes a plurality of tablets corresponding to distinct non-overlapping table portions. Respective pluralities of tablet access objects and application objects are stored in a plurality of servers. A distinct application object and distinct tablet are associated with each tablet access object. Each application object corresponds to a distinct instantiation of an application associated with the table. The tablet access objects and associated application objects are redistributed among the servers in accordance with a first load-balancing criterion. A first request directed to a respective tablet is received from a client. In response, the tablet access object associated with the respective tablet is used to perform a data access operation on the respective tablet, and the application object associated with the respective tablet is used to perform an additional computational operation to produce a result to be returned to the client.
    Type: Application
    Filed: January 11, 2018
    Publication date: June 21, 2018
    Inventors: Jeffrey A. Dean, Sanjay Ghemawat, Andrew B. Fikes, Yasushi Saito
  • Patent number: 9870371
    Abstract: A method of accessing data includes storing a table that includes a plurality of tablets corresponding to distinct non-overlapping table portions. Respective pluralities of tablet access objects and application objects are stored in a plurality of servers. A distinct application object and distinct tablet are associated with each tablet access object. Each application object corresponds to a distinct instantiation of an application associated with the table. The tablet access objects and associated application objects are redistributed among the servers in accordance with a first load-balancing criterion. A first request directed to a respective tablet is received from a client. In response, the tablet access object associated with the respective tablet is used to perform a data access operation on the respective tablet, and the application object associated with the respective tablet is used to perform an additional computational operation to produce a result to be returned to the client.
    Type: Grant
    Filed: July 9, 2013
    Date of Patent: January 16, 2018
    Assignee: GOOGLE LLC
    Inventors: Jeffrey A. Dean, Sanjay Ghemawat, Andrew B. Fikes, Yasushi Saito
  • Patent number: 8943309
    Abstract: A server receives a request from the client. The request includes a cryptographically protected object that includes a respective user identifier and validation value. When the respective user identifier is valid, the validation value fails a first requirement in a predefined manner, and a count of consecutively received cryptographically protected objects whose validation value has failed the first validation requirement is less than a threshold value that is greater than one, the server returns to the client a response to the request in accordance with the respective user identifier, the response including an updated cryptographically protected object that includes the respective user identifier and an updated validation value, and updates the count. When the respective user identifier is valid, the validation value fails a first requirement in the predefined manner, and the count is equal to or exceeds the threshold value, the server performs a predefined remedial action.
    Type: Grant
    Filed: December 12, 2006
    Date of Patent: January 27, 2015
    Assignee: Google Inc.
    Inventors: Marius Schilder, Robert C. Pike, Andrew B. Fikes, Michael Burrows
  • Patent number: 8850520
    Abstract: A first server associated with a first URL receives a request from a client, including a first object having a respective user identifier and validation value. The server evaluates the validation value of the received first object with respect to a first validation requirement. When the validation value of the first object fails the first validation requirement, the server sends a response to the client that causes the client to send a second request to a second URL that is distinct from the first URL. A second server associated with the second URL receives a request from the client that includes a second object, distinct from the first object. The second server evaluates the received second object with respect to a second validation requirement, and when the second object fails the second validation requirement, the second server invalidates the respective user identifier.
    Type: Grant
    Filed: December 12, 2006
    Date of Patent: September 30, 2014
    Assignee: Google Inc.
    Inventors: Robert C. Pike, Michael Burrows, Marius Schilder, Andrew B. Fikes
  • Publication number: 20130297592
    Abstract: A method of accessing data includes storing a table that includes a plurality of tablets corresponding to distinct non-overlapping table portions. Respective pluralities of tablet access objects and application objects are stored in a plurality of servers. A distinct application object and distinct tablet are associated with each tablet access object. Each application object corresponds to a distinct instantiation of an application associated with the table. The tablet access objects and associated application objects are redistributed among the servers in accordance with a first load-balancing criterion. A first request directed to a respective tablet is received from a client. In response, the tablet access object associated with the respective tablet is used to perform a data access operation on the respective tablet, and the application object associated with the respective tablet is used to perform an additional computational operation to produce a result to be returned to the client.
    Type: Application
    Filed: July 9, 2013
    Publication date: November 7, 2013
    Inventors: Jeffrey A. Dean, Sanjay Ghemawat, Andrew B. Fikes, Yasushi Saito
  • Patent number: 8484351
    Abstract: A method of accessing data includes storing a table that includes a plurality of tablets corresponding to distinct non-overlapping table portions. Respective pluralities of tablet access objects and application objects are stored in a plurality of servers. A distinct application object and distinct tablet are associated with each tablet access object. Each application object corresponds to a distinct instantiation of an application associated with the table. The tablet access objects and associated application objects are redistributed among the servers in accordance with a first load-balancing criterion. A first request directed to a respective tablet is received from a client. In response, the tablet access object associated with the respective tablet is used to perform a data access operation on the respective tablet, and the application object associated with the respective tablet is used to perform an additional computational operation to produce a result to be returned to the client.
    Type: Grant
    Filed: October 8, 2008
    Date of Patent: July 9, 2013
    Assignee: Google Inc.
    Inventors: Jeffrey A Dean, Sanjay Ghemawat, Andrew B. Fikes, Yasushi Saito
  • Patent number: 8176163
    Abstract: One or more servers receive requests from clients and send responses. At least a subset of the responses including cookies produced by the one or more servers, and at least a subset of the received requests including cookies that were previously produced by the one or more servers and sent to the clients with responses to previously processed requests. Each of the cookies includes a respective user identifier. The one or more servers analyzing the received cookies to detect a first condition, which indicates that a respective plurality of clients may be using cookies that have a shared user identifier. Upon detecting the first condition, the one or more servers send at least one of the clients of the respective plurality of clients a response that includes a new cookie having a user identifier that is distinct from the shared user identifier.
    Type: Grant
    Filed: March 5, 2010
    Date of Patent: May 8, 2012
    Assignee: Google Inc.
    Inventors: Andrew B. Fikes, Michael Burrows, Marius Schilder, Robert C. Pike
  • Patent number: 7779103
    Abstract: One or more servers receive requests from clients and send responses. At least a subset of the responses including cookies produced by the one or more servers, and at least a subset of the received requests including cookies that were previously produced by the one or more servers and sent to the clients with responses to previously processed requests. Each of the cookies includes a respective user identifier. The one or more servers analyzing the received cookies to detect a first condition, which indicates that a respective plurality of clients may be using cookies that have a shared user identifier. Upon detecting the first condition, the one or more servers send at least one of the clients of the respective plurality of clients a response that includes a new cookie having a user identifier that is distinct from the shared user identifier.
    Type: Grant
    Filed: December 12, 2006
    Date of Patent: August 17, 2010
    Assignee: Google Inc.
    Inventors: Andrew B. Fikes, Michael Burrows, Marius Schilder, Robert C. Pike
  • Patent number: 7693827
    Abstract: A system and method for using a user profile to order placed content in search results returned by a search engine. The user profile is based on search queries submitted by a user, the user's specific interaction with the documents identified by the search engine and personal information provided by the user. Placed content is ranked by a score based at least in part on a similarity of a particular placed content to the user's profile. User profiles can be created and/or stored on the client side or server side of a client-server network environment.
    Type: Grant
    Filed: July 13, 2004
    Date of Patent: April 6, 2010
    Assignee: Google Inc.
    Inventors: Oren Eli Zamir, Jeffrey L. Korn, Andrew B. Fikes, Stephen R. Lawrence
  • Patent number: 7567973
    Abstract: Each of a plurality of data items is stored in a table data structure. The table structure includes a plurality of columns. Each of the columns is associated with one of a plurality of locality groups. Each locality group is stored as one or more corresponding locality group files that include the data items in the columns associated with the respective locality group. In some embodiments, the columns of the table data structure may be grouped into groups of columns and each group of columns is associated with one of a plurality of locality groups. Each locality group is stored as one or more corresponding locality group files that include the data items in the group of columns associated with the respective locality group.
    Type: Grant
    Filed: August 5, 2005
    Date of Patent: July 28, 2009
    Assignee: Google Inc.
    Inventors: Michael Burrows, Fay Wen Chang, Jeffrey A. Dean, Andrew B. Fikes, Sanjay Ghemawat, Wilson C. Hsieh, Deborah Anne Wallach
  • Patent number: 7428524
    Abstract: Each of a plurality of data items is stored in a table data structure. A row identifier and column identifier are associated with each respective data item, and each respective item is stored at a logical location in the table data structure specified by its row identifier and column identifier. A plurality of data items is stored in a cell of the table data structure, and a timestamp is associated with each of the plurality of data items stored in the cell. Each of the data items stored in the cell has the same row identifier, the same column identifier, and a distinct timestamp. In some embodiments, each row identifier is a string of arbitrary length and arbitrary value. Similarly, in some embodiments each column identifier is a string of arbitrary length and arbitrary value.
    Type: Grant
    Filed: August 5, 2005
    Date of Patent: September 23, 2008
    Assignee: Google Inc.
    Inventors: Michael Burrows, Fay Wen Chang, Jeffrey A. Dean, Andrew B. Fikes, Sanjay Ghemawat, Wilson C. Hsieh, Deborah Anne Wallach