Shared nothing architecture
From Wikipedia, the free encyclopedia
This article includes a list of references or external links, but its sources remain unclear because it lacks inline citations. Please improve this article by introducing more precise citations where appropriate. (April 2009) |
This article needs additional citations for verification. Please help improve this article by adding reliable references. Unsourced material may be challenged and removed. (April 2009) |
A shared nothing architecture (SN) is a distributed computing architecture in which each node is independent and self-sufficient, and there is no single point of contention across the system. People typically contrast SN with systems that keep a large amount of centrally-stored state information, whether in a database, an application server, or any other similar single point of contention. While SN is best known in the context of web development, the concept predates the web: Michael Stonebraker at UC Berkeley used the term in a 1986 database paper, and it is possible that earlier references also exist.
Shared nothing is popular for web development because of its scalability. As Google has demonstrated, a pure SN system can scale almost infinitely simply by adding nodes in the form of inexpensive computers, since there is no single bottleneck to slow the system down. Google calls this sharding. An SN system typically partitions its data among many nodes on different databases (assigning different computers to deal with different users or queries), or may require every node to maintain its own copy of the application's data, using some kind of coordination protocol. This is often referred to as database sharding.
There is some doubt about whether a web application with many independent web nodes but a single, shared database (clustered or otherwise) should be counted as SN. One of the approaches to achieve SN architecture for stateful applications (which typically maintain state in a centralized database) is the use of a data grid, also known as distributed caching. This still leaves the centralized database as a single point of failure.
[edit] See also
- Ad hoc network
- Ambient network
- Byzantine Fault Tolerance
- Client-server
- Comparison of P2P applications
- Computer cluster
- Decentralized computing
- Distributed hash table
- File sharing
- Friend-to-friend (or F2F)
- Friend-to-friend with third party storage
- Grid computing
- Overlay network
- Private P2P
- Servent
- Swarm intelligence
[edit] References
- Michael Stonebraker (UC Berkeley), The Case for Shared Nothing Architecture (PDF). Originally published in Database Engineering, Volume 9, Number 1 (1986).
This computer science article is a stub. You can help Wikipedia by expanding it. |