Wednesday, 29 November 2017

Be frugal to Blockchain platforms go BigchainDB "a Decentralized distributed Database"

Before I commence this narrative, I would like to call out a disclaimer that am in no way promoting BigchainDB J, but am a huge fan of their “institution of thought”, their product, their Blockchain protocol and this whole new concept they are trying to mainstream soon that will bring Economic Prosperity via “Attribution Driven consensus, loyalty to Digitization”

Image courtesy: not me this time :), but https://www.bigchaindb.com/

Problem Statement
Often developers try to fit attribution and complex data structures on a 1 MB block which really disrupts the queue for an important transaction that's queued in the Blockchain. Overloading the Bitcoin Blockchain makes it a stronger case for the hardfork and strengthens the 2MB debate.
It gets overly complex when data and other attributes are loaded onto it when use-cases other than P2P payments are modeled on the Bitcoin network, it is “overkill”.

Thus it's very important to use the right platform for the right function. But how?
How can we make this simple to understand?

Just like how a traditional ERP system works, where there is a application layer and a database and now a cloud, a stack based approach for smart contract execution will help draw parallels the way we understand it today.

- Write the contract in its permissible platform Ex Ethereum, Hyperledger or R3 corda etc.
- Verify and query the attribution and transaction via a distributed decentralized database ex BigchainDB to trigger the smart contract for settlement 
- Pay via the native token of the smart contract platform or via the Bitcoin payment network

In short choking the platform that's meant for something else isn't best practice.

That is what I learnt from Bruce Pons interview Podcast with Frederick Munawa  on Blockchain global. reiterating this aspect several times.

see the podacast here: The World’s First Scalable Blockchain Database – with Bruce Pon http://blockchain.libsyn.com/006-the-worlds-first-scalable-blockchain-database-with-bruce-pon


Continuing on the choke aspect of the platforms.
Why not Ethereum for attribution?
Ethereum’s main purpose is to maintain all logic in a Turing complete way, smart contracts are not meant to hold assets, hold data or hold IP relevant attribution for master/transactional data that’s growing organically with transactions hitting the floor every second.
using...also when we are talking block processing times/block consensus in fewer minutes or seconds v/s 10 minutes. The designer should look at embracing the concept of a Decentralized Distributed Stack.


What is a Decentralized Distributed Stack?
Terms like IPDB, IPFS become very interesting when Bruce Pon(BigchainDB) breaks it down and explains how the whole decentralized distributed database will free up Blockchain and let them preserve the nativity of what's meant for that platform. Read BigchainDB whitepaper here https://www.bigchaindb.com/whitepaper/

The underlying database for BigchainDB is MongoDB and it works seamlessly platform agnostic and is scalable and secure. Quoting from BigchainDB Whitepaper about Permissioned nodes “The way that BigchainDB is designed, permissioning sits at a layer above the core of the design. However, we have already seen many questions about \private vs. public" versions of BigchainDB, privacy, and authentication. In our view, a rich permissioning framework is the technology foundation.”
The stack looks something like this
Ethereum: processing 
Bitcoin: for payment
BigchainDB: for attribute querying and file system and attribution maintenance (Ex digital asset, its attributes, its license)
File System: IPFS/IPDB (all embed into a decentralized distributed DB like the BigchainDB)

Decentralized distributed Database(Economy of prosperity)

Why is it so Important to License and Blockchain a Digital Asset?
When work is digitized on the internet it can lose attribution or claim, however its the quickest mode for marketing of the asset that moderates itself.
The attribution of the Digitized asset must never go away, perpetually, there has to be a way to reward the contributor (Napster issue), until the end of life of the asset.

Likewise Ethereum is for smart contracts and if you load data, attribution and other facets onto it, it loses its advantage towards the developer community that's trying to make that platform work for
Something niche.

Hence there has to be a Decentralized Stack and a Distributed Database that can hold all the attribution and make it available to the payment and the smart contact stack when executing a use case end to end.



De-coding a Distributed Decentralized database (I’m a huge fan of BigchainDB, so my narrative is wrt. BigchainDB)
Understanding the stack differentiation of the music industry use-case using BigchainDB for trust in attribution
Peter Harris at resonate and a host of other music industry Blockchain revolutionists are trying to model the whole concept of trust, empathy and remunerating every artist via a well-designed smart contract of a music digital asset with a blockchain concept. Stream to Own, is resonates Blockchain protocol that is deemed to use BigchainDB for asset attribution and smart contact trigger.
See the podcast with Peter Harris on Frederick’s show here Blockchain Music Co-op Challenges Spotify – featuring Peter Harris http://blockchain.libsyn.com/004-blockchain-music-co-op-challenges-spotify-featuring-peter-harris

What are some of the nuances of the Decentralized distributed database (BigchainDB)...

·       Native Support for Multiassets: With no native currency on BigchainDB, any asset, token or currency can be issued.
·       Petabytes Capacity Coming soon: Store arbitrary asset and transaction metadata right in BigchainDB, not elsewhere.
·       Public or Private: Roll out your own public or private networks for specific industry use cases.
·       Federation Consensus Model: Decentralized control via a federation of voting nodes makes for a super-peer P2P network.
·       Customizable: Design your own private network with custom assets, transactions, permissions and transparency.
·       Rich Permissioning: Set permissions at transaction level to ensure a clear separation of duties and enforce selective access.
·       Open Source: Open sourced to the community so that everyone can use it and build their own applications on top of it.
·       Query: Leverage efficient big data query capabilities out of the box.
·       Linear Scaling Coming soon: The more nodes added, the higher the throughput and the higher the storage capacity.

Necessity is the mother of all invention 
Consensus: the constraint of limited data you can store on the block led to the fact that there has to be a different system that can hold attribution, transactional data, hence a IPDB. 

How trusted the data should be ?
Claim for IP has to be on the decentralized database...period :)

What is IPFS
It stores your data in multiple locations and cannot be stored without the access code.
No access to data but computers will replicate it to another computer that is on.

Interplanetary Database
Global network of participants that secure the network and provide consensus (similar to minters on the Bitcoin Blockchain)

Scalable DB handling millions of transactions has to have limited Humber of nodes
In simple terms how does the BigchainDB work end to end?
·        Interplanetary linked data : IPLD
·        Ethereum contract will have an address IPFS files will have a unique identifier
·        Ethereum address identifies it Pulls it into smart contract and executes it
Bruce also gives a very critical example on the podcast on how one heavy transaction can impede another critical transaction

Bruce trying to sell memes & 50k users want to buy memes for 2c a piece 
His flimsy low $ low yield potential transaction should not block a transaction that is meant to go thru Bitcoin peer to peer (ex a 19 min dollar payment for sheet metal on the Bitcoin Blockchain that someone is trying to pay a seller in another country)

 Conclusion:
“Stop building Use cases on Bitcoin Blockchain”
·        Get files to IPFS
·        Get data to BlockchainDB (IPDB)
·        Trigger the smart contract from Ethereum or any other complex smart contract platform.
·        “Get Paid” instantly via Bitcoin…

….wait not “instantly” that’s 10 minutes
J


No comments:

Post a Comment