708 Resources
Golang distributed-database Libraries
A db proxy for distributed transaction, read write splitting and sharding! Support any language! It can be deployed as a sidecar in a pod.
DBPack DBPack means a database cluster tool pack. It can be deployed as a sidecar in a pod, it shields complex basic logic, so that business developme
Simple HTTP/HTTPS proxy - designed to be distributed as a self-contained binary that can be dropped in anywhere and run.
Simple Proxy This is a simple HTTP/HTTPS proxy - designed to be distributed as a self-contained binary that can be dropped in anywhere and run. Code b
Add, remove, and manage different versions of web-distributed software binaries. No elevated permissions required!
A cross-platform package manager for the web! Add, remove, and manage different versions of web-distributed software binaries. No elevated permissions
Kalasa is a NoSQL database and provides more data structures for ease of use.
Kalasa Kalasa is a NoSQL database and provides more data structures for ease of use. 简体中文 | English 特 性 嵌入的存储引擎 数据可以加密存储 可以自定义实现存储加密器 即使数据文件被拷贝,也保证存储数
A lightweight document-oriented NoSQL database written in pure Golang.
Lightweight document-oriented NoSQL Database 🇬🇧 English | 🇨🇳 简体中文 | 🇪🇸 Spanish CloverDB is a lightweight NoSQL database designed for being simpl
Advanced benchmarks for +15 Go ORMs.
Go ORM Benchmarks Advanced benchmarks for +10 Go ORMs. Originally forked from orm-benchmark. ORMs All package run in no-cache mode. beego/orm bun gorm
Ready to deploy, distributed cryptocurrency trading bot
HyperTrade Ready to deploy, distributed cryptocurrency trading bot. USE THIS SOFTWARE AT YOUR OWN RISK. THE AUTHOR ASSUMES NO LIABILITY FOR YOUR TRADI
MIT 6.824: Distributed Systems (Spring 2020)
MIT6.824 MIT 6.824: Distributed Systems (Spring 2020) Lab 1 Lab 2 Lab 2A Lab 2B Lab 2C Lab 2D Lab 3 Lab 3A Lab 3B Lab 4 Lab 4A Lab 4B Lab 4 Challenge
Tigris is a modern, scalable backend for building real-time websites and apps.
Tigris Data Getting started These instructions will get you through setting up Tigris Data locally as Docker containers. Prerequisites Make sure that
Google Cloud Spanner driver for Go's database/sql package.
go-sql-spanner Google Cloud Spanner driver for Go's database/sql package. This support is currently in the Preview release status. import _ "github.co
Tasqueue is a simple, lightweight distributed job/worker implementation in Go
Tasqueue Tasqueue is a simple, lightweight distributed job/worker implementation in Go Concepts tasqueue.Broker is a generic interface that provides m
Minicache - Distributed cache implemented in Go. Like Redis but simpler.
Distributed cache with client-side consistent hashing, distributed leader-elections, and dynamic node discovery. Supports both HTTP/gRPC interfaces secured with mTLS.
FlashDB is an embeddable, in-memory key/value database in Go
FlashDB is an embeddable, in-memory key/value database in Go (with Redis like commands and super easy to read)
📊 parallel black box PostgreSQL unit tests run against a real database.
📊 psql-docker-tests-example Parallel black box PostgreSQL unit tests run against a real database. Consider reading the Medium Story first. This packa
Go-redisson: A redisson like distributed redis lock, support watchdog、reentrant lock
go-redisson a Redisson like distributed locking implementation using Redis. Installation go get github.com/cheerego/go-redisson Lock Category Mutex Ex
ArcticDB - an embeddable columnar database written in Go
This project is still in its infancy, consider it not production-ready, probably has various consistency and correctness problems and all API will cha
Golang distributed Slowloris attack 🦥
slowloris - Golang distributed Slowloris attack How it works Read the article 🦷 How to protect from it TBD Installation Run go install github.com/its
Kitten is a distributed file system optimized for small file storage, inspired by Facebook's Haystack.
Kitten is a distributed file system optimized for small file storage, inspired by Facebook's Haystack.
Simple key-value store on top of SQLite or MySQL
KV Work in progress, not ready for prime time. A simple key/value store on top of SQLite or MySQL (Go port of GitHub's KV). Aims to be 100% compatible
Distributed Commit Log from Travis Jeffery's Distributed Services book
proglog A distributed commit log. This repository follows the book "Distributed Services with Go" by Travis Jeffrey. The official repository for this
Tapestry is an underlying distributed object location and retrieval system (DOLR) which can be used to store and locate objects. This distributed system provides an interface for storing and retrieving key-value pairs.
Tapestry This project implements Tapestry, an underlying distributed object location and retrieval system (DOLR) which can be used to store and locate
Easy-to-use distributed multi-function current limiter.
go-limiter Easy-to-use distributed multi-function current limiter. Installation Run the following command under your project: go get -u github.com/NIC
A simple program to automatically backup a database using git. Err handling by Sentry, Reporting by Betteruptime. Made with 🩸 , 😓 & 😭
backup What is this? A Simple program to automatically backup a database using git. Err handling by Sentry, Uses heartbeats by Betteruptime Made with
Go-distributed-websocket - Distributed Web Socket with Golang and Redis
go-distributed-websocket Distributed Web Socket with Golang and Redis Dependenci
Nba-simulation - Golang will be simulating nba match and streaming it real time
NBA Simulation golang in-memory To build and run go build ./nbaSimulation To ru
MyCache - A distributed cache based on GeeCache
借鉴GeeCache实现了MyCache(https://geektutu.com/post/geecache.html) 主要功能: 1.实现了fifo和lr
Bot-template - A simple bot template for creating a bot which includes a config, postgresql database
bot-template This is a simple bot template for creating a bot which includes a c
Ecom-Golang-Fiber-Nextjs - E Commerce web app built in go with Fiber as backend, NextJS As frontend and PostgreSQL as database
Ecom-Golang-Fiber-Nextjs Setup Follow bellow steps to run the app in Dev & Prod
Go-userapi-rest - Build a RESTful API that can get/create/update/delete user data from a persistence database
GO ASSIGNMENT Overview of the Task Context Build a RESTful API that can get/crea
LotsusDB is a fast k/v database compatible with LSM tree and B+ tree
LotusDB LotsusDB is a fast k/v database compatible with LSM tree and B+ tree. Key features: Combine the advantages of LSM and B+ tree Fast read/write
Demonstrate a bounded context distributed over multiple repositories. In `go`
Contextive Demo - Go - Service This repository illustrates the use of Contextive in an environment where multiple repositories are part of the same bo
Jobbuzz - Brunei job search database and alert notification
JobBuzz Brunei open source job search database and alert notification Developmen
Badger - Fast Key-Value DB in Go
BadgerDB This is a fork of dgraph-io/badger, maintained by the Outcaste team. Ba
Structscanner is a simple library to make going from database queries to structs easier
structscanner is a simple library to make going from database queries to structs easier, while retaining the flexibility of joins and mapping using struct tags.
Cloud Spanner load generator to load test your application and pre-warm the database before launch
GCSB GCSB Quickstart Create a test table Load data into table Run a load test Operations Load Single table load Multiple table load Loading into inter
Package dbi implements an experimental database/sql wrapper.
dbi Package dbi implements a database/sql wrapper. This is an EXPERIMENTAL package used for experimenting. Installation The recommended way to install
A simple tool to help WoW repack administrators manipulate the repack database(s)
WoW Repack Manipulator This tool makes it easier for an administrator of a WoW Repack (private WoW server, basically) to manipulate the database that
🍷 Find exploits and vulnerabilities in the most important databases.
🍷 Dionisio Dionisio is a tool that can automate the search for exploits and vulnerabilities. Written in Go and open source, Dionisio has an advanced
A migration engine to deploy database changes in your golang + mongodb app.
bisonmigration A migration engine to deploy database changes in your golang + mongodb app. Migration files register their UP and DOWN functions in the
A go package to add support for data at rest encryption if you are using the database/sql.
go-lockset A go package to add support for data at rest encryption if you are using the database/sql to access your database. Installation In your Gol
BlobStore is a highly reliable,highly available and ultra-large scale distributed storage system
BlobStore Overview Documents Build BlobStore Deploy BlobStore Manage BlobStore License Overview BlobStore is a highly reliable,highly available and ul
Database - Example project of database realization using drivers and models
database Golang based database realization Description Example project of databa
A database migration tool written in Go.
dbmagritte created by Austin Poor A database migration tool written in Go. Usage Commands: init: Set up the repo by creating a .dbmagritte.yaml file a
Couchbase - distributed NoSQL cloud database
couchbase Couchbase is distributed NoSQL cloud database. create Scope CREATE SCO
Extypes - Extra data types useful for database
ExTypes Extra data types useful for database JSON Object JSON Object is useful f
Otelsql - OpenTelemetry SQL database driver wrapper for Go
OpenTelemetry SQL database driver wrapper for Go Add a OpenTelemetry wrapper to
Distributed-system - Practicing and learning the foundations of DS with Go
Distributed-System For practicing and learning the foundations of distributed sy
Thin clones of PostgreSQL to build powerful development, test, QA, staging environments
Database Lab Engine (DLE) ⚡ Blazing-fast cloning of PostgreSQL databases 🐘 Thin clones of PostgreSQL to build powerful development, test, QA, staging
Go code for PostgreSQL. A Go language code which connects to PostgreSQL database for CRUD operation
Go code for PostgreSQL. A Go language code which connects to PostgreSQL database for CRUD operation
This is a simple Golang application that executes SQL commands to clean up a mirror node's database.
This is a simple Golang application that executes SQL commands to clean up a mirror node's database.
Bitemporal - Toy Bitemporal Database. Learning by doing
bitemporal ⌛ Building intuition about bitemporal databases by building one for m
gdb-drivers: Database drivers for package gdb.
gdb-drivers Database drivers for package gdb. Installation Let's take pgsql for example. go get -u github.com/gogf/gf/gdb-drivers Choose and import t
Labs for MIT 6.824 Distributed Systems (Spring 2020)
6.824-2020-labs This repo contains labs for MIT 6.824 Distributed Systems (Spring 2020) The master branch contains the source code with no implementat
Disgo - A distributed lock based on redis developed with golang
English | 中文 DisGo Introduce DisGo is a distributed lock based on Redis, develop
free4.chat is an instant audio conferencing service
free4chat free4.chat is an instant audio conferencing service. It is designed by the local first and privacy first principle, and is very easy to use.
Hare is a nimble little database management system for Go.
Hare - A nimble little database management system written in Go Hare is a pure Go database management system that stores each table as a text file of
MySQL database migrator
MySQL database migrator MySQL database migrator designed to run migrations to your features and manage database schema update with intuitive go code.
Golang package for MPTT (Modified Preorder Tree Traversal) - materialized path realisation.
mpath-go Golang realisation of MPTT (or modified preorder tree traversal) in materialized path way. About It provides interfaces which yor database ob
A minimal, single-table No-SQL database.
SimpleDB SimpleDB is a very basic No-SQL database format for long-term data storage in Golang. It is WIP, has a LOT of drawbacks, and definitely is no
A Go distributed systems development framework
micro A Go distributed systems development framework framework eference resources base on go-micro support list grpc-balancer grpc-naming dns pool etc
A seed repository that contains a Go project that accepts input via a REST API and saves data to an Oracle database.
rest-oracle-go-seed A seed repository that contains a Go project that accepts input via a REST API and saves data to an Oracle database. Why Oracle? T
Cross check makes health checks on PostgreSQL and MySQL database servers
Cross Check Cross check makes health checks on PostgreSQL and MySQL database servers, it also performs master & slave control for clusters in H/A Acti
Topology-tester - Application to easily test microservice topologies and distributed tracing including K8s and Istio
Topology Tester The Topology Tester app allows you to quickly build a dynamic mi
Example of a distributed voting app running on Kubernetes. Written in Golang with Terraform definitions to deploy to AWS EKS
Example of a distributed voting app running on Kubernetes. Written in Golang with Terraform definitions to deploy to AWS EKS
hivefleet is a distributed, scalable load-testing tool built in go that leverages Google Cloud Functions
hivefleet is a distributed, scalable load-testing tool built in go that leverages Google Cloud Functions
Dsf - Singleflight for distributed senerios
dsf: Distributed SingleFlight Inspired by singleflight, this package provides a
Lightweight database migragtion library for Golang - MongoDB driver
LightMigrate - MongoDB migration driver This module is part of the LightMigrate library. It provides a migration driver for MongoDB. Features Driver w
Example of trace instrumentation in Golang applications :bar_chart:
go-opentelemetry-example Example of trace instrumentation in Golang applications using the opentelemetry. Requirements/dependencies Docker Docker-comp
A command-line interface for the Riak database through its HTTP API
Riakg Description Is a development oriented command line tool that enables navigation on buckets, keys and values of a Riak KV data store using it's H
Low-level ClickHouse database driver for Golang
chconn - ClickHouse low level Driver chconn is a pure Go driver for ClickHouse that use Native protocol chconn aims to be low-level, fast, and perform
Go Micro: a standard library for distributed systems development
Go Micro Go Micro is a standard library for distributed systems development. Ove
Uptrace - Distributed tracing backend using OpenTelemetry and ClickHouse
Distributed tracing backend using OpenTelemetry and ClickHouse Uptrace is a dist
Labs, solutions and related materials from the MIT 6.824 Distributed Systems course.
MIT 6.824 Distributed Systems Labs, solutions and related materials from the MIT 6.824 Distributed Systems course. Overview From the official website:
Dxc - Go implementation of DxChain3.0 protocol
DxChain 3.0 The Ecosystem Powered by DxChain 3.0 Smart Contract Platform While c
Distributed-Log-Service - Distributed Log Service With Golang
Distributed Log Service This project is essentially a result of my attempt to un
CLI tool to mock TCP connections. You can use it with Detox, Cypress or any other framework to automatically mock your backend or database.
Falso It is a CLI that allows you to mock requests/responses between you and any server without any configuration or previous knowledge about how it w
Light Object-Relational Environment (LORE) provides a simple and lightweight pseudo-ORM/pseudo-struct-mapping environment for Go
LORE Light Object-Relational Environment (LORE) provides a simple and lightweight pseudo-ORM/pseudo-struct-mapping environment for Go. Motivation With
A Tasty Treat For All Your Database Needs
POP A Tasty Treat For All Your Database Needs So what does Pop do exactly? Well, it wraps the absolutely amazing https://github.com/jmoiron/sqlx libra
Hive-fleet: a distributed, scalable load-testing tool built in go that leverages Google Cloud Functions
hive-fleet hive-fleet is a distributed, scalable load-testing tool, built on top
Distributed-Services - Distributed Systems with Golang to consequently build a fully-fletched distributed service
Distributed-Services This project is essentially a result of my attempt to under
Colonies is a generic framework for implementing next-generation distributed applications and systems
Colonies is a generic framework for implementing next-generation distributed applications and systems. It can be used as a building block for grid computing or edge computing, e.g. implement a meta operating system or cloud-of-cloud platform that combines many execution environments into a new virtual computing environment that can be controlled using an single unified API.
Nightingale - A Distributed and High-Performance Monitoring System. Prometheus enterprise edition
Introduction 💡 A Distributed and High-Performance Monitoring System. Prometheus
Implementation of distributed key-value system based on TiKV
Distributed_key-value_system A naive implementation of distributed key-value system based on TiKV Features Features of this work are listed below: Dis
fleet ties together systemd and etcd into a distributed init system
Deprecation warning fleet is no longer developed or maintained by CoreOS. After February 1, 2018, a fleet container image will continue to be availabl
Package gocql implements a fast and robust Cassandra client for the Go programming language.
gocql Package gocql implements a fast and robust Cassandra client for the Go programming language. Project Website: https://gocql.github.io/ API docum
Code portion for Distributed System Final exam for Viktor Máni Mønster
DISYS Final Exam (Distributed Hash Table) How to run There are two components of the system, which need to be run in separate ways. As this is a distr
Client-Server Expression Evaluator with Persistent Database Support (Redis & SQL)
Client-Server-Expression-Evaluator Client-Server Expression Evaluator with Persistent Database Support (Redis & SQL). Client-Server Expression Evaluat
Objectbox-go - Fast Golang database for easy Go structs/objects persistence
Go ObjectBox Database API ObjectBox is a superfast Go database persisting objects; check the performance benchmarks vs SQLite (GORM) & Storm. Using th
Goracle - Go database/sql driver for connecting to Oracle Database, using the ODPI-C library
Goracle is deprecated because of naming (trademark) issues. Please use github.com/godror/godror instead! You can use "sed" to change everything: se
Scribble - A tiny Golang JSON database
Scribble A tiny JSON database in Golang Installation Install using go get github.com/sdomino/scribble. Usage // a new scribble driver, providing the d
Octillery - Go package for sharding databases ( Supports every ORM or raw SQL )
Octillery Octillery is a Go package for sharding databases. It can use with every OR Mapping library ( xorm , gorp , gorm , dbr ...) implementing data
Nano - Lightweight, facility, high performance golang based game server framework
Nano Nano is an easy to use, fast, lightweight game server networking library fo
Aegis To KeePass - A simple tool to convert exported (and encrypted) Aegis database to standalone KeePass
ATP - Aegis to KeePass A simple tool to convert exported (and encrypted) Aegis d
Polluter - The easiest solution to seed database with Go
polluter Mainly this package was created for testing purposes, to give the ability to seed a database with records from simple .yaml files. Polluter r
OVO is an In-Memory Distributed Cache and a Key/Value Storage.
OVO is an In-Memory Distributed Cache and a Key/Value Storage. Main features OVO is a distributed in-memory cache that supports data sharding on m
Dingo - Data access in Go - Code Generator
DinGo Data access in Go (DinGo). From database schema to RESTful API: all the code is generated for you in few seconds. Build status Main features Din
Vertica-sql-go - Official native Go client for the Vertica Analytics Database.
vertica-sql-go vertica-sql-go is a native Go adapter for the Vertica (http://www.vertica.com) database. Please check out release notes to learn about
Go-explosion - Distributed indexing and searching in Go/Golang
go-explosion Distributed indexing and searching in Go/Golang. This library does
Tidb - An open-source NewSQL database that supports Hybrid Transactional and Analytical Processing (HTAP) workloads
What is TiDB? TiDB ("Ti" stands for Titanium) is an open-source NewSQL database