You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A simple, distributed (Peer-to-Peer), in-memory database for the simple man.
This project is ideal for hobby AI projects that need a "hacky" way to store data across a small number of nodes.
Architecture
Using SQL over and over made me realize how boring it is (although "Boring is always Best!"). So instead of using it, we'll create a simple "Query System" from Rust's native syntax to define components of the database.
There's a little twist in the system as well... Instead of enforcing the type enforcement logic used in SQL (also in Rust too actually), we'll model ours from Python's dynamically typed nature. This means "columns" in an x3 "database" can have dynamic types that change when needed by the user.
I know it's stupid, I just wanted to have fun with this...!
Storage & Distribution
The best place to store data is the memory. It's fast, it's safe, ...
The biggest hurdle of this project would be the distribution logic. And the entire system will be bottlenecked by the network I/O component of it.
Features to add:
Auto-node identification (P2P auto-discovery)
"ObjectStore" and the "Object" model
Node "Memory management"
...
About
A simple, distributed, in-memory database for the simple man.