Comment

Comment by dveeden2

Other databases written in Go:

- TiDB by PingCAP

- Vitess by PlanetScale

Both are basically only the SQL part as TiDB uses TiKV (written in Rust) and Vitess uses MySQL.

For those who want to implement a database in Go but without having to implement a network protocol there is go-mysql, which allows you to do this: https://github.com/go-mysql-org/go-mysql/blob/master/cmd/go-... As demonstration I created a networked SQLite: https://github.com/dveeden/go-mysql-examples/blob/main/go-my...

Both TiDB and Vitess have parsers that can be used outside standalone. So if you only want to implement your own on disk format, this can help.

Note that I'm working for PingCAP on TiDB and I'm also a co-maintainer for go-mysql.

parent dveeden2 1 year ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton