https://github.com/tudororban/kodasql
A Database Management System in Rust
https://github.com/tudororban/kodasql
database-management-system rust sql
Last synced: 2 months ago
JSON representation
A Database Management System in Rust
- Host: GitHub
- URL: https://github.com/tudororban/kodasql
- Owner: TudorOrban
- License: mit
- Created: 2024-02-13T13:04:47.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-14T09:40:32.000Z (almost 2 years ago)
- Last Synced: 2025-01-01T18:42:30.757Z (over 1 year ago)
- Topics: database-management-system, rust, sql
- Language: Rust
- Homepage:
- Size: 305 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
KodaSQL is a Relational Database Management System (RDBMS) in development, written in Rust. It sets up a tokio server and uses a custom network protocol that enables the client to interact with a csv-based database through a storage engine. The overall architecture is sketched in the following diagram, inspired by S. Pachev's excellent book [Understanding MySQL Internals](https://www.amazon.com/Understanding-MySQL-Internals-Discovering-Improving/dp/0596009577):

### Usage
1. Ensure you have Rust and `cargo` installed.
2. Fetch the repository and from the root run: `cargo build --release`, `cargo run --release`.
3. You can use the [basic_client](https://github.com/TudorOrban/KodaSQL/blob/main/examples/basic_client.rs) from examples to interact with your database from the CLI or build your own. Open a new terminal and run `cargo run --example basic_client`.
### Status
The project is in early stages and as such it has support for a limited range of SQL commands. However, the basic architecture is in place and adding new features will require minimal effort.