By Evan D. Poff
Building blocks called “data structures” compose every kind of database. Data structures establish the rules for creating, storing, modifying, and managing digital information in the systems that utilize them. Thus, implementing a database with one variety of structure will yield different functionalities than a database constructed with another. In the same way that computers have operating systems like Windows, macOS, and Linux to perform similar tasks but with distinct features, databases have data structures, including arrays, vectors, stacks, queues, deques, maps, and trees. Each provides unique approaches to storing and accessing data. Descriptions of how the resulting databases behave can more generally be referred to as “database models” or simply “data models.”
Blockchain technology is based on the “distributed ledger” model:
- “Distributed” because the database is shared with all its users. In fact, blockchain is decentralized. This means that data is not processed by any central location at all. Every blockchain transaction updates users’ copies of the data directly, updating the network every ten minutes.
- “Ledger” because it records every transaction permanently. It is not possible to delete or edit past entries in a blockchain database. Users can therefore ensure that each transaction is a legitimate exchange of genuine resources, such as Bitcoin.
To illustrate how blockchain works, imagine that you are holding a $1 bill. This particular dollar is different from those you are used to: Attached to the banknote is a list, a record of all the places that unique dollar has circulated, of each owner and every transaction. Furthermore, everyone else who accepts dollars has a copy of that list. This might seem excessive in the physical world, but it solves some major complications introduced by digital currencies, including the following:
- Vulnerability to hackers: Because there is no single “master copy” of the data stored in a central location, the system cannot be overwritten simply by hacking the “middle man.” Altering data, such as how much money a certain user possesses, would require successfully hacking the majority of the individual users on the blockchain network, a virtually impossible task that makes blockchain much more secure than centralized databases.
- Double-spending: Some online currencies have the potential to be processed as valid payment multiple times before the user’s true balance is updated due to technological constraints of their respective data models. Blockchain’s direct user-to-user connections and waiting for transactions to be confirmed by the network (i.e., the information is sent so the network knows of the expenditure) substantially reduce this issue.
Notes
1 Overview of Data Structures | Set 1 (Linear Data Structures). (2016, February 08). Retrieved from https://www.geeksforgeeks.org/overview-of-data-structures-set-1-linear-data-structures/, accessed April 2018.
2 What is a Database Model. (2018, February 02). Retrieved from https://www.lucidchart.com/pages/database-diagram/database-models, accessed April 2018.
3 Data Modeling 101. (n.d.). Retrieved from http://www.agiledata.org/essays/dataModeling101.html, accessed April 2018.
4 Rosic, A. (2016). What is Blockchain Technology? A Step-by-Step Guide For Beginners. Retrieved from https://blockgeeks.com/guides/what-is-blockchain-technology/, accessed April 2018.
5 Irreversible Transactions. (n.d.). Retrieved from https://en.bitcoin.it/wiki/Irreversible_Transactions, accessed April 2018.