go-memdb
Golang in-memory database built on immutable radix trees (by hashicorp)
buntdb
BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support (by tidwall)
go-memdb | buntdb | |
---|---|---|
3 | 7 | |
3,259 | 4,659 | |
0.6% | 0.6% | |
3.7 | 3.9 | |
8 days ago | 6 months ago | |
Go | Go | |
Mozilla Public License 2.0 | MIT License |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.
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.
go-memdb
Posts with mentions or reviews of go-memdb.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-03-30.
-
I created an in-memory SQL database called MemSQL as a learning project
For another in-memory database example, you could also check out https://github.com/hashicorp/go-memdb, but it's based on a radix tree implementation.
-
Why use a real K/V database over a MapStore?
I just think its a glorified map. Yeah, for example go-memdb list some of its advantages in their https://github.com/hashicorp/go-memdb/blob/master/README.md README. But it is not clear whether you gain any performance gain over a map except for avoiding the locking as explained.
-
An Unlikely Database Migration
>So we invested what probably amounts to two or three weeks of engineering time into designing in-memory indexes that are transactionally consistent
I'll be interested to see that part if it does get open sourced. I've used https://github.com/hashicorp/go-memdb which sounds similar.
buntdb
Posts with mentions or reviews of buntdb.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-07-15.
- PostgreSQL: No More Vacuum, No More Bloat
-
Is there a nice embedded json db, like PoloDB (Rust) for Golang
https://github.com/tidwall/buntdb -> i think this one you might want
-
Open Source Databases in Go
buntdb - Fast, embeddable, in-memory key/value database for Go with custom indexing and spatial support.
-
Alternative to MongoDB?
BuntDB for NoSQL
-
Path hints for B-trees can bring a performance increase of 150% – 300%
BuntDB [0] from @tidwall uses this package as a backing data structure. And BuntDB is in turn used by Tile38 [1]
[0] https://github.com/tidwall/buntdb
- The start of my journey learning Go. Any tips/suggestions would greatly appreciated!
-
In-memory caching solutions
I've used BuntDB and had a great experience with it. It's basically just a JSON-based key-value store. I'm a huge fan of the developers other work (sjson, gjson, jj, etc) and stumbled on it while looking for a simple, embedded DB solution. It's not specifically a cache, though--just a simple DB, so you'd have to write the caching logic yourself.
What are some alternatives?
When comparing go-memdb and buntdb you can also consider the following projects:
dbbench - 🏋️ dbbench is a simple database benchmarking tool which supports several databases and own scripts
badger - Fast key-value DB in Go.
go-cache - An in-memory key:value store/cache (similar to Memcached) library for Go, suitable for single-machine applications.
bolt
ledisdb - A high performance NoSQL Database Server powered by Go