https://github.com/chiselstrike/chiselstore
SQLite + Little Raft = 🚀
https://github.com/chiselstrike/chiselstore
database distributed-database raft rust sqlite
Last synced: 10 days ago
JSON representation
SQLite + Little Raft = 🚀
- Host: GitHub
- URL: https://github.com/chiselstrike/chiselstore
- Owner: chiselstrike
- License: mit
- Created: 2021-11-12T16:06:47.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-09-02T09:54:15.000Z (over 2 years ago)
- Last Synced: 2025-03-28T11:19:26.872Z (17 days ago)
- Topics: database, distributed-database, raft, rust, sqlite
- Language: Rust
- Homepage:
- Size: 43 KB
- Stars: 577
- Watchers: 16
- Forks: 31
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-decentralized-database - ChiselStore - ChiselStore is an embeddable, distributed SQLite for Rust, powered by Little Raft. (Relational Databases / Raft)
README
# ChiselStore
[](https://github.com/chiselstrike/chiselstore/actions/workflows/rust.yml)
[](./LICENSE)ChiselStore is an embeddable, distributed [SQLite](https://www.sqlite.org/index.html) for Rust, powered by [Little Raft](https://github.com/andreev-io/little-raft).
SQLite is a fast and compact relational database management system, but it is limited to single-node configurations.
ChiselStore extends SQLite to run on a cluster of machines with the [Raft consensus algorithm](https://raft.github.io).
With ChiselStore, you get the benefits of easy-to-use, embeddable SQLite but with Raft's high availability and fault tolerance.For more information, check out the following [blog post](https://glaubercosta-11125.medium.com/winds-of-change-in-web-data-728187331f53).
## Features
* SQLite with Raft's high availability and fault tolerance
* Strong consistency with optional relaxed reads
* Embeddable Rust library### Roadmap
* Efficient node restarts (with Raft snapshots)
* Dynamic cluster membership (with Raft joint consensus)
* Support executing non-deterministic SQL functions## Getting Started
See the [example server](core/examples) of how to use the ChiselStore library.
## License
This project is licensed under the [MIT license](LICENSE).
### Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted
for inclusion in ChiselStore by you, shall be licensed as MIT, without any additional
terms or conditions.