
The Best Go Libraries For Database (148)
Discover the best Go libraries for Database! Find the perfect tools to streamline your development and boost productivity. From gdcache to sqrl, we've got you covered. Let the coding begin!
gdcache
A pure non-intrusive cache library implemented by golang, you can use it to implement your own distributed cache
sqrl
SQL query builder, fork of Squirrel with improved performance
Squirrel
Go library that helps you build SQL queries
go-cache
A flexible multi-layer Go caching library to deal with in-memory and shared cache by adopting Cache-Aside pattern
Vasto
A distributed high-performance key-value store. On Disk. Eventual consistent. HA. Able to grow or shrink without service interruption
xo
Generate idiomatic Go code for databases based on existing schema definitions or custom queries supporting PostgreSQL, MySQL, SQLite, Oracle, and Microsoft SQL Server
bcache
Eventually consistent distributed in-memory cache Go library
BigCache
Efficient key/value cache for gigabytes of data
VictoriaMetrics
fast, resource-effective and scalable open source time series database. May be used as long-term remote storage for Prometheus. Supports PromQL
2q
2Q in-memory cache implementation.
cache
In-memory key:value store with expiration time, 0 dependencies, <100 LoC, 100% coverage.
clusteredBigCache
BigCache with clustering support and individual item expiration
coherence-go-client
Full implementation of Oracle Coherence cache API for Go applications using gRPC as network transport
EchoVault
Embeddable Distributed in-memory data store compatible with Redis clients
fastcache
fast thread-safe inmemory cache for big number of entries. Minimizes GC overhead
GCache
Cache library with support for expirable Cache, LFU, LRU and ARC
gocache
A complete Go cache library with multiple stores (memory, memcache, redis, ...), chainable, loadable, metrics cache and more
groupcache
Groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases
icache
A High Performance, Generic, thread-safe, zero-dependency cache package
imcache
A generic in-memory cache Go library. It supports expiration, sliding expiration, max entries limit, eviction callbacks and sharding
nscache
A Go caching framework that supports multiple data source drivers
otter
A high performance lockless cache for Go. Many times faster than Ristretto and friends
theine
High performance, near optimal in-memory cache with proactive TTL expiration and generics
remember-go
A universal interface for caching slow database queries (backed by redis, memcached, ristretto, or in-memory).
sturdyc
A caching library with advanced concurrency features designed to make I/O heavy applications robust and highly performant.
timedmap
Map with expiring key-value pairs
ttlcache
An in-memory cache with item expiration and generics
atlas
A Database Toolkit. A CLI designed to help companies better work with their data
avro
Discover SQL schemas and convert them to AVRO schemas. Query SQL records into AVRO bytes
bytebase
Safe database schema change and version control for DevOps teams
darwin
Database schema evolution library for Go
bbolt
An embedded key/value database for Go
clover
A lightweight document-oriented NoSQL database written in pure Golang
Bitcask
Bitcask is an embeddable, persistent and fast key-value (KV) database written in pure Go with predictable read/write performance, low latency and high throughput thanks to the bitcask on-disk layout (LSM+WAL).
cockroach
Scalable, Geo-Replicated, Transactional Datastore
Coffer
Simple ACID key-value database that supports transactions
column
High-performance, columnar, embeddable in-memory store with bitmap indexing and transactions
CovenantSQL
CovenantSQL is a SQL database on blockchain
dgraph
Scalable, Distributed, Low Latency, High Throughput Graph Database
diskv
Home-grown disk-backed key-value store
dolt
Dolt โ It's Git for Data
eliasdb
Dependency-free, transactional graph database with REST API, phrase search and SQL-like query language
godis
A Golang implemented high-performance Redis server and cluster
dbmate
A lightweight, framework-agnostic database migration tool
dtf
A distributed transaction manager. Support XA, TCC, SAGA, Reliable Messages.
hare
A simple database management system that stores each table as a text file of line-delimited JSON
immudb
immudb is a lightweight, high-speed immutable database for systems and applications written in Go
influxdb
Scalable datastore for metrics, events, and real-time analytics
ledisdb
Ledisdb is a high performance NoSQL like Redis based on LevelDB
levigo
Levigo is a Go wrapper for LevelDB
libradb
LibraDB is a simple database with less than 1000 lines of code for learning
LinDB
LinDB is a scalable, high performance, high availability distributed time series database
skeema
Pure-SQL schema management system for MySQL, with support for sharding and external online schema change tools
sql-migrate
Database migration tool. Allows embedding migrations into the application using go-bindata
sqlize
Database migration generator. Allows generate sql migration from model and existing sql by differ them
Milvus
Milvus is a vector database for embedding management, analytics and search
moss
Moss is a simple LSM key-value storage engine written in 100% Go
nutsdb
Nutsdb is 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
objectbox-go
High-performance embedded Object Database (NoSQL) with Go API
pebble
RocksDB/LevelDB inspired key-value database in Go
piladb
Lightweight RESTful database engine based on stack data structures
pogreb
Embedded key-value store for read-heavy workloads
prometheus
Monitoring system and time series database
pudge
Fast and simple key/value store written using Go's standard library
rosedb
An embedded k-v database based on LSM+WAL, supports string, list, hash, set, zset
rotom
A tiny Redis server built with Golang, compatible with RESP protocols
rqlite
The lightweight, distributed, relational database built on SQLite
tidb
TiDB is a distributed SQL database. Inspired by the design of Google F1
tiedot
Your NoSQL database powered by Golang
unitdb
Fast timeseries database for IoT, realtime messaging applications. Access unitdb with pubsub over tcp or websocket using github.com/unit-io/unitd application
go-pg-migrations
A Go package to help write migrations with go-pg/pg
goavro
A Go package that encodes and decodes Avro data
godfish
Database migration manager, works with native query language. Support for cassandra, mysql, postgres, sqlite3
goose
Database migration tool. You can manage your database's evolution by creating incremental SQL or Go scripts
gormigrate
Database schema migration helper for Gorm ORM
libschema
Define your migrations separately in each library. Migrations for open source libraries. MySQL & PostgreSQL
migrate
Database migrations. CLI and Golang library
migrator
Dead simple Go database migration library
migrator
MySQL database migrator designed to run migrations to your features and manage database schema update with intuitive go code
schema
Library to embed schema migrations for database/sql-compatible databases inside your Go binaries
clickhouse-bulk
Collects small inserts and sends big requests to ClickHouse servers
dbbench
Database benchmarking tool with support for several databases and scripts
dg
A fast data generator that produces CSV files from generated relational data
dynago
Simplify working with AWS DynamoDB.
gatewayd
Cloud-native database gateway and framework for building data-driven applications. Like API gateways, for databases
go-mysql
Go toolset to handle MySQL protocol and replication
gorm-multitenancy
Multi-tenancy support for GORM managed databases
octillery
Go package for sharding databases ( Supports every ORM or raw SQL )
onedump
Database backup from different drivers to different destinations with one command and configuration
pg_timetable
Advanced scheduling for PostgreSQL
pgweb
Web-based PostgreSQL database browser
pREST
Simplify and accelerate development, โก instant, realtime, high-performance on any Postgres application, existing or new
rdb
Redis RDB file parser for secondary development and memory analysis
wescale
WeScale is a database proxy designed to enhance the scalability, performance, security, and resilience of your applications
bqb
Lightweight and easy to learn query builder
buildsqlx
Go database query builder library for PostgreSQL
dbq
Zero boilerplate database operations for Go
Dotsql
Go library that helps you keep sql files in one place and use them with ease
gendry
Non-invasive SQL builder and powerful data binder
sqlf
Fast SQL query builder
goqu
Idiomatic SQL builder and query library
Hotcoal
Secure your handcrafted SQL against injection
igor
Abstraction layer for PostgreSQL that supports advanced functionality and uses gorm-like syntax
jet
Framework for writing type-safe SQL queries in Go, with ability to easily convert database query result into desired arbitrary object structure
ormlite
Lightweight package containing some ORM-like features and helpers for sqlite databases
ozzo-dbx
Powerful data retrieval methods as well as DB-agnostic query building capabilities
qry
Tool that generates constants from files with raw SQL queries
sg
A SQL Gen for generating standard SQLs(supports: CRUD) written in Go
sq
Type-safe SQL builder and struct mapper for Go
sqlingo
A lightweight DSL to build SQL in Go
cache2go
In-memory key:value cache which supports automatic invalidation based on timeouts
cachego
Golang Cache component for multiple drivers
couchcache
RESTful caching micro-service backed by Couchbase server
gocache
A data race free Go ache library with high performance and auto pruge functionality
ttlcache
In-memory key value storage with TTL for each record
goleveldb
Implementation of the [LevelDB](https://github.com/google/leveldb) key/value database in Go
lotusdb
Fast k/v database compatible with lsm and b+tree
tempdb
Key-value store for temporary items
go-fixtures
Django style fixtures for Golang's excellent built-in database/sql library
go-pg-migrate
CLI-friendly package for go-pg migrations management
gorm-seeder
Simple database seeder for Gorm ORM
chproxy
HTTP proxy for ClickHouse database
prep
Use prepared SQL statements without changing your code
rwdb
rwdb provides read replica capability for multiple database servers setup
builq
Easily build SQL queries in Go
gosql
SQL Query builder with better null values support
sqlc
Generate type-safe code from SQL
go-gcache
The generic version of `GCache`, cache support for expirable Cache, LFU, LRU and ARC
go-mcache
Fast in-memory key:value store/cache library. Pointer caches
jetcache-go
Unified Go cache library supporting multi-level caching
pocache
Pocache is a minimal cache package which focuses on a preemptive optimistic caching strategy
ristretto
A high performance memory-bound Go cache
sturdyc
A caching library with advanced concurrency features designed to make I/O heavy applications robust and highly performant
badger
Fast key-value store in Go
buntdb
Fast, embeddable, in-memory key/value database for Go with custom indexing and spatial support
Databunker
Personally identifiable information (PII) storage service built to comply with GDPR and CCPA
NoKV
High-performance distributed KV storage based on LSM Tree
redka
Redis re-implemented with SQLite
minisql
Embedded single file SQL database
soda
Database migration, creation, ORM, etc... for MySQL, PostgreSQL, and SQLite
database-gateway
Running SQL in production with ACLs, logs, and shared links
GoSQLX
High-performance SQL parser, formatter, linter, and security scanner with multi-dialect support and WASM playground
vitess
vitess provides servers and tools which facilitate scaling of MySQL databases for large scale web services
godbal
Database Abstraction Layer (dbal) for go. Support SQL builder and get result easily
obreron
Fast and cheap SQL builder which does only one thing, SQL building
patcher
Powerful SQL Query builder that automatically generates SQL queries from structs
relica
Type-safe database query builder with zero production dependencies, LRU statement cache, batch operations, and support for JOINs, subqueries, CTEs, and window functions
DiceDB
An open-source, fast, reactive, in-memory database optimized for modern hardware. Higher throughput and lower median latencies, making it ideal for modern workloads