A simple yet powerful distributed key-value store database with features like replication, sharding, and fault tolerance. This project explores distributed systems concepts, networking, and advanced concurrency patterns in Go.
Table of Contents About the Project Key Features Getting Started Usage Examples Tech Stack Project Roadmap Contributing License Contact
Motivation: Explain why you built this project and any specific problem it solves.
Overview: Briefly outline what this project does, how it stands out, and any unique approaches or techniques used.
Use Cases: - Example 1 - Example 2
- Hybrid storage support: In-Memory and Disk Persistence
- Use LSM tree to model data
- TTL Support
- Batching and Atomic Operations support
- Snapshotting for Faster Recovery
- Concurrency Control with Optimistic Locking
To start using NexusDB, install Go 1.23 or above. NexusDB needs go modules. From your project, run the following command
$ go get github.com/imariom/nexusdb
This will retrieve the library.
NexusDB provides a CLI tool which can perform certain operations like offline backup/restore. To install the NexusDB CLI, retrieve the repository and checkout the desired version. Then run
$ cd nexusc
$ go install .
This will install the NexusDB command line utility into your $GOBIN path.
Languages: Python, JavaScript, etc. Frameworks: Django, React, Flask, etc. Libraries/Tools: BeautifulSoup, TensorFlow, Docker, etc.
A list of any upcoming features or improvements planned for the project.
Initial setup Feature enhancements Documentation updates Future plans (if any)
Contributions are welcome! If you'd like to collaborate, please:
- Fork the repository.
- Create your feature branch (
git checkout -b feature/YourFeature
). - Commit your changes (
git commit -m 'Add YourFeature'
). - Push to the branch (
git push origin feature/YourFeature
). - Open a Pull Request.
Distributed under the MIT License. See LICENSE
for more information.
Mário Moiane - [email protected]
- Please visit my website
- Please use Github issues for filing bugs.
- Please follow me on Twitter @__mrokok.
- LinkedIn Profile Mário Moiane