The Case For Blockchain In Modern Data Architecture
There is a lot of talk about blockchain and cryptocurrencies these days. Many see blockchain as a disrupting technology that changes entire industries. However, there are also a lot of overstated expectations. This article explains basic concepts and terms of blockchain technology and looks beyond the hype for its fit in enterprise data architectures.
What is Blockchain?
First and foremost, blockchain is not Bitcoin. It is rather an underlying technological concept that enables secure electronic transactions in the Bitcoin ecosystem . Oversimplified, think of it as an immutable list of records, just like a ledger in accounting. What makes it special is, first, the stability that comes from its distributed design, i.e. a blockchain runs on multiple machines without a central control instance and without a single point of failure. And second, blockchains are very resilient against corruption and subsequent manipulations since every block validates its preceding block, and each node individually holds all records of a blockchain. To simplify again, imagine that each line in the list contains a mathematical checksum to check the line above and that the list gets copied and shared with all participants as soon as a new line is added. Hence, a subsequent manipulation would have to corrupt all lines below an entry on every list of each participant, which means a lot of effort.
From a technical perspective, a blockchain is simply a distributed database with a list of linked records (blocks). A record contains the actual data (e.g. a list of bitcoin transactions or sensor data from a machine) as well as a cryptographic hash of its prior block. Here, the hash values validate the blocks and allow them to string together to build a (block)chain. The hashes thereby also define the level of security in a blockchain, because the more complex the hashes are, the harder it is to fake them, and hence the more secure the blockchain is. In very secure implementations, like the Bitcoin blockchain, calculating a new hash can take up to a few minutes (which is long) and consumes a lot of computing power and energy . However, in the Bitcoin universe, this work eventually pays off, as successful calculations are rewarded with actual Bitcoins (see box “a note about Bitcoin mining”). The process of calculating hashes is also often called mining .
The Emancipation of Blockchain
The hype about cryptocurrencies intensively promotes blockchain technology, but it also often restricts discussions to financial use cases. However, there are many interesting ideas to adapt blockchain concepts that go beyond cryptocurrencies. Ethereum, for example, is a general platform that enables developers to use blockchain technology in other applications, such as e-voting, supply chain management, and car rentals . For this, Ethereum extended the blockchain with scripting functionalities (smart contracts) that, for instance, allow running automatic actions, like payments or invalidations, if certain conditions are met.
The blockchain community is moving very fast and there are many products that try to bring blockchain technology to new applications and industries. However, there are still a lot of open challenges and barriers, especially in enterprise environments. For instance, few products use blockchains in controlled environments or integrate them with existing technologies. Moreover, current blockchain implementations have few features that go beyond immutably storing data, like advanced querying functionality or governance concepts. On the whole, most blockchain concepts are still immature and experimental, which raises the questions if and where blockchain might be used in today’s and tomorrow’s data architectures, and where it won’t.
Use Cases for Blockchain in Enterprise Data Architectures
Coming from a classical requirements analysis, blockchain offers two major features. First, a decentralized structure that allows it to run peer-to-peer without a central control instance. Second, the immutability that comes from the cryptographic hashing. These two features already restrict the scope of adequate use cases quite a bit.
Figure 1. Do you have a Blockchain Use Case?
Figure 1 illustrates restrictions that should be considered when thinking about blockchain in enterprise data architectures. Following this, it turns out that if the needs do not map to the very specific features of a blockchain, there is usually another more adequate solution. For instance, if there is no need for immutability, the blockchain idea of fixed linked records only adds unnecessary complexity. Or if a use case requires advanced analytical features, a relational or non-relational database is probably a better choice. Finally, it is very important to distinguish between experimental and productive use cases. It is easy to think about blockchain solutions for novel green-field scenarios, however, when it comes to production there are things like governance, privacy, or technological integration in existing system landscapes that makes things way more complicated. There are products that try to overcome some of these issues, but due to the novelty of the topic most of them are not yet “enterprise-ready” .
Despite all that, there are use cases that definitely could benefit from blockchain, such as data sharing scenarios or data marketplaces , where multiple companies act as equal partners. There are also use cases with immutability as a key requirement, like data lineage or audit logs. Moreover, blockchain could also evolve to a major building block for novel concepts like the Internet of Things, which is decentralized at heart and currently faces a lot of issues with security and traceability .
This article has shown that it is still unclear if and when blockchain will make its way into enterprise data architectures. The reasons for this are, first, that blockchains are designed for very specific scenarios with decentralization and immutability as core factors, which limits the use cases for enterprises. Second, blockchains offer fewer benefits the more blockchain concepts are bent to fit enterprise needs. For example, a much simpler hash calculation to handle extensive loads of sensor data would make a blockchain become less secure. Lastly, the underlying blockchain philosophy of democracy and uncontrollability often contradicts the goals of today’s business models or enterprise concepts like governance and security standards. Nevertheless, under the right circumstances, e.g. for decentralized use cases or novel areas like the Internet of Things, blockchain can be a game-changer.
In conclusion, blockchain beyond cryptocurrencies is still immature and is currently more of a niche candidate for enterprise use cases. At the moment, for most productive applications, other well-tried solutions do the job better. However, blockchain technology moves fast and there are certainly many great products yet to come. That is why blockchain should definitely be on your radar.
|A note about bitcoin mining|
Many think bitcoin miners create new bitcoins. However, bitcoin miners actually are just calculating the hash values that are necessary to append a new block of transactions to the bitcoin blockchain. As the calculations are very resource-intensive, they get paid with bitcoins for their efforts, which makes it very profitable at the moment.
 Nakamoto, S. (2008) “Bitcoin: A Peer-to-Peer Electronic Cash System”
 Bradburry, D. (2018) “How Much Power It Takes to Create a Bitcoin “
 Cosset, D. (2018) “Blockchain: What is Mining?”
 Wells, D. (2017) „The Rise of the Data Marketplace: Data as a Service“
 Conoscenti, M., Vetrò, A., De Martin, J.C. (2016) “Blockchain for the Internet of Things: A systematic literature review”