Databases are one of the first use cases that come to mind when thinking about blockchain technologies. Paradoxically, blockchains are really limited when comes to database capabilities. Recently, some technologies have emerged to address those limitations. Among those, BigChainDB is becoming one of the essential components of modern blockchain applications.
The excitement about blockchains and databases is logical as many people associate the blockchain with a decentralized storage ledger. In that sense, blockchains seem like an ideal candidate to power decentralized database architectures. While the theory about decentralized, federated databases has been around for a while, most popular database technologies are based on traditional centralized, service-side architectures. The blockchain certainly provides a highly-scalable data storage model but its capabilities as general purpose database are really limited.
Limitations of Blockchains from a Database Perspective
If we analyze the capabilities of blockchains from the perspective of traditional database technologies, we can identify some very well-known challenges and limitations:
— Write Latency: Confirming write operations in a decent-size blockchain network can take several minutes to complete.
— Capacity: Blockchains are designed to just store a few dozen GBs which can prove insufficient in many database scenarios.
— Throughput: Blockchains can only support a few concurrent operations which contrasts with the high concurrency requirements of web and mobile database solutions.
— Inconsistency: Because write operations can take a long time to complete, blockchain networks can remain in an inconsistent state for minutes at a time.
— Data Partitioning: Traditional data partitioning techniques are very difficult to implement in the blockchain as each node maintains a copy of the entire network.
Despite some of these challenges, blockchains include many attractive capabilities that can enable a new generation of decentralized technologies. Platforms such as BigChainDB are starting to capitalize in this model.
BigChainDB offers a decentralized database model powered by the blockchain. The platform uses some clever engineering techniques that combine an enterprise-grade distributed database with a blockchain infrastructure.
By leveraging a blockchain infrastructure, BigChainDB inherits some of the traditional benefits of blockchains such as asset transfer, tamper resistance and, of course, decentralized control and storage. These capabilities are incredibly relevant in modern database scenarios that power solution in emerging areas such as IOT or Virtual Reality. Complementarily, BigChainDB also inherits other benefits from using an underlying database infrastructure.
By using a distributed, decentralized database, BigChainDB overcomes some of the major limitations of the blockchain when comes to database capabilities. From that perspective, BigChainDB enables capabilities such as a full-featured NOSQL query language, high throughput data flow, high capacity, effective data partitioning and many other benefits of traditional NOSQL databases. Even more relevant is teh fact that BigChainDB enables these features without violating the consistency of the blockchain model. BigchainDB can also coexist with other decentralized storage models such as IPFS.
In a very short time, BigchainDB has become an incredibly relevant element of blockchain solutions. The database platform is already being included in many frameworks such as Eris or Ethereum. As blockchain platforms evolve, BigChainDB has the opportunity to establish itself as one of the essential components of the blockchain ecosystem.