Distributed systems are simple and resilient, yet limited in their adaptability. Centralized systems are powerful but linked together as one entity -- if you lose one part of the system, the whole thing fails.
Distribution
Distributed systems are made of independant parts. The parts can interface with each other and cooperate in a loose way, but there is no large-scale coordination.
An example of a distributed system is bacteria. They are independent, but have loose associations: they can lump together and form defensive structures, they can trade plasmid rings to share genetic knowledge, they can collectively attack other bacteria, and when food starts to run low, they can grow tails and seed new colonies.
They are very capable of surviving near-destruction because only one or two are necessary to start a new colony.
However, they lack the ability to coordinate en-masse. A bacterial colony cannot avoid an animal trying to eat it. This kind of coordination requires a centralized nervous system with information from all the members percolating up a hierarchy, and commands percolating back down.
Pros
- Robust to failures
Cons
- Inability to take collective action in a crisis
Centralization
Centralized systems are many little parts linked together as a unified whole. All the parts are specialized and dependant on the health of the entire system. This means that if part of the system stops working, everybody dies.
For example, a human is a mountain of cells that are all dependant on the bloodstream for their food and oxygen. If the heart stops pumping, the cells don't decide to move on and find their own food; the entire organsm dies all at once!
The same is true of society: we are trained to be cogs in a massive organism made of human beings. We depend upon the flow of food and technologies to survive. If the flow stops, most people don't know how to make their own food or technology; the entire organism dies all at once!
The advantage of centralized systems is that they can take collective strategic action. They can react much quicker to problems, and in a coordinated way.
Pros
- Strategic coordination
Cons
- Fragility
Questions
Do sparse-distributed systems offer the advantages of both? Survivability in the case of failures, as well as centralized coordination, and simplicity?
