Distributed data store: Difference between revisions

Content deleted Content added
AnomieBOT (talk | contribs)
m Dating maintenance tags: {{Fact}}
 
(26 intermediate revisions by 24 users not shown)
Line 1:
{{Short description|Computer network with mulitple nodes to store information}}
{{Essay-like|date=May 2012}}
{{Memory types}}
Line 7 ⟶ 8:
|edition = Distributed Storage: Concepts, Algorithms, and Implementations
|ol = 25423189M
}}</ref> It is usually specifically used to refer to either a [[distributed database]] where users store information on a ''number of nodes'', or a [[computer network]] in which users store information on a ''number of peer network nodes''.<ref name="urlDistributed Data Storage - an overview | ScienceDirect Topics">{{cite web fact|urldate=https://www.sciencedirect.com/topics/computer-science/distributed-data-storageAugust |title=Distributed Data Storage - an overview &#124; ScienceDirect Topics |format= |work= |accessdate=2025}}</ref>
 
==Distributed databases==
[[Distributed database]]s are usually [[non-relational database]]s that enable a quick access to data over a large number of nodes. Some distributed databases expose rich query abilities while others are limited to a [[key-value store]] semantics. Examples of limited distributed databases are [[Google]]'s [[Bigtable]], which is much more than a [[distributed file system]] or a [[peer-to-peer network]],<ref>{{cite web
| access-date = 2011-04-05
| ___location = http://the-paper-trail.org/
| publisher = Paper Trail
| title = Bigtable: Google's Distributed Data Store
Line 24:
| author = Sarah Pidcock
| date = 2011-01-31
| ___location = http://www.cs.uwaterloo.ca/
| page = 2/22
| publisher = WATERLOO – CHERITON SCHOOL OF COMPUTER SCIENCE
Line 30 ⟶ 29:
| quote = Dynamo: a highly available and scalable distributed data store
| url = http://www.cs.uwaterloo.ca/~kdaudjee/courses/cs848/slides/sarah1.pdf}}</ref>
and [[Azure Services Platform|Microsoft Azure Storage]].<ref>{{cite web|url=http://www.microsoft.com/windowsazure/features/storage/|title=Windows Azure Storage|website=[[Microsoft]] |date=2011-09-16|access-date=6 November 2011|url-status=dead|archive-url=https://web.archive.org/web/20111109002826/http://www.microsoft.com/windowsazure/features/storage/|archive-date=9 November 2011}}</ref>
 
As the ability of arbitrary querying is not as important as the [[availability]], designers of distributed data stores have increased the latter at an expense of consistency. But the high-speed read/write access results in reduced consistency, as it is not possible to haveguarantee both [[Consistency (database systems)|consistency]], availability, and partitionavailability toleranceon ofa thepartitioned network, as it has been provenstated by the [[CAP theorem]].
 
==Peer network node data stores==
In peer network data stores, the user can usually reciprocate and allow other users to use their computer as a storage node as well. Information may or may not be accessible to other users depending on the design of the network.
 
Most [[peer-to-peer]] networks do not have distributed data stores in that the user's data is only available when their node is on the network. However, this distinction is somewhat blurred in a system such as [[BitTorrent (protocol)|BitTorrent]], where it is possible for the originating node to go offline but the content to continue to be served. Still, this is only the case for individual files requested by the redistributors, as contrasted with networks such as [[FreenetHyphanet]], [[Winny]], [[Share (P2P)|Share]] and [[Perfect Dark (P2P)|Perfect Dark]] where any node may be storing any part of the files on the network.
 
Distributed data stores typically use an [[error detection and correction]] technique.
Line 89 ⟶ 88:
|
|-
| [[Apache Druid (open-source data store)]]
| {{free|[[Apache License 2.0|AL2]]}}
|
Line 98 ⟶ 97:
|
| used by [[Amazon.com|Amazon]]
| -
| [[Container_Linux#ETCD|etcd]]
| {{free|[[Apache License 2.0|AL2]]}}
| {{yes}}
|
|-
| [[Hazelcast]]
Line 119 ⟶ 123:
|
|-
| [[MySQL Cluster|MySQL NDB Cluster]]
| RavenDB
| {{free|[[GNUGPL Affero General Public License|AGPL2]]}}
| {{yes}}
| SQL and NoSQL APIs
|
|-
| [[Riak]]
Line 135 ⟶ 139:
|
|-
| [[ScyllaDB]]
| [[Scylla (database)|Scylla]]
| {{free|[[GNU Affero General Public License|AGPL]]}}
|
Line 160 ⟶ 164:
* [[Share (P2P)|Share]]
* [[Siacoin]]
* DeNet
* [[Storage@home]]
* STORJ
* [[Tahoe-LAFS]]
* [[Winny]]
Line 170 ⟶ 174:
* [[Cooperative storage cloud]]
* [[Data store]]
* [[Distributed file system]]
* [[Keyspace (distributed data store)|Keyspace]], the DDS [[Schema (database)|schema]]
* [[Peer-to-peer]]
* [[Distributed hash table]]
* [[Distributed cache]]