A Survey of Ledger Technology-Based Databases
Abstract
:1. Introduction
2. Basic Concepts
Distributed Database vs. Blockcahin
3. Centralised Ledger Databases
3.1. LedgerDB
3.1.1. Verification
3.1.2. Transaction Processing
4. Permissioned Blockchain Based Databases
4.1. Blockchain Relational Database
- client: An administrator is responsible for clients’ access to the network. Clients’ digital certificates are stored in database peers. Clients can receive the transaction status through a notification channel.
- database peer node: The blockchain’s crux is the nodes’ storage of all important data. Every database note maintains their ledger and executes smart contracts. Validation and the addition of new blocks happen through these nodes.
- ordering service: The ordering service is made up of the consensus mechanism or orderer nodes. If the ordering service is ordered nodes, differing ordered nodes must be owned by different organisations. The ordering service is pluggable and agnostic.
4.1.1. Serializable Snapshot Isolation (SSI)
- rw-dependency
- ww-dependency
- wr-dependency
4.1.2. Transaction Processing
- If a received block has transactions that have not been executed, these transactions begin to be executed. After all the missing transactions have been executed, they continue to the commit phase, as in order-then-execute techniques.
- Blind updates are not supported due to the feasibility that transactions may be executed at differing snapshot heights. On one node, a transaction has the possibility to not be concurrent, whilst on another, it may be concurrent. Thus, the block-aware abort during the commit variant of SSI is used as opposed to the abort-during-commit variant of SSI.
4.2. BigchainDB
4.2.1. Owner-Controlled Assets
- CREATE
- TRANSFER
- VALIDATOR_ELECTION
- CHAIN_MIGRATION_ELECTION
- VOTE
4.2.2. Transaction Processing
4.3. FalconDB
4.3.1. Authenticated Data Structure
- outdated, malicious digest causes issues, as the user must have the most recent valid digest.
- an attack can cause changes to the data, for example inserting or deleting records, this data cannot be recovered by ADS, nor can the attacker be identified.
4.3.2. Transaction Processing
- Service fee contract: a server receives a fee from the client to process queries and requests.
- Authentication contract: for the duration of this contract the server’s account is temporarily frozen until it shares proof regarding the requested smart contract.
4.4. ChainifyDB
Transaction Processing
4.5. BlockchainDB
Transaction Processing
4.6. Hyperleder Fabric
- clients: Clients can send transactions to peers for execution, and having executed, send for ordering service.
- peers: All peers store the full replica of the ledger. Transactions are executed on the peers according to the given policy of the transaction.
- Ordering Service Nodes (OSN): There is one task for the nodes—the total order of all transactions. Thus, it has no role in the validation-and-execute phase. The application state is unknown to the ordering service.
Transaction Processing
- Endorsement policy evaluation: The peers evaluate all the transactions in the block simultaneously to determine if each satisfies the given endorsement policy and the peers mark the transactions as either valid or invalid. Only transactions marked as valid will have effects in the database.
- Read-write conflict check: The keys in the current state of the ledger are compared with the keys in the readset to determine if they match. If they match, they continue to be marked as valid; if not, they become invalid.
- Ledger Update Phase: Following the completion of the previous two validity checks, the state of the blockchain is updated with the results of the validations, and the block is added to the local ledger.
4.7. Corresponding Studies to Hyperledger Fabric
4.7.1. Fabric++
4.7.2. FastFabric
4.7.3. Nexledger Accelerator
5. Summary
- BigchainDB: four nodes were in the same Azure data centre. Each node had 2nd Generation Intel Xeon Platinum 8272CL processor and Intel Xeon Platinum 8168 processor and 4 GB RAM. Three different types of test were done with one million and 16.0000 transactions.
- BlockchainDB: four nodes were in the same Azure data center with 16 vcpus and 32 GB memory. All experiments used an Ethereum backend. During experiments 4000 and 8000 transactions were sent. Experiments were run for online verification, offline verification and no verification.
- ChainifyDB: Two types of Nodes used, one being Two quad-core Intel Xeon CPU E5-2407 running at 2:2 GHz, equipped with 48 GB of DDR3 RAM, and the other Two hexa-core Intel Xeon CPU X5690 running at 3:47 GHz, equipped with 192 GB of DDR3 RAM. There were three organizations in experiments. Each organization owned two nodes. Experiments were for different consensus mechanism configuration. During the experiments, a hundred thousand transactions were sent.
- Hyperledger Fabric: five or ten nodes were in the same IBM cloud. Each node had 3.8 GHz Intel Xeon-CoffeeLake (E-2174G-Quadcore) processor and 2× 32 GB Hynix 32 GB DDR4 2Rx8 NON REG RAM. Experiments used different smart contracts as empty contract, asset read, and asset creation, written in GO language and using CouchDB as world state database.
- FalconDB: five server nodes were in the same cloud. Each node had 2.4 GHz Ten-core Intel E5-2640v4 processor and 64 GB DRAM. During experiments the authentication process was skipped. Tendermint was used as an existing blockchain.
- Blockchain Relational Database: from 4 nodes to 16 nodes were in different clouds. Each node had with 32 vCPUs of Intel Xeon E5-2683 v3 2.00 GHz and 64 GB of memory.
- LedgerDB: measurements were in two-node cluster. Each node had Intel Xeon Platinum 2.5 GHz CPU, 32 GB RAM.
5.1. Centralised Ledger Database
5.2. Permissioned Blockchain-Based Databases
6. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
References
- Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. 2019. Available online: https://bitcoin.org/bitcoin.pdf (accessed on 30 July 2021).
- Ahram, T.; Sargolzaei, A.; Sargolzaei, S.; Daniels, J.; Amaba, B. Blockchain technology innovations. In Proceedings of the 2017 IEEE Technology & Engineering Management Conference (TEMSCON), Santa Clara, CA, USA, 8–10 June 2017. [Google Scholar]
- Risius, M.; Spohrer, K. A blockchain research framework. Bus. Inf. Syst. Eng. 2017, 59, 385–409. [Google Scholar] [CrossRef]
- Grech, A.; Camilleri, A.F. Blockchain in Education; Publications Office of the European Union: Luxembourg, 2017. [Google Scholar]
- Agbo, C.C.; Mahmoud, Q.H.; Eklund, J.M. Blockchain technology in healthcare: A systematic review. In Healthcare; Multidisciplinary Digital Publishing Institute: Basel, Switzerland, 2019; Volume 7, p. 56. [Google Scholar]
- Tanwar, S.; Parekh, K.; Evans, R. Blockchain-based electronic healthcare record system for healthcare 4.0 applications. J. Inf. Secur. Appl. 2020, 50, 102407. [Google Scholar] [CrossRef]
- Hyla, T.; Pejaś, J. eHealth integrity model based on permissioned blockchain. Future Internet 2019, 11, 76. [Google Scholar] [CrossRef] [Green Version]
- Hölbl, M.; Kompara, M.; Kamišalić, A.; Nemec Zlatolas, L. A systematic review of the use of blockchain in healthcare. Symmetry 2018, 10, 470. [Google Scholar] [CrossRef] [Green Version]
- Bigini, G.; Freschi, V.; Lattanzi, E. A review on blockchain for the internet of medical things: Definitions, challenges, applications, and vision. Future Internet 2020, 12, 208. [Google Scholar] [CrossRef]
- Tapscott, A.; Tapscott, D. How blockchain is changing finance. Harv. Bus. Rev. 2017, 1, 2–5. [Google Scholar]
- Treleaven, P.; Brown, R.G.; Yang, D. Blockchain technology in finance. Computer 2017, 50, 14–17. [Google Scholar] [CrossRef]
- Shekhtman, L.; Waisbard, E. EngraveChain: A Blockchain-Based Tamper-Proof Distributed Log System. Future Internet 2021, 13, 143. [Google Scholar] [CrossRef]
- Ibba, S.; Pinna, A.; Lunesu, M.I.; Marchesi, M.; Tonelli, R. Initial coin offerings and agile practices. Future Internet 2018, 10, 103. [Google Scholar] [CrossRef] [Green Version]
- Cocco, L.; Pinna, A.; Marchesi, M. Banking on blockchain: Costs savings thanks to the blockchain technology. Future Internet 2017, 9, 25. [Google Scholar] [CrossRef] [Green Version]
- Reyna, A.; Martín, C.; Chen, J.; Soler, E.; Díaz, M. On blockchain and its integration with IoT. Challenges and opportunities. Future Gener. Comput. Syst. 2018, 88, 173–190. [Google Scholar] [CrossRef]
- Bellini, A.; Bellini, E.; Gherardelli, M.; Pirri, F. Enhancing IoT data dependability through a blockchain mirror model. Future Internet 2019, 11, 117. [Google Scholar] [CrossRef] [Green Version]
- Tseng, L.; Yao, X.; Otoum, S.; Aloqaily, M.; Jararweh, Y. Blockchain-based database in an IoT environment: Challenges, opportunities, and analysis. Clust. Comput. 2020, 23, 2151–2165. [Google Scholar] [CrossRef]
- Du, Y.; Wang, Z.; Leung, V. Blockchain-Enabled Edge Intelligence for IoT: Background, Emerging Trends and Open Issues. Future Internet 2021, 13, 48. [Google Scholar] [CrossRef]
- Bouras, M.A.; Lu, Q.; Dhelim, S.; Ning, H. A Lightweight Blockchain-Based IoT Identity Management Approach. Future Internet 2021, 13, 24. [Google Scholar] [CrossRef]
- Li, Y. An integrated platform for the internet of things based on an open source ecosystem. Future Internet 2018, 10, 105. [Google Scholar] [CrossRef] [Green Version]
- Yang, X.; Zhang, Y.; Wang, S.; Yu, B.; Li, F.; Li, Y.; Yan, W. LedgerDB: A centralized ledger database for universal audit and verification. Proc. VLDB Endow. 2020, 13, 3138–3151. [Google Scholar] [CrossRef]
- Mohan, C. State of public and private blockchains: Myths and reality. In Proceedings of the 2019 International Conference on Management of Data, Amsterdam, The Netherlands, 30 June–5 July 2019; pp. 404–411. [Google Scholar]
- Helliar, C.V.; Crawford, L.; Rocca, L.; Teodori, C.; Veneziani, M. Permissionless and permissioned blockchain diffusion. Int. J. Inf. Manag. 2020, 54, 102136. [Google Scholar] [CrossRef]
- Zheng, W.; Zheng, Z.; Chen, X.; Dai, K.; Li, P.; Chen, R. Nutbaas: A blockchain-as-a-service platform. IEEE Access 2019, 7, 134422–134433. [Google Scholar] [CrossRef]
- Singh, J.; Michels, J.D. Blockchain as a service (BaaS): Providers and trust. In Proceedings of the 2018 IEEE European Symposium on Security and Privacy Workshops (EuroS&PW), London, UK, 23–27 April 2018. [Google Scholar]
- Ruan, P.; Dinh, T.T.A.; Loghin, D.; Zhang, M.; Chen, G.; Lin, Q.; Ooi, B.C. Blockchains vs. Distributed Databases: Dichotomy and Fusion. In Proceedings of the 2021 ACM SIGMOD International Conference on Management of Data, Xi’an, China, 20– 25 June 2021; pp. 543–557. [Google Scholar]
- Muzammal, M.; Qu, Q.; Nasrulin, B. Renovating blockchain with distributed databases: An open source system. Future Gener. Comput. Syst. 2019, 90, 105–117. [Google Scholar] [CrossRef]
- Bergman, S.; Asplund, M.; Nadjm-Tehrani, S. Permissioned blockchains and distributed databases: A performance study. Concurr. Comput. Pract. Exp. 2020, 32, e5227. [Google Scholar] [CrossRef]
- Raikwar, M.; Gligoroski, D.; Velinov, G. Trends in Development of Databases and Blockchain. In Proceedings of the 2020 Seventh International Conference on Software Defined Systems (SDS), Paris, France, 30 June–3 July 2020; IEEE: Piscataway, NJ, USA, 2020; pp. 177–182. [Google Scholar]
- Gilbert, S.; Lynch, N. Perspectives on the CAP Theorem. Computer 2012, 45, 30–36. [Google Scholar] [CrossRef] [Green Version]
- Zhang, K.; Jacobsen, H.A. Towards Dependable, Scalable, and Pervasive Distributed Ledgers with Blockchains. In Proceedings of the 2018 IEEE 38th International Conference on Distributed Computing Systems (ICDCS), Vienna, Austria, 2–5 July 2018. [Google Scholar]
- Nathan, S.; Govindarajan, C.; Saraf, A.; Sethi, M.; Jayachandran, P. Blockchain meets database: Design and implementation of a blockchain relational database. arXiv 2019, arXiv:1903.01919. [Google Scholar] [CrossRef]
- Androulaki, E.; Barger, A.; Bortnikov, V.; Cachin, C.; Christidis, K.; De Caro, A.; Enyeart, D.; Ferris, C.; Laventman, G.; Manevich, Y.; et al. Hyperledger fabric: A distributed operating system for permissioned blockchains. In Proceedings of the Thirteenth EuroSys Conference, Porto, Portugal, 23–26 April 2018; pp. 1–15. [Google Scholar]
- Berenson, H.; Bernstein, P.; Gray, J.; Melton, J.; O’Neil, E.; O’Neil, P. A critique of ANSI SQL isolation levels. arXiv 2007, arXiv:cs/0701157. [Google Scholar]
- Adya, A.; Liskov, B.; O’Neil, P. Generalized isolation level definitions. In Proceedings of the 16th International Conference on Data Engineering (Cat. No. 00CB37073), San Diego, CA, USA, 28 February–3 March 2000; IEEE: Piscataway, NJ, USA, 2000; pp. 67–78. [Google Scholar]
- McConaghy, T.; Marques, R.; Müller, A.; De Jonghe, D.; McConaghy, T.; McMullen, G.; Henderson, R.; Bellemare, S.; Granzotto, A. Bigchaindb: A Scalable Blockchain Database; White Paper, BigChainDB. 2016. Available online: https://www.bigchaindb.com/whitepaper/bigchaindb-whitepaper.pdf (accessed on 31 July 2021).
- Yiu, N.C. Decentralizing Supply Chain Anti-Counterfeiting Systems Using Blockchain Technology. arXiv 2021, arXiv:2102.01456. [Google Scholar]
- Rejeb, A.; Keogh, J.G.; Treiblmaier, H. Leveraging the internet of things and blockchain technology in supply chain management. Future Internet 2019, 11, 161. [Google Scholar] [CrossRef] [Green Version]
- Buchman, E. Tendermint: Byzantine Fault Tolerance in the Age of Blockchains. Ph.D. Thesis, University of Guelph, Guelph, ON, Canada, June 2016. [Google Scholar]
- Lamport, L.; Shostak, R.; Pease, M. The Byzantine generals problem. In Concurrency: The Works of Leslie Lamport; ACM: New York, NY, USA, 2019; pp. 203–226. [Google Scholar]
- Lab, M.R. Monero. 2021. Available online: https://www.getmonero.org/resources/research-lab/ (accessed on 31 July 2021).
- Peng, Y.; Du, M.; Li, F.; Cheng, R.; Song, D. FalconDB: Blockchain-based collaborative database. In Proceedings of the 2020 ACM SIGMOD International Conference on Management of Data, Portland, OR, USA, 14–19 June 2020; pp. 637–652. [Google Scholar]
- Martel, C.; Nuckolls, G.; Devanbu, P.; Gertz, M.; Kwong, A.; Stubblebine, S.G. A general model for authenticated data structures. Algorithmica 2004, 39, 21–41. [Google Scholar] [CrossRef]
- Wood, G. Ethereum: A secure decentralised generalised transaction ledger. Ethereum Proj. Yellow Pap. 2014, 151, 1–32. [Google Scholar]
- Schuhknecht, F.M.; Sharma, A.; Dittrich, J.; Agrawal, D. Chainifydb: How to blockchainify any data management system. arXiv 2019, arXiv:1912.04820. [Google Scholar]
- El-Hindi, M.; Binnig, C.; Arasu, A.; Kossmann, D.; Ramamurthy, R. BlockchainDB: A shared database on blockchains. Proc. VLDB Endow. 2019, 12, 1597–1609. [Google Scholar] [CrossRef]
- Ethereum 2.0. 2021. Available online: https://ethereum.org/en/whitepaper/ (accessed on 31 July 2021).
- Zamani, M.; Movahedi, M.; Raykova, M. Rapidchain: Scaling blockchain via full sharding. In Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security, Toronto, ON, Canada, 15–19 October 2018; pp. 931–948. [Google Scholar]
- Tanenbaum, A.S. Distributed operating systems anno 1992. What have we learned so far? Distrib. Syst. Eng. 1993, 1, 3. [Google Scholar] [CrossRef]
- Lin, J.J.; Lee, Y.T.; Wu, J.L. The Effect of Thickness-Based Dynamic Matching Mechanism on a Hyperledger Fabric-Based TimeBank System. Future Internet 2021, 13, 65. [Google Scholar] [CrossRef]
- Sharma, A.; Schuhknecht, F.M.; Agrawal, D.; Dittrich, J. Blurring the lines between blockchains and database systems: The case of hyperledger fabric. In Proceedings of the 2019 International Conference on Management of Data, Amsterdam, The Netherlands, 30 June–5 July 2019; pp. 105–122. [Google Scholar]
- Gorenflo, C.; Lee, S.; Golab, L.; Keshav, S. FastFabric: Scaling hyperledger fabric to 20,000 transactions per second. Int. J. Netw. Manag. 2020, 30, e2099. [Google Scholar] [CrossRef] [Green Version]
- Samsung; IBM. Accelerating Throughput in Permissioned Blockchain Networks. 2019. Available online: https://github.com/nexledger/accelerator/ (accessed on 31 July 2021).
- McConaghy, T. BigchainDB Performance Experiments. 2018. Available online: https://blog.bigchaindb.com/and-were-off-to-the-races-1aff2b66567c/ (accessed on 31 July 2021).
- Hyperledger Fabric Performance Experiments. 2021. Available online: https://hyperledger.github.io/caliper-benchmarks/fabric/performance/ (accessed on 31 July 2021).
- Service, A.W. Amazon Quantum Ledger Database (qldb). 2019. Available online: https://aws.amazon.com/qldb (accessed on 31 July 2021).
- ProvenDB. Provendb: A Blockchain Enabled Database Servic. 2019. Available online: https://www.provendb.com/litepaper/ (accessed on 31 July 2021).
- Cachin, C.; Vukolić, M. Blockchain consensus protocols in the wild. arXiv 2017, arXiv:1707.01873. [Google Scholar]
- Panda, S.S.; Mohanta, B.K.; Satapathy, U.; Jena, D.; Gountia, D.; Patra, T.K. Study of blockchain based decentralized consensus algorithms. In Proceedings of the TENCON 2019–2019 IEEE Region 10 Conference (TENCON), Kochi, India, 17–20 October 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 908–913. [Google Scholar]
- Wang, W.; Hoang, D.T.; Hu, P.; Xiong, Z.; Niyato, D.; Wang, P.; Wen, Y.; Kim, D.I. A survey on consensus mechanisms and mining strategy management in blockchain networks. IEEE Access 2019, 7, 22328–22370. [Google Scholar] [CrossRef]
- Golosova, J.; Romanovs, A. The advantages and disadvantages of the blockchain technology. In Proceedings of the 2018 IEEE 6th Workshop on Advances in Information, Electronic and Electrical Engineering (AIEEE), Vilnius, Lithuania, 8–10 November 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 1–6. [Google Scholar]
- Chowdhury, M.J.M.; Colman, A.; Kabir, M.A.; Han, J.; Sarda, P. Blockchain versus database: A critical analysis. In Proceedings of the 2018 17th IEEE International Conference On Trust, Security And Privacy in Computing And Communications/12th IEEE International Conference on Big Data Science And Engineering (TrustCom/BigDataSE), New York, NY, USA, 1–3 August 2018; IEEE: Piscataway, NJ, USA, 2018; pp. 1348–1353. [Google Scholar]
Name | LedgerDB |
---|---|
Database type | key-value |
Transaction processing | Execute-commit-index |
Smart contract supported | not supported |
Transactions per second | 100k |
Name | Blockchain Relational Database | BigchainDB | FalconDB |
---|---|---|---|
Database type | PostgreSQL | MongoDB | MySQL and IntegriDB |
Replication model | Txn-based | Txn-based | Storage-based |
Transaction processing | Execute and order in parallel | Order-then-commit | Order-then-execute |
Consensus mechanism | Kafka | Tendermint | Tendermint |
Smart contract supported | procedures as smart contract | not supported | Underlying Blockchain required |
Transactions per second | 1.5k | 600 | 2k |
Name | ChainifyDB | BlockchainDB | Hyperledger Fabric |
---|---|---|---|
Database type | PostgreSQL and MySQL | Key-Value | CouchDB |
Replication model | Txn-based | Storage-based | Txn-based |
Transaction processing | Whatever Ledger Consensus | Order-then-execute | Execute-order-validate |
Consensus mechanism | Kafka | Proof of Work | Raft |
Smart contract supported | not supported | Underlying Blockchain required | supported |
Transactions per second | 1k | <100 | 600 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Fekete, D.L.; Kiss, A. A Survey of Ledger Technology-Based Databases. Future Internet 2021, 13, 197. https://doi.org/10.3390/fi13080197
Fekete DL, Kiss A. A Survey of Ledger Technology-Based Databases. Future Internet. 2021; 13(8):197. https://doi.org/10.3390/fi13080197
Chicago/Turabian StyleFekete, Dénes László, and Attila Kiss. 2021. "A Survey of Ledger Technology-Based Databases" Future Internet 13, no. 8: 197. https://doi.org/10.3390/fi13080197
APA StyleFekete, D. L., & Kiss, A. (2021). A Survey of Ledger Technology-Based Databases. Future Internet, 13(8), 197. https://doi.org/10.3390/fi13080197