Reliable array of independent nodes
|
|
This article may contain wording that merely promotes the subject without imparting verifiable information. Please remove or replace such wording, unless you can cite independent sources that support the characterization. (October 2011) |
|
|
This article includes a list of references, related reading or external links, but its sources remain unclear because it lacks inline citations. Please improve this article by introducing more precise citations. (December 2009) |
Reliable/redundant array of independent/inexpensive nodes (RAIN) is an architectural approach to computing and network-attached computer storage (or NAS), that combines commodity or low-cost computing hardware with management software to address the reliability and availability shortcomings of non-redundant NAS systems.
While RAID protects data stored at the physical disk (or 'block') level, RAIN protects data stored at the file-system level, hence RAIN and RAID differ architecturally only in terms of the level of abstraction at which they are implemented.[1] Instead of storing multiple copies of the same data on physically separate hard disks on a server, data is replicated to multiple servers. The software that manages the array of RAIN servers knows where each copy is and, in the event of a server failure, can make additional copies (RAID-1 or 'mirroring') or use a parity-based RAID scheme (RAID-5 or similar) as necessary to keep an appropriate level of redundancy.
RAIN can also be used with tasks which require many instructions per second to be processed. Instead of using a "tightly-coupled" computing cluster with specialized hardware, arrays of inexpensive RAIN nodes can be assembled. The management software transmits tasks to various computers and, in the event of a failure, will retry the task until a node responds. Many distributed computing projects utilize, to some degree, a RAIN strategy.
Many of the distributed file sharing services such as Gnutella and eDonkey are somewhat similar to RAIN systems, but they do not provide adequate redundancy by design—if none of the sharing users online have a copy of some part of a file, the file becomes inaccessible. A distributed hash table is a better basis for implementing such a service, and the few large-scale distributed file systems that exist are based on them (for example, the Chord, Coral, and Tahoe-LAFS projects).
References
- ^ Bohossian, Vasken; Charles C. Fan, Paul S. LeMahieu, Marc D. Riedel, Lihao Xu, Jehoshua Bruck (September 1999) (pdf). Computing in the RAIN. A Reliable Array of Independent Nodes. Caltech. http://www.paradise.caltech.edu/papers/etr029.pdf. Retrieved July 2008.
External links
| This computer storage–related article is a stub. You can help Wikipedia by expanding it. |