US 12,231,581 B2
Multi-shard transactions in a byzantine computing environment
Mohammad Sadoghi Hamedani, Davis, CA (US); Jelle Antonius Johannes Hellings, Hamilton (CA); Suyash Gupta, Fremont, CA (US); and Sajjad Rahnama, Davis, CA (US)
Assigned to The Regents of the University of California, Oakland, CA (US)
Filed by The Regents of the University of California, Oakland, CA (US)
Filed on Mar. 18, 2024, as Appl. No. 18/608,442.
Application 18/608,442 is a continuation of application No. 17/516,074, filed on Nov. 1, 2021, granted, now 11,968,311.
Claims priority of provisional application 63/231,523, filed on Aug. 10, 2021.
Claims priority of provisional application 63/224,329, filed on Jul. 21, 2021.
Claims priority of provisional application 63/222,657, filed on Jul. 16, 2021.
Prior Publication US 2024/0223383 A1, Jul. 4, 2024
Int. Cl. H04L 9/32 (2006.01); H04L 67/1095 (2022.01); H04L 67/1097 (2022.01); H04L 9/00 (2022.01)
CPC H04L 9/3247 (2013.01) [H04L 9/3236 (2013.01); H04L 67/1095 (2013.01); H04L 67/1097 (2013.01); H04L 9/50 (2022.05)] 21 Claims
OG exemplary drawing
 
1. A method, comprising:
receiving a transaction at a sharded data management system comprising a set S of shards, |S|>1, wherein:
each shard in S comprises a cluster of nodes among which a corresponding set of data unique to the shard is replicated; and
the transaction involves a set T of shards, wherein T⊆S and |T|>1;
wherein the transaction requires data to be read from and/or written to the sets of data corresponding to every shard in T; and
orchestrating the transaction by:
at one or more shards in T at which data are to be read and/or locked, voting whether to commit the transaction, wherein said voting comprises applying a local consensus protocol among the cluster of nodes of each of the one or more shards; and
when all shards in T at which data are to be read vote to commit the transaction, executing the transaction in parallel at all shards in T at which data are to be written.