SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Go Database Projects
-
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
-
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
It's MySQL-Compatible database for scale and real-time analytics https://github.com/pingcap/tidb
-
CockroachDB - SQL
-
Project mention: Milvus VS pgvecto.rs - a user suggested alternative | libhunt.com/r/milvus | 2024-03-13
-
-
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.
-
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!
-
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.
-
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.
-
go-sql-driver/mysql
Go MySQL Driver is a MySQL driver for Go's (golang) database/sql package (by go-sql-driver)
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
-
$ curl -L https://github.com/golang-migrate/migrate/releases/download/$version/migrate.$os-$arch.tar.gz | tar xvz
-
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 -
Project mention: All you need is Wide Events, not "Metrics, Logs and Traces" | news.ycombinator.com | 2024-02-27
-
"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-23We 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.
-
-
-
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 -
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
Go Database related posts
- Parsing the Postgres protocol – logging executed statements
- Install and Setup Grafana & Prometheus on Ubuntu 20.04 | 22.04/EC2
-
Milvus VS pgvecto.rs - a user suggested alternative
2 projects | 13 Mar 2024
- Give Up Sooner
- DGraph – GraphQL Database
- No More Free Tier on PlanetScale, Here Are Free Alternatives
- The lightweight, easy-to-use, distributed relational database built on SQLite
-
A note from our sponsor - SaaSHub
www.saashub.com | 18 Mar 2024
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 |