Wednesday, October 27, 2021

Decentralization vs Distributed

 Decentralization vs Distributed

Decentralization is a concept that pertains to HOW DECISIONS ARE MADE.  Examples are "decentralized decision making". So if a decision needs to be made, instead of asking a central authority (which might be SLOW, CORRUPT-ABLE, EXPENSIVE), you can spread the decision out for a CONSENSUS (via voting, etc).  So to make decisions in a decentralized manner, we need a way for peers to reach a consensus - perhaps via a voting mechanism. The Apollo-2343 had multiple parallel computers that needed to agree on the final state of the system, so a consensus machism was needed. Voting can be an IMPLEMENTATION of a consensys. 

Benefits of decentralization over centralization : Today’s enterprise operating model are highly centralized, where transactions between two parties (say buyer and seller of an asset, or producer and consumer of a service) need to pass through several intermediaries (middleman). Examples of these intermediaries include stock brokers, banks, clearing houses, exchanges, which add costs, delays, and even mistakes into transactions. Decentralization will remove the intermediaries, which in turn will lower costs, reduce errors, and speed up transaction, as well as offering new services not possible with traditional centralized services. In addition, decentralization will remove single points of failure, potential censorship by a single (nefarious) actor, and creating trust where all transactions are recorded, verified, and replicated. Blockchain can decentralized enterprise operating model by providing a single source of trusted truth, augmented with the power of smart contract. 

Distributed is a concept that pertains to COMPUTE. If you have a workload (say processing a movie that requires heavy compute), you can run it on your laptop, which is not distributed. Or you can run that same workload on a distributed compute environment, where multiple computers work in parallel to speed up the workload. The workload needs to be friendly/amiable to being broken up into smaller parallel workloads. As such, that is why the general type of technology that Blockchain derives from is called "Distributed Ledger Technology", or DLT.  

"Consensus",  usually brought up in the context of distributed systems, discusses how distributed systems (compute, storage) agree on the state of compute or storage.  

  • Malice/bad tolerant (BFT) : 
    • Paxos 
    • PBFT (derived from Paxos)
      • asynchronous
      • leader (view), rotates
      • need 3f+1 nodes to deal with f failure
  • Crash tolerant : 
    • Raft, an alternative to Paxos

No comments :

Post a Comment