Go Database

Open-source Go projects categorized as Database

Top 23 Go Database Projects

  • prometheus

    The Prometheus monitoring system and time series database.

    Project mention: Install and Setup Grafana & Prometheus on Ubuntu 20.04 | 22.04/EC2 | dev.to | 2024-03-14

    wget https://github.com/prometheus/prometheus/releases/download/v2.46.0/prometheus-2.46.0.linux-amd64.tar.gz

  • etcd

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

    Project mention: Oracle Linux 8.8'de PostgreSQL 13 Yedekli Yapı Nasıl Kurulur? - Patroni, ETCD, HAProxy | dev.to | 2023-12-07

    sudo dnf -y install curl wget vim ETCD_RELEASE=$(curl -s https://api.github.com/repos/etcd-io/etcd/releases/latest|grep tag_name | cut -d '"' -f 4) echo $ETCD_RELEASE wget https://github.com/etcd-io/etcd/releases/download/${ETCD_RELEASE}/etcd-${ETCD_RELEASE}-linux-amd64.tar.gz tar xvf etcd-${ETCD_RELEASE}-linux-amd64.tar.gz cd etcd-${ETCD_RELEASE}-linux-amd64 sudo mv etcd* /usr/local/bin ls /usr/local/bin /usr/local/bin/etcd --version

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • tidb

    TiDB is an open-source, cloud-native, distributed, MySQL-Compatible database for elastic scale and real-time analytics. Try AI-powered Chat2Query free at : https://tidbcloud.com/free-trial

    Project mention: Show HN: GitHub Organization Analytics | news.ycombinator.com | 2023-10-25

    It's MySQL-Compatible database for scale and real-time analytics https://github.com/pingcap/tidb

  • cockroach

    CockroachDB - the open source, cloud-native distributed SQL database.

    Project mention: No More Free Tier on PlanetScale, Here Are Free Alternatives | dev.to | 2024-03-08

    CockroachDB - SQL

  • Milvus

    A cloud-native vector database, storage for next generation AI applications

    Project mention: Milvus VS pgvecto.rs - a user suggested alternative | libhunt.com/r/milvus | 2024-03-13
  • dgraph

    The high-performance database for modern applications

    Project mention: DGraph – GraphQL Database | news.ycombinator.com | 2024-03-12
  • jaeger

    CNCF Jaeger, a Distributed Tracing Platform

    Project mention: Observability with OpenTelemetry, Jaeger and Rails | dev.to | 2024-02-22

    Jaeger maps the flow of requests and data as they traverse a distributed system. These requests may make calls to multiple services, which may introduce their own delays or errors. https://www.jaegertracing.io/

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • vitess

    Vitess is a database clustering system for horizontal scaling of MySQL.

    Project mention: The challenges of supporting foreign key constraints | news.ycombinator.com | 2023-12-05

    Thank you for the compliment!

    We recently started adding support for CTEs in Vitess! You can check out https://github.com/vitessio/vitess/pull/14321 if you want to see some technical details of the implementation.

    For now, we have added preliminary support by converting them to derived tables internally, but we believe that we need to make CTEs first-class citizens themselves of query planning. Once we make that change, we can look towards supporting recursive CTEs.

    This however will take some time, but then, all good things do!

  • dolt

    Dolt – Git for Data

    Project mention: What I Talk About When I Talk About Query Optimizer (Part 1): IR Design | news.ycombinator.com | 2024-01-29

    We implemented a query optimizer with a flexible intermediate representation in pure Go:

    https://github.com/dolthub/go-mysql-server

    Getting the IR correct so that it's both easy to use and flexible enough to be useful is a really interesting design challenge. Our primary abstraction in the query plan is called a Node, and is way more general than the IR type described in the article from OP. This has probably hurt us: we only recently separated the responsibility to fetch rows into its own part of the runtime, out of the IR -- originally row fetching was coupled to the Node type directly.

    This is also the query engine that Dolt uses:

    https://github.com/dolthub/dolt

    But it has a plug-in architecture, so you can use the engine on any data source that implements a handful of Go interface.

  • rqlite

    The lightweight, distributed relational database built on SQLite.

    Project mention: The lightweight, easy-to-use, distributed relational database built on SQLite | news.ycombinator.com | 2024-02-23
  • TinyGo

    Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.

    Project mention: Gokrazy – Go Appliances | news.ycombinator.com | 2023-12-18
  • go-sql-driver/mysql

    Go MySQL Driver is a MySQL driver for Go's (golang) database/sql package (by go-sql-driver)

    Project mention: Tools besides Go for a newbie | /r/golang | 2023-03-26

    IDE: use whatever make you productive. I personally use vscode. VCS: git, as golang communities use github heavily as base for many libraries. AFAIK Linter: use staticcheck for linting as it looks like mostly used linting tool in go, supported by many also. In Vscode it will be recommended once you install go plugin. Libraries/Framework: actually the standard libraries already included many things you need, decent enough for your day-to-day development cycles(e.g. `net/http`). But here are things for extra: - Struct fields validator: validator - Http server lib: chi router , httprouter , fasthttp (for non standard http implementations, but fast) - Web Framework: echo , gin , fiber , beego , etc - Http client lib: most already covered by stdlib(net/http), so you rarely need extra lib for this, but if you really need some are: resty - CLI: cobra - Config: godotenv , viper - DB Drivers: sqlx , postgre , sqlite , mysql - nosql: redis , mongodb , elasticsearch - ORM: gorm , entgo , sqlc(codegen) - JS Transpiler: gopherjs - GUI: fyne - grpc: grpc - logging: zerolog - test: testify , gomock , dockertest - and many others you can find here

  • migrate

    Database migrations. CLI and Golang library.

    Project mention: How to use SQLC with Golang | dev.to | 2024-01-03

    $ curl -L https://github.com/golang-migrate/migrate/releases/download/$version/migrate.$os-$arch.tar.gz | tar xvz

  • badger

    Fast key-value DB in Go.

    Project mention: Anytype helper crashed | /r/Anytype | 2023-12-09

    github.com/dgraph-io/badger/v3/table.OpenTable(0xc000bb4000, {0x0, 0x1, 0x200000, 0x0, 0x0, 0x3f847ae147ae147b, 0x1000, 0x0, 0x0, ...})

  • groupcache

    groupcache is a caching and cache-filling library, intended as a replacement for memcached in many cases.

    Project mention: [imcache] A generic in-memory cache Go library. Feedback appreciated. | /r/golang | 2023-04-09
  • VictoriaMetrics

    VictoriaMetrics: fast, cost-effective monitoring solution and time series database

    Project mention: All you need is Wide Events, not "Metrics, Logs and Traces" | news.ycombinator.com | 2024-02-27
  • sqlc

    Generate type-safe code from SQL

    Project mention: Give Up Sooner | dev.to | 2024-03-13

    "Is there a way to get sqlc to use pointers for nullable columns instead of the sql.Null types?"

  • bytebase

    The GitLab/GitHub for database DevOps. World's most advanced database DevOps and CI/CD for Developer, DBA and Platform Engineering teams.

    Project mention: Resend – Incident report for February 21st, 2024 | news.ycombinator.com | 2024-02-23

    We have been working on bytebase (https://github.com/bytebase/bytebase) for 3+ years to address this. With a change review workflow, environment propagations, and try not to disturb the dev flow if possible.

  • Tile38

    Real-time Geospatial and Geofencing

    Project mention: Show HN: TG – Fast geometry library in C | news.ycombinator.com | 2023-09-22

    [2] https://github.com/tidwall/tile38

  • go-clean-arch

    Go (Golang) Clean Architecture based on Reading Uncle Bob's Clean Architecture

  • usql

    Universal command-line interface for SQL databases

    Project mention: xo/usql: Universal command-line interface for SQL databases | /r/devel | 2023-06-08
  • immudb

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

    Project mention: Ask HN: What is your experience of tamper proof systems? | news.ycombinator.com | 2024-01-05
  • FerretDB

    A truly Open Source MongoDB alternative

    Project mention: Figma's Databases team lived to tell the scale | news.ycombinator.com | 2024-03-14

    if you have postgres, just use https://github.com/FerretDB/FerretDB

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

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 2024-03-14.

Go Database related posts

Index

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

Project Stars
1 prometheus 52,168
2 etcd 45,943
3 tidb 35,879
4 cockroach 28,797
5 Milvus 25,955
6 dgraph 19,958
7 jaeger 19,209
8 vitess 17,627
9 dolt 16,610
10 rqlite 14,703
11 TinyGo 14,284
12 go-sql-driver/mysql 14,061
13 migrate 13,672
14 badger 13,231
15 groupcache 12,657
16 VictoriaMetrics 10,582
17 sqlc 10,445
18 bytebase 9,722
19 Tile38 8,859
20 go-clean-arch 8,562
21 usql 8,529
22 immudb 8,450
23 FerretDB 8,349
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com