Patents by Inventor Sebastian Kanthak
Sebastian Kanthak 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: 11899649Abstract: In a distributed database, a transaction is to be committed at a first coordinator server and one or more participant servers 1210. The first coordinator server is configured to receive a notification that each participant server of the transaction is prepared at a respective prepared timestamp, the respective prepared timestamp being chosen within a time range for which the respective participant server obtained at least one lock 1220. The first coordinator server computes the commit timestamp for the transaction equal or greater than each of the prepared timestamps 1230, and restrict the commit timestamp such that a second coordinator server sharing at least one of the participant servers for one or more other transactions at a shared shard cannot select the same commit timestamp for any of the other transactions 1240. The transaction is committed at the commit timestamp 1250.Type: GrantFiled: September 9, 2022Date of Patent: February 13, 2024Assignee: Google LLCInventors: Sebastian Kanthak, Brian Frank Cooper
-
Publication number: 20240037085Abstract: The technology relates to cosharding tables within a distributed storage system. A data table including one or more rows may be received. Each row in the data table may include an identifier key and pics of data. Each piece of data in the data table may be indexed into individual rows of an index table, wherein each row in the index table includes data associated with the identifier key of the data table from which the piece of data in the respective row was indexed. The index table may be sharded into splits, wherein the sharding includes assigning each row of the index table into one of the splits based on the identifier key of the data table from which the piece of data in the respective row was indexed. The splits may be more stored into two or more or more portions of the distributed storage system.Type: ApplicationFiled: October 3, 2023Publication date: February 1, 2024Inventors: Alexander Khesin, Alexander Lloyd, Sebastian Kanthak
-
Patent number: 11831711Abstract: Systems and methods are provided for sending and receiving remote procedure calls (RPCs). Based on a message in a first RPC, a second set of RPCs are created by one or more computing devices, where each of the second set of RPCs includes a portion of the message in the first RPC. The message in the first RPC is replaced with a reference to each RPC of the second set of RPCs. The one or more computing devices send the first RPC with the references, and also send the second set of RPCs.Type: GrantFiled: November 3, 2022Date of Patent: November 28, 2023Assignee: Google LLCInventors: Iulian Moraru, Brian Frank Cooper, Sebastian Kanthak, Alexander Lloyd, Mert Akdere
-
Patent number: 11816086Abstract: The technology relates to cosharding tables within a distributed storage system. A data table including one or more rows may be received. Each row in the data table may include an identifier key and pieces of data. Each piece of data in the data table may be indexed into individual rows of an index table, wherein each row in the index table includes data associated with the identifier key of the data table from which the piece of data in the respective row was indexed. The index table may be sharded into splits, wherein the sharding includes assigning each row of the index table into one of the splits based on the identifier key of the data table from which the piece of data in the respective row was indexed. The splits may be stored into two or more portions of the distributed storage system.Type: GrantFiled: December 21, 2022Date of Patent: November 14, 2023Assignee: Google LLCInventors: Alexander Khesin, Alexander Lloyd, Sebastian Kanthak
-
Publication number: 20230214374Abstract: The technology relates to cosharding tables within a distributed storage system. A data table including one or more rows may be received. Each row in the data table may include an identifier key and pieces of data. Each piece of data in the data table may be indexed into individual rows of an index table, wherein each row in the index table includes data associated with the identifier key of the data table from which the piece of data in the respective row was indexed. The index table may be sharded into splits, wherein the sharding includes assigning each row of the index table into one of the splits based on the identifier key of the data table from which the piece of data in the respective row was indexed. The splits may be stored into two or more portions of the distributed storage system.Type: ApplicationFiled: December 21, 2022Publication date: July 6, 2023Inventors: Alexander Khesin, Alexander Lloyd, Sebastian Kanthak
-
Publication number: 20230052324Abstract: Systems and methods are provided for sending and receiving remote procedure calls (RPCs). Based on a message in a first RPC, a second set of RPCs are created by one or more computing devices, where each of the second set of RPCs includes a portion of the message in the first RPC. The message in the first RPC is replaced with a reference to each RPC of the second set of RPCs. The one or more computing devices send the first RPC with the references, and also send the second set of RPCs.Type: ApplicationFiled: November 3, 2022Publication date: February 16, 2023Inventors: Iulian Moraru, Brian Frank Cooper, Sebastian Kanthak, Alexander Lloyd, Mert Akdere
-
Patent number: 11561953Abstract: The technology relates to cosharding tables within a distributed storage system. A data table including one or more rows may be received. Each row in the data table may include an identifier key and pieces of data. Each piece of data in the data table may be indexed into individual rows of an index table, wherein each row in the index table includes data associated with the identifier key of the data table from which the piece of data in the respective row was indexed. The index table may be sharded into splits, wherein the sharding includes assigning each row of the index table into one of the splits based on the identifier key of the data table from which the piece of data in the respective row was indexed. The splits may be stored into two or more portions of the distributed storage system.Type: GrantFiled: March 18, 2020Date of Patent: January 24, 2023Assignee: Google LLCInventors: Alexander Khesin, Alexander Lloyd, Sebastian Kanthak
-
Patent number: 11556375Abstract: In a distributed system where a client's call to commit a transaction occurs outside the transaction's lock-hold interval, computation of timestamp information for the transaction is moved to a client library, while ensuring that no conflicting reads or writes are performed between a time of the computation and acquiring all locks for the transaction. The transaction is committed in phases, with each phase being initiated by the client library. Timestamp information is added to the locks to ensure that timestamps are generated during lock-hold intervals. An increased number of network messages is thereby overlapped with a commit wait period in which a write in a distributed database is delayed in time to ensure concurrency in the database.Type: GrantFiled: June 8, 2020Date of Patent: January 17, 2023Assignee: Google LLCInventors: Brian Frank Cooper, Alexander Lloyd, Sebastian Kanthak, Andrew Fikes, Christopher Taylor
-
Publication number: 20230004545Abstract: In a distributed database, a transaction is to be committed at a first coordinator server and one or more participant servers 1210. The first coordinator server is configured to receive a notification that each participant server of the transaction is prepared at a respective prepared timestamp, the respective prepared timestamp being chosen within a time range for which the respective participant server obtained at least one lock 1220. The first coordinator server computes the commit timestamp for the transaction equal or greater than each of the prepared timestamps 1230, and restrict the commit timestamp such that a second coordinator server sharing at least one of the participant servers for one or more other transactions at a shared shard cannot select the same commit timestamp for any of the other transactions 1240. The transaction is committed at the commit timestamp 1250.Type: ApplicationFiled: September 9, 2022Publication date: January 5, 2023Inventors: Sebastian Kanthak, Brian Frank Cooper
-
Patent number: 11496572Abstract: Systems and methods are provided for sending and receiving remote procedure calls (RPCs). Based on a message in a first RPC, a second set of RPCs are created by one or more computing devices, where each of the second set of RPCs includes a portion of the message in the first RPC. The message in the first RPC is replaced with a reference to each RPC of the second set of RPCs. The one or more computing devices send the first RPC with the references, and also send the second set of RPCs.Type: GrantFiled: August 12, 2019Date of Patent: November 8, 2022Assignee: Google LLCInventors: Iulian Moraru, Brian Frank Cooper, Sebastian Kanthak, Alexander Lloyd, Mert Akdere
-
Patent number: 11474991Abstract: In a distributed database, a transaction is to be committed at a first coordinator server and one or more participant servers 1210. The first coordinator server is configured to receive a notification that each participant server of the transaction is prepared at a respective prepared timestamp, the respective prepared timestamp being chosen within a time range for which the respective participant server obtained at least one lock 1220. The first coordinator server computes the commit timestamp for the transaction equal or greater than each of the prepared timestamps 1230, and restrict the commit timestamp such that a second coordinator server sharing at least one of the participant servers for one or more other transactions at a shared shard cannot select the same commit timestamp for any of the other transactions 1240. The transaction is committed at the commit timestamp 1250.Type: GrantFiled: March 13, 2018Date of Patent: October 18, 2022Assignee: Google LLCInventors: Sebastian Kanthak, Brian Frank Cooper
-
Publication number: 20220019568Abstract: The technology relates to cosharding tables within a distributed storage system. A data table including one or more rows may be received. Each row in the data table may include an identifier key and pieces of data. Each piece of data in the data table may be indexed into individual rows of an index table, wherein each row in the index table includes data associated with the identifier key of the data table from which the piece of data in the respective row was indexed. The index table may be sharded into splits, wherein the sharding includes assigning each row of the index table into one of the splits based on the identifier key of the data table from which the piece of data in the respective row was indexed. The splits may be stored into two or more portions of the distributed storage system.Type: ApplicationFiled: March 18, 2020Publication date: January 20, 2022Applicant: Google LLCInventors: Alexander KHESIN, Alexander LLOYD, Sebastian KANTHAK
-
Publication number: 20210042284Abstract: In a distributed database, a transaction is to be committed at a first coordinator server and one or more participant servers 1210. The first coordinator server is configured to receive a notification that each participant server of the transaction is prepared at a respective prepared timestamp, the respective prepared timestamp being chosen within a time range for which the respective participant server obtained at least one lock 1220. The first coordinator server computes the commit timestamp for the transaction equal or greater than each of the prepared timestamps 1230, and restrict the commit timestamp such that a second coordinator server sharing at least one of the participant servers for one or more other transactions at a shared shard cannot select the same commit timestamp for any of the other transactions 1240. The transaction is committed at the commit timestamp 1250.Type: ApplicationFiled: March 13, 2018Publication date: February 11, 2021Applicant: Google LLCInventors: Sebastian Kanthak, Brian Frank Cooper
-
Publication number: 20200301729Abstract: In a distributed system where a client's call to commit a transaction occurs outside the transaction's lock-hold interval, computation of timestamp information for the transaction is moved to a client library, while ensuring that no conflicting reads or writes are performed between a time of the computation and acquiring all locks for the transaction. The transaction is committed in phases, with each phase being initiated by the client library. Timestamp information is added to the locks to ensure that timestamps are generated during lock-hold intervals. An increased number of network messages is thereby overlapped with a commit wait period in which a write in a distributed database is delayed in time to ensure concurrency in the database.Type: ApplicationFiled: June 8, 2020Publication date: September 24, 2020Inventors: Brian Frank Cooper, Alexander Lloyd, Sebastian Kanthak, Andrew Fikes, Christopher Taylor
-
Patent number: 10691484Abstract: In a distributed system where a client's call to commit a transaction occurs outside the transaction's lock-hold interval, computation of timestamp information for the transaction is moved to a client library, while ensuring that no conflicting reads or writes are performed between a time of the computation and acquiring all locks for the transaction. The transaction is committed in phases, with each phase being initiated by the client library. Timestamp information is added to the locks to ensure that timestamps are generated during lock-hold intervals. An increased number of network messages is thereby overlapped with a commit wait period in which a write in a distributed database is delayed in time to ensure concurrency in the database.Type: GrantFiled: July 14, 2017Date of Patent: June 23, 2020Assignee: Google LLCInventors: Brian Frank Cooper, Alexander Lloyd, Sebastian Kanthak, Andrew Fikes, Christopher Taylor
-
Patent number: 10462218Abstract: Systems and methods are provided for efficiently sending large units of data in a network. A sender computing device splits the proposal into a plurality of fragments, and sends each of the plurality of fragments to a receiver computing device. The sender computing device receives an acknowledgement from the receiver computing device for each fragment received by the receiver computing device. If no acknowledgements for any fragments are received within a predetermined time period, it may be determined that an error occurred, in which case the sender may time out or take another action. The sender computing device further sends a message to the receiver computing device, wherein a payload of the message includes one or more references corresponding to the plurality of fragments sent.Type: GrantFiled: July 15, 2015Date of Patent: October 29, 2019Assignee: Google LLCInventors: Iulian Moraru, Brian Frank Cooper, Sebastian Kanthak, Alexander Lloyd, Mert Akdere
-
Publication number: 20180329739Abstract: In a distributed system where a client's call to commit a transaction occurs outside the transaction's lock-hold interval, computation of timestamp information for the transaction is moved to a client library, while ensuring that no conflicting reads or writes are performed between a time of the computation and acquiring all locks for the transaction. The transaction is committed in phases, with each phase being initiated by the client library. Timestamp information is added to the locks to ensure that timestamps are generated during lock-hold intervals. An increased number of network messages is thereby overlapped with a commit wait period in which a write in a distributed database is delayed in time to ensure concurrency in the database.Type: ApplicationFiled: July 14, 2017Publication date: November 15, 2018Inventors: Brian Frank Cooper, Alexander Lloyd, Sebastian Kanthak, Andrew Fikes, Christopher Taylor
-
Patent number: 10108632Abstract: Methods and systems for a distributed transaction in a distributed database system are described. One example includes identifying a request to insert a split point in a source group comprising one or more tablet replicas, each tablet including at least a portion of data from a table in the distributed database system, and the split point splitting data in the source group into a first range and a second range different than the first range; in response to the request: sending a list of filenames in the first range of the source group to a first target group comprising one or more tablet replicas; and creating, at the first target group, a virtual copy of files represented by the list of filenames in the first range, the virtual copy making data of the files available, each using a new name, without duplicating the data of the files.Type: GrantFiled: May 2, 2016Date of Patent: October 23, 2018Assignee: Google LLCInventors: Sebastian Kanthak, Clifford Arthur Frey
-
Publication number: 20170316026Abstract: Methods and systems for a distributed transaction in a distributed database system are described. One example includes identifying a request to insert a split point in a source group comprising one or more tablet replicas, each tablet including at least a portion of data from a table in the distributed database system, and the split point splitting data in the source group into a first range and a second range different than the first range; in response to the request: sending a list of filenames in the first range of the source group to a first target group comprising one or more tablet replicas; and creating, at the first target group, a virtual copy of files represented by the list of filenames in the first range, the virtual copy making data of the files available, each using a new name, without duplicating the data of the files.Type: ApplicationFiled: May 2, 2016Publication date: November 2, 2017Inventors: Sebastian Kanthak, Clifford Arthur Frey
-
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