This is a learning project and is not meant to be run in production environments.
This project is stil w.i.p.
PavoSQL is a SQL relational Database written in pure Go, meaning only using Go's standard library.
- Atomic backend store on single file
- Relational model build on KV Store
- Point queries
- Range queries
- Insert
- Delete
- Sorting
- Group By
- Joins
- Lexer and Parser for SQL queries
- Database server and client to use PavoSQL over the network
- User and privilege system
- Implement database/sql driver interface
- Database Management System in single directory
- Windows compatibilty of backend store (remain atomic)
- Documentation
- Installable as service/daemon (e.g. systemd)
- Create and release Docker image
- 80% Test coverage (not needed but nice to have)
Build your own Database from Scratch
by James Smith
Book
GoSQL / Writing a SQL database from Scratch
by Phil Eaton
Blog
Repo
SQLite Documentation
by SQLite
Docs