Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/awesomelistsio/awesome-distributed-databases

A curated list of awesome resources, tools, frameworks, and educational content related to Distributed Databases. Distributed databases are designed to scale across multiple nodes, offering high availability, fault tolerance, and horizontal scalability.
https://github.com/awesomelistsio/awesome-distributed-databases

List: awesome-distributed-databases

awesome awesome-list awesome-lists distributed-database

Last synced: about 1 month ago
JSON representation

A curated list of awesome resources, tools, frameworks, and educational content related to Distributed Databases. Distributed databases are designed to scale across multiple nodes, offering high availability, fault tolerance, and horizontal scalability.

Awesome Lists containing this project

README

        

# Awesome Distributed Databases [![Awesome Lists](https://srv-cdn.himpfen.io/badges/awesome-lists/awesomelists-flat.svg)](https://github.com/awesomelistsio/awesome)

[![Buy Me A Coffee](https://srv-cdn.himpfen.io/badges/buymeacoffee/buymeacoffee-flat.svg)](https://tinyurl.com/2h9aktmd)   [![Ko-Fi](https://srv-cdn.himpfen.io/badges/kofi/kofi-flat.svg)](https://tinyurl.com/d4xnrptz)   [![PayPal](https://srv-cdn.himpfen.io/badges/paypal/paypal-flat.svg)](https://tinyurl.com/mr22naua)   [![Stripe](https://srv-cdn.himpfen.io/badges/stripe/stripe-flat.svg)](https://tinyurl.com/e8ymxdw3)

> A curated list of awesome resources, tools, frameworks, and educational content related to Distributed Databases. Distributed databases are designed to scale across multiple nodes, offering high availability, fault tolerance, and horizontal scalability.

## Contents

- [General Resources](#general-resources)
- [Distributed Database Systems](#distributed-database-systems)
- [Distributed Key-Value Stores](#distributed-key-value-stores)
- [Distributed SQL Databases](#distributed-sql-databases)
- [Distributed Graph Databases](#distributed-graph-databases)
- [Data Replication and Consensus](#data-replication-and-consensus)
- [Development and Testing Tools](#development-and-testing-tools)
- [Educational Resources](#educational-resources)
- [Community and Forums](#community-and-forums)
- [Contribute](#contribute)
- [License](#license)

## General Resources

- **[Distributed Databases Explained](https://www.ibm.com/topics/distributed-database)** - An overview of distributed databases and their benefits.
- **[Database Systems: The Complete Book](https://www.amazon.com/Database-Systems-Complete-Book-2nd/dp/0131873253)** - A comprehensive textbook covering distributed database design and architecture.
- **[The CAP Theorem](https://en.wikipedia.org/wiki/CAP_theorem)** - An explanation of the CAP theorem and its implications for distributed databases.

## Distributed Database Systems

- **[Apache Cassandra](https://cassandra.apache.org/)** - A highly scalable NoSQL distributed database designed for handling large amounts of data across many servers.
- **[MongoDB](https://www.mongodb.com/)** - A popular NoSQL document-based distributed database known for its flexibility and ease of use.
- **[Apache HBase](https://hbase.apache.org/)** - A distributed, scalable, NoSQL database built on top of Apache Hadoop.
- **[Couchbase](https://www.couchbase.com/)** - A distributed NoSQL database designed for interactive applications.
- **[Riak](https://riak.com/)** - A distributed NoSQL key-value store known for its high availability and fault tolerance.
- **[FoundationDB](https://www.foundationdb.org/)** - A distributed database designed to handle large volumes of structured data.

## Distributed Key-Value Stores

- **[Amazon DynamoDB](https://aws.amazon.com/dynamodb/)** - A fully managed, serverless key-value store designed for high availability.
- **[Redis](https://redis.io/)** - An in-memory key-value store supporting replication and sharding.
- **[Etcd](https://etcd.io/)** - A distributed key-value store for configuration management and service discovery.
- **[Consul](https://www.consul.io/)** - A distributed key-value store used for service discovery and configuration.
- **[Hazelcast](https://hazelcast.com/)** - A distributed in-memory data grid for real-time applications.

## Distributed SQL Databases

- **[CockroachDB](https://www.cockroachlabs.com/)** - A distributed SQL database designed for global consistency and high availability.
- **[YugabyteDB](https://www.yugabyte.com/)** - A high-performance distributed SQL database for building cloud-native applications.
- **[TiDB](https://pingcap.com/)** - An open-source, distributed SQL database compatible with MySQL.
- **[Google Spanner](https://cloud.google.com/spanner)** - A fully managed, globally distributed SQL database offering strong consistency.
- **[Vitess](https://vitess.io/)** - A database clustering system for horizontal scaling of MySQL.

## Distributed Graph Databases

- **[Neo4j](https://neo4j.com/)** - A scalable graph database known for its powerful querying capabilities.
- **[JanusGraph](https://janusgraph.org/)** - A scalable graph database optimized for storing and querying large graphs.
- **[Dgraph](https://dgraph.io/)** - A high-performance, distributed graph database with a native GraphQL API.
- **[ArangoDB](https://www.arangodb.com/)** - A multi-model database supporting graph, document, and key-value data models.
- **[TigerGraph](https://www.tigergraph.com/)** - A distributed graph database designed for real-time analytics on massive datasets.

## Data Replication and Consensus

- **[Paxos Consensus Algorithm](https://lamport.azurewebsites.net/pubs/paxos-simple.pdf)** - A consensus protocol used for achieving agreement in distributed systems.
- **[Raft Consensus Algorithm](https://raft.github.io/)** - A consensus algorithm designed to be easy to understand, used by systems like Etcd and CockroachDB.
- **[Zookeeper](https://zookeeper.apache.org/)** - A centralized service for maintaining configuration information, naming, and providing distributed synchronization.
- **[Gossip Protocol](https://en.wikipedia.org/wiki/Gossip_protocol)** - A protocol used for data propagation in distributed databases like Cassandra and Riak.

## Development and Testing Tools

- **[Apache Kafka](https://kafka.apache.org/)** - A distributed event streaming platform often used with distributed databases.
- **[Debezium](https://debezium.io/)** - A distributed platform for change data capture (CDC) in databases.
- **[Jepsen](https://jepsen.io/)** - A framework for testing distributed systems and databases.
- **[MinIO](https://min.io/)** - A high-performance, distributed object storage system compatible with Amazon S3.
- **[DataStax Studio](https://www.datastax.com/products/datastax-studio)** - A tool for visualizing data and running queries on Apache Cassandra.

## Educational Resources

- **[Designing Data-Intensive Applications](https://www.oreilly.com/library/view/designing-data-intensive-applications/9781491903063/)** - A comprehensive book on building scalable and reliable distributed systems.
- **[Distributed Systems 101](https://www.coursera.org/learn/cloud-computing)** - An online course covering the fundamentals of distributed systems and databases.
- **[The CAP Theorem Explained](https://www.infoq.com/articles/cap-twelve-years-later-how-the-rules-have-changed/)** - A detailed discussion of the CAP theorem and its impact on distributed databases.
- **[Jepsen Blog](https://jepsen.io/)** - A blog documenting testing and analysis of distributed databases for safety and correctness.

## Community and Forums

- **[Reddit: r/Database](https://www.reddit.com/r/Database/)** - A community for discussions about databases, including distributed systems.
- **[Stack Overflow: Distributed Databases](https://stackoverflow.com/questions/tagged/distributed-database)** - A Q&A site for developers working on distributed databases.
- **[Discord: Distributed Systems](https://discord.gg/distributedsystems)** - A server for discussions about distributed systems and databases.
- **[Slack: Distributed Databases](https://distributed-databases.slack.com/)** - A Slack channel for real-time discussions about distributed databases.
- **[Database Community on Hacker News](https://news.ycombinator.com/)** - A forum for news and discussions about distributed databases and technology.

## Contribute

Contributions are welcome!

## License

[![CC0](https://mirrors.creativecommons.org/presskit/buttons/88x31/svg/by-sa.svg)](http://creativecommons.org/licenses/by-sa/4.0/)