Skip to content

gKits/pavosql

Repository files navigation

PavoSQL

License: MIT Build Test Build Hugo docs and deploy to pages

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.

Roadmap

  • 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)

Reference material

Build your own Database from Scratch
by James Smith
Book

GoSQL / Writing a SQL database from Scratch
by Phil Eaton
Blog
Repo

Lexical Scanning in Go
by Rob Pike
Video
Slides

SQLite Documentation
by SQLite
Docs

About

A simple SQL database written in pure Go.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages