Design of a New Distributed NoSQL Database with Distributed Hash Tables
Autor: | Alberto Rivas, Angélica González Arrieta, Agustín San Román Guzmán, Pablo Chamoso, Diego Valdeolmillos |
---|---|
Rok vydání: | 2021 |
Předmět: |
Database
Logic Computer science 010102 general mathematics 0202 electrical engineering electronic engineering information engineering 020201 artificial intelligence & image processing 02 engineering and technology 0101 mathematics computer.software_genre NoSQL 01 natural sciences computer Hash table |
Zdroj: | Logic Journal of the IGPL. 30:566-577 |
ISSN: | 1368-9894 1367-0751 |
DOI: | 10.1093/jigpal/jzab003 |
Popis: | Databases play a fundamental role in today’s world, being used by most companies, especially those that offer services through the Internet. Today there is a wide variety of database models, each adapted for use according to the specific requirements of each application. Traditionally, the relational models with centralized architectures have been used mostly due to their simplicity and general-purpose query language, which made relational systems suitable for almost any application. However, with the growth of the Internet in recent decades, both in the number of users and in the amount of information, those centralized models began to suffer availability and scalability issues. To address those issues, the use of decentralized architectures and alternative database models began to arise, eventually replacing relational databases and centralized architectures when the requirements on availability and scalability are high. Those database models alternative to the traditional relational model are grouped under the name of NoSQL (Not only Structured Query Language). In this article, we present a NoSQL database developed as an end of degree work, with a flexible data model based on documents and a fully decentralized architecture based on the Gossip protocol for node discovery and a distributed hash table, in particular the rendezvous hashing algorithm, used to distribute and replicate the data across all the nodes. The main goals of the system are to achieve high availability (the data should be almost always accessible) and high scalability (the system should be able to scale by increasing the number of nodes to increase its capacity both on data and number of users). High availability is achieved thanks to the replication of the data, while high scalability is achieved by its decentralized architecture, which allows multiple entry points from the requests, and the data distribution, effectively increasing the database capacity by increasing the number of nodes. |
Databáze: | OpenAIRE |
Externí odkaz: |