Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/krasun/gosqldb
A key-value persistent database that supports SQL queries over B+ and LSM trees
https://github.com/krasun/gosqldb
bplus-tree bplustree bptree databases key-value log-structured-merge-tree lsm lsm-tree
Last synced: 10 days ago
JSON representation
A key-value persistent database that supports SQL queries over B+ and LSM trees
- Host: GitHub
- URL: https://github.com/krasun/gosqldb
- Owner: krasun
- License: mit
- Created: 2021-03-25T07:36:14.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-01-09T12:35:20.000Z (almost 3 years ago)
- Last Synced: 2024-12-09T17:00:35.074Z (13 days ago)
- Topics: bplus-tree, bplustree, bptree, databases, key-value, log-structured-merge-tree, lsm, lsm-tree
- Language: Go
- Homepage:
- Size: 55.7 KB
- Stars: 27
- Watchers: 3
- Forks: 7
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# gosqldb
[![Build](https://github.com/krasun/gosqldb/actions/workflows/build.yml/badge.svg?branch=main)](https://github.com/krasun/gosqldb/actions/workflows/build.yml)
[![codecov](https://codecov.io/gh/krasun/gosqldb/branch/main/graph/badge.svg?token=8NU6LR4FQD)](https://codecov.io/gh/krasun/gosqldb)
[![Go Report Card](https://goreportcard.com/badge/github.com/krasun/gosqldb)](https://goreportcard.com/report/github.com/krasun/gosqldb)
[![GoDoc](https://godoc.org/https://godoc.org/github.com/krasun/gosqldb?status.svg)](https://godoc.org/github.com/krasun/gosqldb)**WORK IN PROGRESS**
`gosqldb` is a fully functional persistent database written in Go that supports different storage engines and simple SQL.
**It is not intended for production use**. The primary purpose of the database is to learn and experiment with different storage engines and database concepts.
The database consists of small parts like parsers and engines that are developed as isolated independent packages
that can be used separately:- [a simple SQL parser](https://github.com/krasun/gosqlparser) to execute queries against the database;
- [in-file B+ tree](https://github.com/krasun/fbptree);
- [LSM tree](https://github.com/krasun/lsmtree);
- [in-memory B+ tree](https://github.com/krasun/bptree).## Features
There is a set of features:
- [simple SQL](https://github.com/krasun/gosqlparser) to execute queries against the database;
- [in-file B+ tree](https://github.com/krasun/fbptree) storage engine;
- [LSM tree](https://github.com/krasun/lsmtree) storage engine;
- [in-memory B+ tree](https://github.com/krasun/bptree) storage engine;
- the code is structured and optimized for learning purposes.## Play
...
## License
**gosqldb** is released under [the MIT license](LICENSE).