Blockchain vs Database

As blockchain technology changes our world, it’s important to understand the differences between blockchain technology or a traditional database. Which is more appropriate for your use case? Chances are that not every project or use case requires the same technical solution. Further, the use of a blockchain and a database can complement each other.  You may not necessarily need to pick one over the other. As such, it’s important to find the right mix for your use case. There are a few key differences between blockchains and databases.

One of the main features specific to blockchain alone is that it can establish provenance. By tracing a digital record’s provenance, one can determine how it was originally created, its history, sequences of ownership and custody, and storage locations as well as the record’s integrity.  Blockchains are able to show you the current version of a data set, as well as every previous version of this same data set with timestamps and cryptographic proof the data has not been altered. Every entry is written permanently into the blockchain, and cannot be changed. This is advantageous in situations where you may not trust other parties you’re working with to not change the data set. Because all parties (namely the computers or “nodes” running the protocol) check each other’s work and agree on entries into the blockchain, trust is maintained, ensuring the data is immutable and true. Blockchains are decentralized where the ability to add data is not restricted to a central source. On the contrary, databases all rely on client - server architecture and the server is typically centralized.

Now let’s talk about databases. Like blockchains, modern databases can store history and previous versions of data. Databases do this much more efficiently than blockchain. The important difference is that blockchains are good at establishing trust and provenance. Databases are designed to access the current state of an object, and it’s history can be erased easily. Blockchains, while slow and clunky, are immutable. Databases are typically managed by a central authority, and all parties privy to the database demonstrate trust in the central authority to transact honestly. There is no need to prove the previous versions of the data set because all parties trust the central authority to administer fairly, not favoring one party over the other.

Why Use Blockchain

You might consider using a blockchain if there is a lack of trust between parties on the data stored or shared. These differences between blockchain and a traditional database will help determine which is a better fit for your use case:

Blockchain

Database

Decentralized control with no central authority - Optimal for instances where parties lack trust in one another, data is immutable because parties can view and verify data against a hash from any organization or time frame.

Centralized control by an administrator or authority - Parties trust the administrator, but if the authority owning the network is compromised, all data residing in network can be easily compromised as well.

Histories of record - Growing archive of all records in addition to a current snapshot, including a robust data set useful for auditing or any instance where data may need to outlive its immediate use. Entries are timestamped and given cryptographic proof that data has not changed.

No histories of record - Information in database is up-to-date at a particular moment in time. It cannot necessarily be proven that it has not changed, especially because any party with access to the database can edit entries.

No confidentiality of data - Everything in the blockchain is viewable to all parties with access to the blockchain.

Confidentiality of data - Members-only databases allow for permissioned access.

Slower performance time - Nodes build consensus by checking work added to the blockchain using a peer-to-peer system between all nodes running the protocol.

Faster performance time - Because trust is assumed, there is no hesitation or lag in processing transactions.

If you are seeking trust and immutability, a blockchain solution may be your best fit.  

If you require confidentiality and performance, a database may be your best fit.