Un almacén de datos distribuido es una red informática donde la información se almacena en más de un nodo , a menudo de forma replicada . [1] Por lo general, se usa específicamente para referirse a una base de datos distribuida donde los usuarios almacenan información en varios nodos , o una red informática en la que los usuarios almacenan información en varios nodos de la red de pares . [2]
Bases de datos distribuidas
Las bases de datos distribuidas suelen ser bases de datos no relacionales que permiten un acceso rápido a los datos en una gran cantidad de nodos. Algunas bases de datos distribuidas exponen capacidades de consulta enriquecidas, mientras que otras se limitan a una semántica de almacenamiento de clave-valor . Ejemplos de bases de datos distribuidas son limitados Google 's Bigtable , que es mucho más que un sistema de archivos distribuido o una red peer-to-peer , [3] Amazon ' s Dynamo [4] y Microsoft Azure Storage . [5]
Dado que la capacidad de realizar consultas arbitrarias no es tan importante como la disponibilidad , los diseñadores de almacenes de datos distribuidos han aumentado esta última a costa de la coherencia. Pero el acceso de lectura / escritura de alta velocidad da como resultado una consistencia reducida, ya que no es posible garantizar tanto la consistencia como la disponibilidad en una red particionada, como lo establece el teorema de CAP .
Almacenes de datos de nodo de red de pares
En los almacenes de datos de la red de pares, el usuario generalmente puede corresponder y permitir que otros usuarios también usen su computadora como un nodo de almacenamiento. La información puede ser o no accesible para otros usuarios dependiendo del diseño de la red.
La mayoría de las redes peer-to-peer no tienen almacenes de datos distribuidos, ya que los datos del usuario solo están disponibles cuando su nodo está en la red. Sin embargo, esta distinción es algo borrosa en un sistema como BitTorrent , donde es posible que el nodo de origen se desconecte pero el contenido continúe siendo servido. Aún así, este es solo el caso de los archivos individuales solicitados por los redistribuidores, a diferencia de las redes como Freenet , Winny , Share y Perfect Dark, donde cualquier nodo puede almacenar cualquier parte de los archivos en la red.
Los almacenes de datos distribuidos suelen utilizar una técnica de detección y corrección de errores . Algunos almacenes de datos distribuidos (como Parchive sobre NNTP) utilizan técnicas de corrección de errores hacia adelante para recuperar el archivo original cuando partes de ese archivo están dañadas o no están disponibles. Otros intentan de nuevo descargar ese archivo desde un espejo diferente.
Ejemplos de
Bases de datos distribuidas no relacionales
Producto | Licencia | Alta disponibilidad | Notas |
---|---|---|---|
Apache Accumulo | AL2 | ||
Aerospike | AGPL | ||
Apache Cassandra | AL2 | sí | utilizado anteriormente por Facebook |
Apache Ignite | AL2 | ||
Mesa grande | Propiedad | utilizado por Google | |
Couchbase | AL2 | utilizado por LinkedIn , PayPal y eBay | |
CrateDB | AL2 | sí | |
Apache Druida | AL2 | utilizado por Netflix y Yahoo | |
Dinamo | Propiedad | utilizado por Amazon | |
Hazelcast | AL2 , patentado | ||
HBase | AL2 | sí | utilizado anteriormente por Facebook |
Hipertabla | GPL 2 | Baidu | |
MongoDB | SSPL | ||
Riak | AL2 | sí | |
Redis | Licencia BSD | sí | |
Scylla | AGPL | ||
Voldemort | AL2 | utilizado por LinkedIn |
Almacenes de datos de nodo de red de pares
- BitTorrent
- Blockchain (base de datos)
- Proyecto de acordes
- Freenet
- GNUnet
- IPFS
- Mnet
- Napster
- NNTP (el protocolo de almacenamiento de datos distribuidos utilizado para las noticias de Usenet )
- Unidad, del software Perfect Dark
- Cuota
- Siacoin
- Almacenamiento en casa
- STORJ
- Tahoe-LAFS
- Winny
- ZeroNet
Ver también
- Nube de almacenamiento cooperativo
- Almacén de datos
- Sistema de archivos distribuido
- Keyspace , el esquema DDS
- De igual a igual
- Tabla hash distribuida
- Caché distribuida
- Resiliencia cibernética
Referencias
- ^ Yaniv Pessach, Almacenamiento distribuido ( Almacenamiento distribuido: Conceptos, algoritmos e implementaciones ed.), OL 25423189M
- ^ "Almacenamiento de datos distribuidos: una descripción general | Temas de ScienceDirect" .
- ^ "Bigtable: almacén de datos distribuidos de Google" . http://the-paper-trail.org/ : Paper Trail. Archivado desde el original el 16 de julio de 2017 . Consultado el 5 de abril de 2011 .
Aunque GFS proporciona a Google un almacenamiento de archivos distribuido confiable y escalable, no proporciona ninguna facilidad para estructurar los datos contenidos en los archivos más allá de una estructura de directorio jerárquica y nombres de archivo significativos. Es bien sabido que se requieren soluciones más expresivas para grandes conjuntos de datos. Los terabytes y terabytes de datos de Google que recuperan de los rastreadores web, entre muchas otras fuentes, deben organizarse, de modo que las aplicaciones cliente puedan realizar búsquedas y actualizaciones rápidamente con una granularidad más fina que el nivel de archivo. [...] Lo primero que debe saber sobre Bigtable es que no es una base de datos relacional. Esto no debería sorprender: un tema persistente en todos estos documentos de almacenamiento de datos distribuidos a gran escala es que los RDBMS son difíciles de hacer con un buen rendimiento. No hay un esquema fijo y rígido en una Bigtable, no hay integridad referencial entre tablas (por lo que no hay claves externas) y, por lo tanto, hay poca compatibilidad con las combinaciones optimizadas.
- ^ Sarah Pidcock (31 de enero de 2011). "Dynamo: Tienda de valor clave de alta disponibilidad de Amazon" (PDF) . http://www.cs.uwaterloo.ca/ : WATERLOO - ESCUELA DE CIENCIAS DE LA COMPUTADORA DE CHERITON. pag. 2/22 . Consultado el 5 de abril de 2011 .
Dynamo: un almacén de datos distribuido escalable y de alta disponibilidad
- ^ "Almacenamiento de Windows Azure" . 2011-09-16. Archivado desde el original el 9 de noviembre de 2011 . Consultado el 6 de noviembre de 2011 .