Patents by Inventor Alexander Lloyd
Alexander Lloyd 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: 10042881Abstract: The present technology proposes techniques for ensuring globally consistent transactions. This technology may allow distributed systems to ensure the causal order of read and write transactions across different partitions of a distributed database. By assigning causally generated timestamps to the transactions based on one or more globally coherent time services, the timestamps can be used to preserve and represent the causal order of the transactions in the distributed system. In this regard, certain transactions may wait for a period of time after choosing a timestamp in order to delay the start of any second transaction that might depend on it. The wait may ensure that the effects of the first transaction are not made visible until its timestamp is guaranteed to be in the past. This may ensure that a consistent snapshot of the distributed database can be determined for any past timestamp.Type: GrantFiled: November 22, 2016Date of Patent: August 7, 2018Assignee: Google LLCInventors: Wilson Cheng-Yi Hsieh, Alexander Lloyd, Peter Hochschild, Michael James Boyer Epstein, Sean Quinlan
-
Patent number: 10037346Abstract: The subject matter described herein provides techniques to ensure that queries of a distributed database observe a consistent read of the database without locking or logging. In this regard, next-write timestamps uniquely identify a set of write transactions whose updates can be observed by reads. By publishing the next-write timestamps from within an extendable time lease and tracking a “safe timestamp,” the database queries can be executed without logging read operations or blocking future write transactions, and clients issuing the queries at the “safe timestamp” observe a consistent view of the database as it exists on or before that timestamp. Aspects of this disclosure also provide for extensions, done cheaply and without the need for logging, to the range of timestamps at which read transactions can be executed.Type: GrantFiled: October 26, 2012Date of Patent: July 31, 2018Assignee: Google LLCInventors: Wilson Cheng-Yi Hsieh, Eric Hugh Veach, Michael James Boyer Epstein, Alexander Lloyd
-
Patent number: 9915970Abstract: The present technology proposes techniques for generating globally coherent timestamps. This technology may allow distributed systems to causally order transactions without incurring various types of communication delays inherent in explicit synchronization. By globally deploying a number of time masters that are based on various types of time references, the time masters may serve as primary time references. Through an interactive interface, the techniques may track, calculate and record data relative to each time master thus providing the distributed systems with causal timestamps.Type: GrantFiled: October 28, 2015Date of Patent: March 13, 2018Assignee: Google LLCInventors: Peter Hochschild, Alexander Lloyd, Wilson Cheng-Yi Hsieh, Robert Edman Felderman, Michael James Boyer Epstein
-
Publication number: 20170357674Abstract: The various embodiments described herein include methods, devices, and systems for reading and writing data from a database table. In one aspect, a method of reading and writing data from a database table, includes: (1) initiating a write transaction to write data to a first non-key column of a row of the database table, the database table having a plurality of rows, each row comprising a primary key and a plurality of non-key columns; (2) locking the first non-key column; and (3) in accordance with a determination that the second non-key column is not locked, initiating a read transaction to read data from the second non-key column, where initiation of the read transaction occurs prior to completion of the write transaction.Type: ApplicationFiled: July 31, 2017Publication date: December 14, 2017Inventors: Wilson Chang-Yi Hsieh, Alexander Lloyd, Eric Hugh Veach
-
Patent number: 9774676Abstract: A system, computer-readable storage medium storing at least one program, and a computer-implemented method for identifying a storage group in a distributed storage system into which data is to be stored is presented. A data structure including information relating to storage groups in a distributed storage system is maintained, where a respective entry in the data structure for a respective storage group includes placement metrics for the respective storage group. A request to identify a storage group into which data is to be stored is received from a computer system. The data structure is used to determine an identifier for a storage group whose placement metrics satisfy a selection criterion. The identifier for the storage group whose placement metrics satisfy the selection criterion is returned to the computer system.Type: GrantFiled: May 21, 2013Date of Patent: September 26, 2017Assignee: GOOGLE INC.Inventors: Jeffrey Adgate Dean, Sanjay Ghemawat, Yasushi Saito, Andrew Fikes, Christopher Jorgen Taylor, Sean Quinlan, Michal Piotr Szymaniak, Sebastian Kanthak, Wilson Cheng-Yi Hsieh, Alexander Lloyd, Michael James Boyer Epstein
-
Patent number: 9747310Abstract: A method reads and writes data from a database table. Each row in the table has a primary key and multiple non-key columns. Each non-key column has one or more column values, and each column value has an associated timestamp that identifies when the column value was stored. The timestamps associated with the column values in each non-key column provide a unique order for the column values. A read transaction is initiated to read from a first non-key column of a first row. A write transaction is in progress that is updating a second non-key column of the first row, where the second non-key column is distinct from the first non-key column. The write transaction holds a lock on the second non-key column of the first row. The method concurrently reads the data from the first non-key column and writes a new column value to the second non-key column.Type: GrantFiled: June 4, 2013Date of Patent: August 29, 2017Assignee: GOOGLE INC.Inventors: Wilson Cheng-Yi Hsieh, Alexander Lloyd, Eric Hugh Veach
-
Patent number: 9596294Abstract: A system, computer-readable storage medium storing at least one program, and a computer-implemented method for committing transactions on remote servers is presented. Commit requests are issued to remote servers in a set of remote servers to request that the remote servers in the set of remote servers agree to commit a transaction at a first designated future time. When responses from the remote servers in the set of remote servers are received before a first abort time and indicate that all remote servers in the set of remote servers have agreed to commit the transaction at the first designated future time, commit commands are issued to the remote servers in the set of remote servers instructing the remote servers to perform the transaction at the first designated future time.Type: GrantFiled: May 10, 2013Date of Patent: March 14, 2017Assignee: GOOGLE INC.Inventors: Sebastian Kanthak, Alexander Lloyd, Chris Jorgen Taylor, Andrew Fikes
-
Patent number: 9569253Abstract: The present technology proposes techniques for ensuring globally consistent transactions. This technology may allow distributed systems to ensure the causal order of read and write transactions across different partitions of a distributed database. By assigning causally generated timestamps to the transactions based on one or more globally coherent time services, the timestamps can be used to preserve and represent the causal order of the transactions in the distributed system. In this regard, certain transactions may wait for a period of time after choosing a timestamp in order to delay the start of any second transaction that might depend on it. The wait may ensure that the effects of the first transaction are not made visible until its timestamp is guaranteed to be in the past. This may ensure that a consistent snapshot of the distributed database can be determined for any past timestamp.Type: GrantFiled: May 30, 2013Date of Patent: February 14, 2017Assignee: Google Inc.Inventors: Wilson Cheng-Yi Hsieh, Alexander Lloyd, Peter Hochschild, Michael James Boyer Epstein, Sean Quinlan
-
Patent number: 9398077Abstract: Providing a framework for developing, deploying and managing sophisticated mobile solutions, with a simple Web-like programming model that integrates with existing enterprise components. Mobile applications may consist of a data model definition, user interface templates, a client side controller, which includes scripts that define actions, and, on the server side, a collection of conduits, which describe how to mediate between the data model and the enterprise. In one embodiment, the occasionally-connected application server assumes that data used by mobile applications is persistently stored and managed by external systems. The occasionally-connected data model can be a METAdata description of the mobile application's anticipated usage of this data, and be optimized to enable the efficient traversal and synchronization of this data between occasionally connected devices and external systems.Type: GrantFiled: November 20, 2013Date of Patent: July 19, 2016Assignee: ORACLE INTERNATIONAL CORPORATIONInventors: Adam Bosworth, Richard Burdon, Alexander Khesin, Alexander Lloyd, Farokh H. Eskafi, Ken Ong, Terry Leonard Lucas, Alexander Bosworth
-
Publication number: 20160132581Abstract: Paxos transactions are pipelined in a distributed database formed by a plurality of replica servers. A leader server is selected by consensus of the replicas, and receives a lock on leadership for an epoch. The leader gets Paxos log numbers for the current epoch, which are greater than the numbers allocated in previous epochs. The leader receives database write requests, and assigns a Paxos number to each request. The leader constructs a proposed transaction for each request, which includes the assigned Paxos number and incorporates the request. The leader transmits the proposed transactions to the replicas. Two or more write requests that access distinct objects in the database can proceed simultaneously. The leader commits a proposed transaction to the database after receiving a plurality of confirmations for the proposed transaction from the replicas. After all the Paxos numbers have been assigned, inter-epoch tasks are performed before beginning a subsequent epoch.Type: ApplicationFiled: January 5, 2016Publication date: May 12, 2016Inventors: Wilson Cheng-Yi Hsieh, Alexander Lloyd
-
Patent number: 9256506Abstract: A system, computer-readable storage medium storing at least one program, and a computer-implemented method for performing operations on target servers is presented. A request including an operation is received. A set of target servers associated with the operation is identified. The following request processing operations are performed until a predetermined termination condition has been satisfied: a target server in the set of target servers to which the request has not been issued and whose health metrics satisfy health criteria is identified, the request to perform the operation is issued to the target server, and when the request to perform the operation fails at the target server, health metrics for the target server are updated to indicate that the request to perform the operation failed at the target server and health check operation is scheduled to be performed with respect to the target server.Type: GrantFiled: June 3, 2013Date of Patent: February 9, 2016Assignee: GOOGLE INC.Inventors: Chris Jorgen Taylor, Sanjay Ghemawat, Alexander Lloyd, Andrew Fikes, Yaz Saito, Wilson Cheng-Yi Hsieh, Christopher Cunningham Frost
-
Patent number: 9230000Abstract: Paxos transactions are pipelined in a distributed database formed by a plurality of replica servers. A leader server is selected by consensus of the replicas, and receives a lock on leadership for an epoch. The leader gets Paxos log numbers for the current epoch, which are greater than the numbers allocated in previous epochs. The leader receives database write requests, and assigns a Paxos number to each request. The leader constructs a proposed transaction for each request, which includes the assigned Paxos number and incorporates the request. The leader transmits the proposed transactions to the replicas. Two or more write requests that access distinct objects in the database can proceed simultaneously. The leader commits a proposed transaction to the database after receiving a plurality of confirmations for the proposed transaction from the replicas. After all the Paxos numbers have been assigned, inter-epoch tasks are performed before beginning a subsequent epoch.Type: GrantFiled: June 4, 2013Date of Patent: January 5, 2016Assignee: GOOGLE INC.Inventors: Wilson Cheng-Yi Hsieh, Alexander Lloyd
-
Patent number: 9203600Abstract: The present technology proposes techniques for generating globally coherent timestamps. This technology may allow distributed systems to causally order transactions without incurring various types of communication delays inherent in explicit synchronization. By globally deploying a number of time masters that are based on various types of time references, the time masters may serve as primary time references. Through an interactive interface, the techniques may track, calculate and record data relative to each time master thus providing the distributed systems with causal timestamps.Type: GrantFiled: December 11, 2014Date of Patent: December 1, 2015Assignee: Google Inc.Inventors: Peter Hochschild, Alexander Lloyd, Wilson Cheng-Yi Hsieh, Robert Edman Felderman, Michael James Boyer Epstein
-
Patent number: 9069835Abstract: A distributed storage system is provided. The distributed storage system includes multiple front-end servers and zones for managing data for clients. Data within the distributed storage system is associated with a plurality of accounts and divided into a plurality of groups, each group including a plurality of splits, each split being associated with a respective account, and each group having multiple tablets and each tablet managed by a respective tablet server of the distributed storage system. Data associated with different accounts may be replicated within the distributed storage system using different data replication policies. There is no limit to the amount of data for an account by adding new splits to the distributed storage system. In response to a client request for a particular account's data, a front-end server communicates such request to a particular zone that has the client-requested data and returns the client-requested data to the requesting client.Type: GrantFiled: May 20, 2013Date of Patent: June 30, 2015Assignee: GOOGLE INC.Inventors: Jeffrey Adgate Dean, Michael James Boyer Epstein, Andrew Fikes, Sanjay Ghemawat, Wilson Cheng-Yi Hsieh, Alexander Lloyd, Yasushi Saito, Michal Piotr Szymaniak, Sebastian Kanthak, Chris Jorgen Taylor
-
Patent number: 8938636Abstract: The present technology proposes techniques for generating globally coherent timestamps. This technology may allow distributed systems to causally order transactions without incurring various types of communication delays inherent in explicit synchronization. By globally deploying a number of time masters that are based on various types of time references, the time masters may serve as primary time references. Through an interactive interface, the techniques may track, calculate and record data relative to each time master thus providing the distributed systems with causal timestamps.Type: GrantFiled: May 18, 2012Date of Patent: January 20, 2015Assignee: Google Inc.Inventors: Peter Hochschild, Alexander Lloyd, Wilson Cheng-Yi Hsieh, Robert Edman Felderman, Michael James Boyer Epstein
-
Publication number: 20140280771Abstract: Providing a framework for developing, deploying and managing sophisticated mobile solutions, with a simple Web-like programming model that integrates with existing enterprise components. Mobile applications may consist of a data model definition, user interface templates, a client side controller, which includes scripts that define actions, and, on the server side, a collection of conduits, which describe how to mediate between the data model and the enterprise. In one embodiment, the occasionally-connected application server assumes that data used by mobile applications is persistently stored and managed by external systems. The occasionally-connected data model can be a METAdata description of the mobile application's anticipated usage of this data, and be optimized to enable the efficient traversal and synchronization of this data between occasionally connected devices and external systems.Type: ApplicationFiled: November 20, 2013Publication date: September 18, 2014Applicant: Oracle International CorporationInventors: Adam Bosworth, Richard Burdon, Alexander Khesin, Alexander Lloyd, Farokh H. Eskafi, Ken Ong, Terry Leonard Lucas, Alexander Bosworth
-
Patent number: 8790305Abstract: In a peristaltic medical infusion pump unit, comprising a peristaltic assembly and a counter surface or anvil facing said peristaltic assembly and provided by the inner surface of a door pivotally mounted on a housing of the unit, the door is readily non-destructively removable and replaceable. In use of the peristaltic pump unit, a flexible resilient tube forming part of a medical fluid delivery line is extended between the peristaltic assembly and the counter surface or anvil provided by the door. The medical fluid delivery line has first and second color coded fittings spaced therealong upstream and downstream of the peristaltic assembly and the region of the housing of the pump unit across which the infusion line is extended is provided, correspondingly spaced above and below the peristaltic assembly with correspondingly color coded support means for these fittings.Type: GrantFiled: January 9, 2012Date of Patent: July 29, 2014Assignee: CareFusion 303, Inc.Inventors: Nicholas Bryant Haylor, Simon Francis Everleigh, Rene Werner Ruedi, Alexander Lloyd, James Gower Johnson Shearn
-
Patent number: 8645973Abstract: Providing a framework for developing, deploying and managing sophisticated mobile solutions, with a simple Web-like programming model that integrates with existing enterprise components. Mobile applications may consist of a data model definition, user interface templates, a client side controller, which includes scripts that define actions, and, on the server side, a collection of conduits, which describe how to mediate between the data model and the enterprise. In one embodiment, the occasionally-connected application server assumes that data used by mobile applications is persistently stored and managed by external systems. The occasionally-connected data model can be a METAdata description of the mobile application's anticipated usage of this data, and be optimized to enable the efficient traversal and synchronization of this data between occasionally connected devices and external systems.Type: GrantFiled: September 18, 2007Date of Patent: February 4, 2014Assignee: Oracle International CorporationInventors: Adam Bosworth, Richard Burdon, Alexander Khesin, Alexander Lloyd, Farokh H. Eskafi, Ken Ong, Terry Leonard Lucas, Alexander Bosworth
-
Publication number: 20140006458Abstract: A method reads and writes data from a database table. Each row in the table has a primary key and multiple non-key columns. Each non-key column has one or more column values, and each column value has an associated timestamp that identifies when the column value was stored. The timestamps associated with the column values in each non-key column provide a unique order for the column values. A read transaction is initiated to read from a first non-key column of a first row. A write transaction is in progress that is updating a second non-key column of the first row, where the second non-key column is distinct from the first non-key column. The write transaction holds a lock on the second non-key column of the first row. The method concurrently reads the data from the first non-key column and writes a new column value to the second non-key column.Type: ApplicationFiled: June 4, 2013Publication date: January 2, 2014Applicant: Google Inc.Inventors: Wilson Cheng-Yi Hsieh, Alexander Lloyd, Eric Hugh Veach
-
Publication number: 20130346540Abstract: A system, computer-readable storage medium storing at least one program, and a computer-implemented method for identifying a storage group in a distributed storage system into which data is to be stored is presented. A data structure including information relating to storage groups in a distributed storage system is maintained, where a respective entry in the data structure for a respective storage group includes placement metrics for the respective storage group. A request to identify a storage group into which data is to be stored is received from a computer system. The data structure is used to determine an identifier for a storage group whose placement metrics satisfy a selection criterion. The identifier for the storage group whose placement metrics satisfy the selection criterion is returned to the computer system.Type: ApplicationFiled: May 21, 2013Publication date: December 26, 2013Applicant: Google Inc.Inventors: Jeffrey Adgate Dean, Sanjay Ghemawat, Yasushi Saito, Andrew Fikes, Christopher Jorgen Taylor, Sean Quinlan, Michal Piotr Szymaniak, Sebastian Kanthak, Wilson Cheng-Yi Hsieh, Alexander Lloyd, Michael James Boyer Epstein