Go Key-Value

Open-source Go projects categorized as Key-Value | Edit details

Top 16 Go Key-Value Projects

  • GitHub repo etcd

    Distributed reliable key-value store for the most critical data of a distributed system

    Project mention: Context in struct | reddit.com/r/golang | 2022-01-21

    See https://github.com/etcd-io/etcd/issues/12124 for an example how they broke etcd, by renaming a package in thier code.

  • GitHub repo badger

    Fast key-value DB in Go.

    Project mention: Embedded write-heavy on-disk cache, write-amplification | reddit.com/r/golang | 2022-01-06

    At the time we have selected it, we have compared it with BoltDB but that completely failed to fit the bill as it had abysmal write performance. I recall we've also compared it with BadgerDB, but at the time the latter was in its infancy so we had to rule it out.\ These days I'd recommend to give it a close look.

  • SonarLint

    Deliver Cleaner and Safer Code - Right in Your IDE of Choice!. SonarLint is a free and open source IDE extension that identifies and catches bugs and vulnerabilities as you code, directly in the IDE. Install from your favorite IDE marketplace today.

  • GitHub repo immudb

    immudb - immutable database based on zero trust, SQL and Key-Value, tamperproof, data change history

    Project mention: immudb v1.2.2 released - open source immutable database written in golang | reddit.com/r/golang | 2022-01-21
  • GitHub repo buntdb

    BuntDB is an embeddable, in-memory key/value database for Go with custom indexing and geospatial support

    Project mention: Path hints for B-trees can bring a performance increase of 150% – 300% | news.ycombinator.com | 2021-07-30

    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

  • GitHub repo rosedb

    🚀A fast, stable and embedded k-v storage in pure Golang, supports string, list, hash, set, sorted set. 一个 Go 语言实现的快速、稳定、内嵌的 k-v 存储引擎。

  • GitHub repo Olric

    Distributed cache and in-memory key/value data store. It can be used both as an embedded Go library and as a language-independent service.

    Project mention: Olric | reddit.com/r/devopspro | 2021-12-11
  • GitHub repo nutsdb

    A simple, fast, embeddable, persistent key/value store written in pure Go. It supports fully serializable transactions and many data structures such as list, set, sorted set.

    Project mention: NutsDB v0.6.0 release,Add PrefixSearchScan() with regexp search ability and more | reddit.com/r/golang | 2021-03-21

    See https://github.com/xujiajun/nutsdb for detail.

  • OPS

    OPS - Build and Run Open Source Unikernels. Quickly and easily build and deploy open source unikernels in tens of seconds. Deploy in any language to any cloud.

  • GitHub repo pogreb

    Embedded key-value store for read-heavy workloads written in Go

    Project mention: Recommendation for Key/Value storage | reddit.com/r/golang | 2021-12-29

    I will agree with built in maps, badger, and bbolt as previously mentioned. Some unique cases require that you do many read. Take a look at the design of https://github.com/akrylysov/pogreb.

  • GitHub repo gokv

    Simple key-value store abstraction and implementations for Go (Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB and many more)

  • GitHub repo go-mcache

    Fast in-memory key:value store/cache with TTL

  • GitHub repo microblob

    Serve millions of JSON documents via HTTP.

    Project mention: Search 1B pages on AWS S3 for | news.ycombinator.com | 2021-05-07

    Combining data-at-rest with some slim index structure coupled with a common access method (like HTTP) was the idea behind a tool a key-value store for JSON I once wrote: https://github.com/miku/microblob

    I first thought of building a custom index structure, but found that I did not need everything in memory all the time. Using an embedded leveldb works just fine.

  • GitHub repo redhub

    High-performance Redis-Server multi-threaded framework, based on rawepoll model.

    Project mention: RedHub: A simple framework for Redis server, pure fun | news.ycombinator.com | 2021-10-19
  • GitHub repo hedge

    A distributed systems library for Kubernetes deployments built on top of spindle and Cloud Spanner.

    Project mention: GitHub - flowerinthenight/hedge: A simple distributed systems library for Kubernetes deployments. | reddit.com/r/golang | 2021-10-03
  • GitHub repo AmnesiaDB

    Multithreaded key value pair store using thread safe locking mechanism allowing concurrent reads

    Project mention: Looking for contributors for AmnesiaDB a open source in memory key value pair DB | reddit.com/r/github | 2021-09-19

    Amnesia DB: https://github.com/NikhilCodes/AmnesiaDB

  • GitHub repo gobigdis

    GoBigdis is a persistent database that implements the Redis server protocol. Any Redis client can interface with it and start to use it right away.

    Project mention: Show HN: GoBigdis, a persistent database implementing the Redis server protocol | news.ycombinator.com | 2021-07-01
  • GitHub repo vkv

    recursively list secrets from Vaults KV2 engine

    Project mention: Directory Structure of Vault Paths | reddit.com/r/hashicorp | 2021-12-02

    This might help: https://github.com/FalcoSuessgott/vkv

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2022-01-21.

Go Key-Value related posts


What are some of the best open-source Key-Value projects in Go? This list will help you:

Project Stars
1 etcd 38,543
2 badger 10,274
3 immudb 6,926
4 buntdb 3,624
5 rosedb 2,213
6 Olric 2,085
7 nutsdb 1,848
8 pogreb 856
9 gokv 390
10 go-mcache 74
11 microblob 60
12 redhub 48
13 hedge 21
14 AmnesiaDB 5
15 gobigdis 4
16 vkv 3
Find remote jobs at our new job board 99remotejobs.com. There are 29 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
Less time debugging, more time building
Scout APM allows you to find and fix performance issues with no hassle. Now with error monitoring and external services monitoring, Scout is a developer's best friend when it comes to application development.