Blockchain Meets Database: Design and Implementation of a Blockchain Relational Database

Blockchain Meets Database: Design and Implementation of a Blockchain Relational Database
复制标题

DOI:
10.14778/3342263.3342632
复制
发表时间:
2019-03
期刊:
ArXiv
影响因子:
--
通讯作者:
Senthil Nathan;Chander Govindarajan;Adarsh Saraf;Manish Sethi;P. Jayachandran
Senthil Nathan;Chander Govindarajan;Adarsh Saraf;Manish Sethi;P. Jayachandran
中科院分区:
其他
文献类型:
--
作者:
Senthil Nathan;Chander Govindarajan;Adarsh Saraf;Manish Sethi;P. Jayachandran

文献摘要

被引文献

相似文献

在本文中,我们设计并实施了有史以来第一个分散的复制关系数据库,该数据库具有我们称为区块链关系数据库的区块链属性。我们强调了区块链平台提供的功能与复制的关系数据库之间的几个相似之处,尽管它们在概念上是不同的,主要是在其信任模型中。在此激励的情况下,我们利用了丰富的功能,数十年的研究和优化以及关系数据库中的可用工具来构建区块链关系数据库。我们考虑了已知但相互不信任的组织的权限区块链模型,每个组织都经营自己的数据库实例,这些模型是彼此的复制品。复制品独立执行交易,并进行分散的共识,以确定交易的提交命令。我们设计两种方法,第一种方法是在执行交易之前达成交易的提交命令,第二种方法是在没有事先了解提交订单的情况下执行交易的第二种方法,而该交易是在同时订单并行进行的。我们利用可序列化的快照隔离(SSI)确保跨节点的副本保持一致并尊重通过共识确定的排序,并根据后一种方法基于块高度设计了SSI的新变体。我们在PostgreSQL上实施系统,并目前详细的性能实验分析了这两种方法。
In this paper, we design and implement the first-ever decentralized replicated relational database with blockchain properties that we term blockchain relational database . We highlight several similarities between features provided by blockchain platforms and a replicated relational database, although they are conceptually different, primarily in their trust model. Motivated by this, we leverage the rich features, decades of research and optimization, and available tooling in relational databases to build a blockchain relational database. We consider a permissioned blockchain model of known, but mutually distrustful organizations each operating their own database instance that are replicas of one another. The replicas execute transactions independently and engage in decentralized consensus to determine the commit order for transactions. We design two approaches, the first where the commit order for transactions is agreed upon prior to executing them, and the second where transactions are executed without prior knowledge of the commit order while the ordering happens in parallel. We leverage serializable snapshot isolation (SSI) to guarantee that the replicas across nodes remain consistent and respect the ordering determined by consensus, and devise a new variant of SSI based on block height for the latter approach. We implement our system on PostgreSQL and present detailed performance experiments analyzing both approaches.