btree
go-sql-builder-benchmarks
btree | go-sql-builder-benchmarks | |
---|---|---|
3 | 2 | |
18 | 4 | |
- | - | |
0.0 | 2.9 | |
almost 2 years ago | 9 months ago | |
Go | Go | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
btree
-
Do you use generics?
Generally when I feel like revisiting some CS staples and working out how to implement them idiomatically with generics. https://github.com/VictorLowther/btree is an example of this.
-
Immutable copy-on-write generic binary trees in Go
So, a couple of weeks ago, I wrote this. It does its job, and is pretty performant for what it is. However, I got to wondering how to make it work in an environment with many concurrent readers and a single writer. An rwmutex was too easy, so I decided to go ahead and make all tree modification copy-on-write instead. Turned out that it gets pretty acceptable performance with a couple of strategic performance optimizations.
- AVL balanced generic binary trees in Go
go-sql-builder-benchmarks
-
Do you use generics?
However, from my benchmarks, Bob is generally faster at query building than comparable packages see benchmarks. For the ORM portions, I'm still working on the benchmarks, but it seemed quite good in my initial tests.
-
TypeSQL: 2x Faster SQL Query builder with complete spec support.
Curiously, I decided to benchmark the performance against the currently popular and maintained query builders and it turned out to be generally 2x as fast. See Benchmarks.
What are some alternatives?
btree - BTree provides a simple, ordered, in-memory data structure for Go programs.
Squirrel - Fluent SQL generation for golang
graph - A library for creating generic graph data structures and modifying, analyzing, and visualizing them.
sqlx - general purpose extensions to golang's database/sql
GoLLRB - A Left-Leaning Red-Black (LLRB) implementation of balanced binary search trees for Google Go
dat - Go Postgres Data Access Toolkit
ibtree - Immutable generic balanced binary trees
sage - Trie data structure for storing and retrieving HTTP route values. Used for building Go HTTP router packages.
typesql - SQL Query Builder for Go
Mantis - Sphire Mantis is a broadly featured Go helper library with standalone packages
goqu - SQL builder and query library for golang