Forum Discussion
Re: Welcome to the Blockchain AMA!
- Mar 15, 2017Hi Adam - nice to see someone else in the Cotswolds with an interest in Blockchain. Blockchain is a distributed database where a consensus algorithm is used to settle on a single version of the truth. Everyone has a copy of the database and, depending on the implementation, may be able to participate in the consensus process. What you get is a very resilient, immutable database well suited to recording transactions between multiple parties. Outside of finance, it lends itself to anything where an audit trail is important, eg tracking provenance, supply chain management etc
In banking and settlement, surely having billions of transactions a day will create a massive chain?
Size of the ledger is certainly a concern and it is possible that for high-throughput systems the ledger could be too large for a node to hold locally. That said this issue isn't unique to blockchains btw - it exists for any log-based system. I suspect we'll be able to use the same techniques to solve the problem here as we do for traditional databases.
There's work going on across the industry on sharding of the ledger, which would complicate the programming model but would enable nodes to participate in a subset of shards and thereby limit the data they need to store.
Another pattern that we've talked about is to use storage services like Azure Storage or Azure Data Lake to store older blocks. As blocks are processed and state updates are applied, the set of past transactions need not be accessed frequently - so they could be moved off to external storage.