Announcing GlueSQL: SQL database fully written in Rust & WebAssembly support

GlueSQL is the new sql database that I am working on.

It is still in pretty early stage, but it supports basic SQL queries: aggregation, join and nested select.

Please take a look: https://github.com/gluesql/gluesql

Key features

In case of wasm, please try the Web Dashboard Demo: [https://gluesql.org/playground]

8 Likes

you mean "aggregation"?

1 Like

It would be awesome if queries are resolved in compile time and just call the database methods directly in the compiled code. It would be really fast

That depends on how much time any given DB spends on parsing and processing the query proper vs internal data lookups and mangling.

I know for small sql queries it wouldn't make any difference but parsing it in compile time atleast shows any syntactical error present in the query during compilation itself rather than finding it out during testing or even worse in production.

Thanks! I just fixed :slight_smile:

I think that's possible to do using some ways.
GlueSQL uses sqlparser-rs for SQL parser.

So may be something https://github.com/rust-lang-nursery/lazy-static.rs like approach can work? or...
is the main reason is for finding syntactical error present then run parser first and serialize using serde can also make sense.

I just ditched Sqlx (with sqlite) last night due to it not being pure rust. This is just what I needed.

Just to clarify the features I need, with Sled it'll generally function as a File/Folder based DB like sqlite?
And will it be able to handle things like CREATE TABLE IF NOT EXISTS

1 Like

Thanks :slight_smile:
Yes, using Sled you can expect something similar with SQLite.

And currently there's no IF NOT EXISTS support, but it is easy to add, I'll add to repo issue stack.

3 Likes

Good initiative! Just recently there was some thread where someone was claiming there was no dB fully written in Rust

1 Like

I was absolutely waiting for this.
I once used a basic thing called BoltDB in golang, and I think there's an implementation of that in rust too. But BoltDB is not much more than a key value ish store so not really an sqlite alrernative.

Great to know. I'll keep an eye on your repo.

1 Like