Why Blockchain Will Never Kill the Database
A fundamental difference in how data is handled and stored means the technologies are complimentary, not competitors.
Blockchain hype is out of control. Although blockchain is an amazing technology that makes data ecosystems safer, more trusted, and verifiable, it is not a panacea. The blockchain hype includes one false claim in particular, which is that because blockchains can serve as verifiable systems of records, databases are no longer the right technology to serve that purpose. This is misguided. Blockchains and databases are different kinds of systems of record and, in fact, are complimentary.
Blockchain Benefits and Challenges
There are many different blockchain technologies and networks, and they all share a basic characteristic: a record of “transaction” is not stored in just one database. Instead, a consensus of the transaction is recorded amongst an entire network of participants in an ecosystem.
Blockchain is an immutable, distributed record of transactions. It uses cryptographic algorithms to reach a consensus amongst a group of parties in a secure way, resulting in every party in the chain of transactions having an accurate record of every transaction. There is no central repository secured by a single party that may be enticed to alter the database for its own interest. The blockchain is trustworthy by virtue of its distributed model, how blocks are linked to the chain, and its consensus algorithm that makes the cost of altering it prohibitive.
Blockchains are computationally expensive. By design, the cryptographic algorithms used to derive a consensus require substantial work. As a result, there are many efforts focused on reducing the computational expense, the corresponding cryptocurrency expense, and the power expense. One approach, called anchoring, reduces the amount of data stored on the chain where transactions are batched together, hashed, and organized into timestamped blocks for inclusion into the blockchain. A receipt indicating where on the blockchain the data was anchored is then stored in databases or other durable storage, making any transaction verifiable.
One key aspect of this approach is that the data involved in the transaction is not “stored” in the anchor. Only a cryptographic hash of the data is stored. Anchoring is used to verify the original data against the hash, and to determine when it was committed to the blockchain, but it is not used to store the data. This is really a system of record because it records a hash of the transaction data whose integrity can be verified by anyone at any time. This provides an independent source of trust while maintaining the privacy of confidential data, even on public blockchains.
What applications does a blockchain support? They break down into three categories:
- Smart contracts ensure the consistent transfer of assets based on pre-determined rules
- Smart assets ensure that the ownership status of any tokenized asset can be tracked, verified, and settled between parties
- Smart IoT ensures that signals generated by devices have not been tampered with and reflect the true values sensed
Databases differ from blockchains in that they explicitly store data, not just hashes. Databases power two kinds of workloads: operational workloads and analytical workloads.
Operational databases, called Online Transactional Processing (OLTP) systems, power some applications. For example, consider a fraud dispute resolution system that enables a call center agent to help customers review financial transactions and file disputes about those transactions in one second or less. This requires special data structures and algorithms that can process data by many users simultaneously very fast.
Online Analytical Processing (OLAP) systems review historical transactions and derive insights from them or generate predictive machine learning models. These systems are specialized for sorting the data and computing metrics such as sums and averages. This requires high throughput.
New databases are now emerging that can combine OLTP, OLAP, and machine learning in one platform, called online predictive processing (OLPP). [Editor’s note: The author’s company, Splice Machine, provides an OLPP platform.]
For example, consider these three use cases:
- Customer service call centers: call center agents responding to customer inquiries across channels such as phone, Web, or mobile apps often seconds after orders are taken
- Personalization: machine learning models that predict what action to take with a customer in a moment
- Predictive maintenance: machine learning models that predict when field equipment is likely to experience an outage
All of these use cases require a database — a blockchain simply cannot perform these functions.
A Final Word
The death of the database is extremely exaggerated. Blockchains may revolutionize the integrity of transactions, but databases will always remain to power mission-critical applications, analyze those applications, and serve as the heart of AI that learns. Together, they offer many verticals a powerful combination.