What is a database?
Databases, such as MongoDB and SQL are organized bundles of data or information. Storing data became increasingly challenging since the internet started connecting computers across the globe. Especially as it accumulates more and more information.
Additionally, there is a growing demand for sharing this data. Suppliers, partners, and shareholders, in general, expect companies to share their data with the supply chain. Others expect data sharing for marketing and sales purposes. Companies such as Facebook and Google use data for targeted marketing. Others like Amazon or Alibaba use this data for cross sales and up sales.
However, databases come in three different shapes and sizes, and formats. Let’s discuss the three main types of databases that exist:
Centralised databases: MongoDB and SQL, and more…
Centralized databases are systems that keep data on one single computer, called a server, at a single location.
Decentralised databases: Microsoft Azure, Google Cloud Platform, Amazon Web Services and more…
Today, centralized databases are storing databases on a network of servers connected to each other. This network of servers has been coined as “cloud hosting”.
Cloud hosting is also characterized as decentralized, as providers host databases in multiple locations. That said, the system controlling the network still has a central point of failure. Therefore, it is still treated as a somewhat centralized system.
Distributed databases: Blockchain, Hashgraph and more…
This new type of databases is best known for their distributed ledgers, or blockchain, block-driven data storage as well as validation. In the blockchain, data is stored on independent computers with no central point of failure. Moreover, it accesses all of the computers at the same time.
The difference between distributed and decentralized databases is that decentralized databases are still vulnerable to attacks. Whereas distributed databases are not connected. Therefore, data cannot be obtained by accessing only one of the networks’ servers or computers.
Functions of a traditional database vs. blockchain
Blockchain is reshaping industries worldwide by providing a more efficient infrastructure, resulting in better processes and improved security. In traditional databases, a client can perform four functions on the data, known as CRUD commands.
Blockchain, on the other hand, allows the client to perform only two functions, reading and writing. Data can be requested from the blockchain (i.e. reading) or added to the blockchain (i.e. writing). The obvious difference between typical databases and blockchain…you guessed it…decentralised control!
As mentioned before, in centralized and decentralized databases anyone who has access to the data can tamper or corrupt it. Therefore, users are fully dependent on the security measures in place of the database admin. With blockchain technology, distributed databases don’t have to rely on one administrator to provide security. The blockchain network, or the underlying algorithms making up the rules that powers this network, takes care of that.
Held for ransom
As mentioned above, the centralised control allows for a central point of failure. This central point of failure means hackers can attack a system by hijacking a single computer system. They have done so in the past and they will continue to do so in a future dominated by centralised networks.
In January 2018, only a few months ago, Hancock Regional Health hospital in Indiana, US, paid $55.000 ransom for more than 1.400 files. The hacker behind it encrypted and renamed all the files as “I’m sorry”. They then gave the hospital 7 days to comply, or they would forever encrypt the data.
The same month, the entire city of Farmington, New Mexico was under siege. Here, a SamSam ransomware was released in the databases of the city. The hacker, in this case, asked for 3 bitcoins (more than $35.000) in ransom. Fortunately, the FBI was able to retrieve the encrypted data without paying the price.
And the list goes on
These are just two examples from a long list of attacks that took place just this year. Not only is this worrisome for businesses, but also for consumers whose information is stored in these databases. Breaches such as these are embarrassing. Companies lose the trust of consumers and clients when their data is attacked. As a result, many forcibly take an unethical approach and hide violations to provide a false sense of security. It is important to note that these hacks are most likely a result of human error (i.e. failure to deploy recommended security measures to prevent these attacks or make advised updates) as opposed to a lack of security of databases such as MongoDB and SQL.
The possibility of human error is eliminated with blockchain technology as every request has to be verified in a distributed network. Whereas on centralised databases, once a connection has been established there is no need to verify future requests.
Benefits of blockchain to consider…
- Security: there is no single point of access. It is virtually impossible to hack due to the dispersed nature of the data and the countless numbers of copies. To do so, all nodes on the network would need to be hacked simultaneously. Also, the more nodes (i.e. participants) on the network, the more copies of the data exist.
- Accessibility: multiple copies are distributed across the world. Therefore, there is no need to worry about data manipulation possibilities or server downtimes. Data is always available, even at the most crucial times.
- Cost reduction: traditional databases, like MongoDB and SQL have a single point of access. Therefore, extensive security measures are a necessity. This means providers offer round the clock monitoring to prevent and manage threats and hackers. These costs are then passed down to the customer (i.e. those requesting database services, including IT staffing, software development and operation, and infrastructural overhead). Since blockchain does not require these costs, it will be less expensive over time, once implemented.
- Accountability: data on the blockchain is verifiable and thus trustworthy. Additionally, showing a history of records is particularly useful for auditing purposes and transparency. Data is not always needed for immediate use, but later down the road, it may unexpectedly become needed.
Drawbacks of blockchain to consider…
- Speed: consensus on the blockchain is achieved using a peer-to-peer system between nodes. On centralized databases, such as MongoDB and SQL, trust is assumed. Therefore, there is no delay in processing transactions. At its current state, blockchain is slower than traditional centralized databases.
Blockchain technology and distributed databases, or ledgers, becomes more integrated into our society. More specialists are accessible to help companies make the change at a reasonable price point. Additionally, as always with new technology, many employees and top management are reluctant to initiate change.
Therefore, the advantages of blockchain will need to be measured against overall costs. This will determine the type of database that is best for your company based on its needs. So, a complete replacement of traditional databases such as MongoDB and SQL is not likely at the moment. Integration and improvement of existing databases is the most likely scenario.