pavosql
pavosql is my best shot at programming a full fledged sql database using go.
learning material#
here is some learning material i used to get more familiar with the ins and outs of sql databases.
-
build your own database from scratch - james smith
this was the most helpful resource since it is a step by step guide to creating a database in go. it explains everything from the base b+tree structure to atomic i/o and more. -
writing a sql database from scratch - phil eaton this blog and its source code are great resource for learning about sql parsing and the high level sql struct.
-
lexical scanning in go - rob pike this is a great talk held by the legendary rob pike. it teaches general principles and best practices about lexical scanning go. it has helped me a lot with implementing the lexer and parser of pavosql. you can get the slides here.
-
sqlite documentation - sqlite the sqlite documentation is really vast and extensive. there is a lot of technical knowledge to get inspired by.
check out the source code on github