Penyimpanan pergi yang luar biasa
Daftar proyek penyimpanan dan perpustakaan GO yang mengagumkan. Terinspirasi oleh GO yang luar biasa.
Berkontribusi
Harap ambil sekilas panduan kontribusi terlebih dahulu. Terima kasih untuk semua kontributor; kamu rock!
Jika Anda melihat paket atau proyek di sini yang tidak lagi dipelihara atau tidak cocok, silakan kirim permintaan tarik untuk meningkatkan file ini. Terima kasih!
Isi
- Penyimpanan pergi yang luar biasa
- Server penyimpanan
- Toko Nilai Kunci
- Sistem file
- Database
- Driver basis data
Server penyimpanan
Server penyimpanan diimplementasikan di Go.
- Minio - Minio adalah server penyimpanan objek open source yang kompatibel dengan API Amazon S3.
- RCLONE - "RSYNC untuk Penyimpanan Cloud" - Google Drive, Amazon Drive, S3, Dropbox, Backblaze B2, One Drive, Swift, Hubic, Cloudfile…
- Perkepi - Perekep adalah sistem penyimpanan pribadi Anda seumur hidup: cara menyimpan, menyinkronkan, berbagi, memodelkan, dan mendukung konten.
- S3GIT - git untuk penyimpanan cloud. Kontrol versi terdistribusi untuk data.
- Storj - Penyimpanan objek cloud yang terdesentralisasi yang terjangkau, mudah digunakan, pribadi, dan aman.
- ROOK - Open, Cloud asli, dan penyimpanan terdistribusi universal.
- Longhorn - Longhorn adalah server penyimpanan blok persisten open source yang dikirimkan melalui wadah.
Toko Nilai Kunci
Toko Nilai Kunci yang diimplementasikan di Go.
- Bitcask-Bitcask adalah database key-value (KV) yang dapat disematkan yang ditulis dalam Pure Go dengan kinerja baca/tulis yang dapat diprediksi, latensi rendah dan throughput tinggi berkat tata letak di disk bitcask (LSM+WAL).
- Bitraft-Bitraft adalah kunci/nilai kunci berbasis rakit terdistribusi dengan protokol yang kompatibel dengan Redis. Ini menggunakan bitcask untuk kinerja tinggi/seluruh dan latensi rendah.
- BadgerdB - Badgerdb adalah database yang dapat disematkan, gigih, sederhana dan cepat (KV) yang ditulis dalam Go Pure Go. Ini dimaksudkan untuk menjadi alternatif pertunjukan untuk toko-toko nilai kunci berbasis non-GO seperti RockSDB.
- Kolom-Toko yang dapat disematkan, kolom, dalam memori dengan pengindeksan bitmap, transaksi dan penukar nol-alloc.
- Konsul - Toko Nilai Kunci Replikasi yang Didistribusikan untuk Penemuan dan Konfigurasi Layanan.
- DiskV-toko nilai kunci yang didukung disk.
- ETCD - Terdistribusi penyimpanan nilai kunci yang andal untuk data paling kritis dari sistem terdistribusi.
- GO-CACHE-Kunci dalam memori: Nilai penyimpanan/cache (mirip dengan memcached) perpustakaan untuk GO, cocok untuk aplikasi mesin tunggal.
- IcefiredB - Database penyimpanan disk terdistribusi menggunakan protokol RAFT dan REDIS.
- Nutsdb - Nutsdb adalah toko kunci/nilai gigih yang sederhana, cepat, dapat disematkan, ditulis dalam Pure Go. Ini mendukung transaksi yang sepenuhnya dapat serial dan banyak struktur data seperti daftar, set, set diurutkan.
- Pogreb-Toko Nilai Kunci Tertanam untuk beban kerja yang berat.
- RosedB - Database KV yang cepat, stabil dan tertanam di Golang murni, mendukung string, daftar, hash, set, set diurutkan.
- LOYUSDB - Penyimpanan K/V cepat kompatibel dengan pohon LSM dan pohon B+.
Sistem file
Sistem file diimplementasikan di Go.
- Afero - Sistem abstraksi sistem file untuk GO
- FSNotify - Pemberitahuan sistem file lintas platform untuk GO.
- Juicefs - Sistem file POSIX terdistribusi yang dibangun di atas Redis dan S3.
- GCSFUSE - Sistem file ruang pengguna untuk berinteraksi dengan Google Cloud Storage.
- GIT -LFS - Ekstensi GIT untuk versi file besar.
- GO-SYSTEMD-GO Binding ke aktivasi SystemD Socket, Journal, D-Bus, dan file unit.
- Goofys-sistem file Amazon S3 berkinerja tinggi, POSIX-ish yang ditulis di Go.
- MinikeyValue - A ~ 1000 Line Terdistribusi Toko Nilai Kunci.
- SeaWeedFS - Seaweedfs adalah sistem file terdistribusi yang sederhana dan sangat terukur untuk file kecil.
- SVFS - Sistem file virtual di atas OpenStack Swift dibangun di atas sekering.
Database
Database diimplementasikan di Go.
- BIGCACHE - Kunci/Nilai Cache yang efisien untuk gigabyte data.
- Bolt - Database kunci/nilai tingkat rendah untuk GO. Versi asli oleh Ben Johnson ini telah ditandai sebagai tidak terpelihara dan dipotong oleh ETCD-IO BBOLT.
- BuntdB - Database kunci/nilai dalam memori yang cepat, dapat disematkan, untuk GO dengan pengindeksan khusus dan dukungan spasial.
- Cache2go - Kunci dalam memori: Nilai cache yang mendukung pembatalan otomatis berdasarkan batas waktu.
- Clover - Basis data NoSQL yang berorientasi dokumen ringan yang ditulis dalam Golang murni.
- Kecoa - Datastore transaksional yang dapat diskalakan, geo
- Couchcache - Layanan mikro caching yang tenang didukung oleh server Couchbase.
- CovenantSQL - Database SQL dengan fitur blockchain.
- DGRAPH - Database grafik throughput throughput yang scalable, terdistribusi, latensi rendah, latensi tinggi.
- DISKV-Toko nilai kunci yang didukung disk yang ditanam di rumah.
- DOLT-Database yang kompatibel dengan MySQL dengan kontrol versi Git-style. Database SQL pertama yang dapat Anda cabang dan gabungkan.
- EliasdB-Database grafik transaksional bebas ketergantungan dengan API REST, pencarian frasa dan bahasa kueri seperti SQL.
- Emitter-Database pub/sub yang dapat diskalakan, latensi rendah, terdistribusi & aman dengan penyimpanan pesan seri-time, cocok untuk IoT, game, aplikasi, dan web real-time.
- ForestDB - GO Bindings for ForestDB.
- FrostDB - Database kolom yang dapat disembuhkan yang ditulis dalam go.
- GCACHE - Perpustakaan cache dengan dukungan untuk cache yang kedaluwarsa, LFU, LRU dan ARC.
- Geocache - cache dalam memori yang cocok untuk aplikasi berbasis geolokasi.
- GO-CACHE-Kunci dalam memori: Nilai penyimpanan/cache (mirip dengan memcached) perpustakaan untuk GO, cocok untuk aplikasi mesin tunggal.
- Godis - Golang menerapkan server dan cluster redis kinerja tinggi
- GoleveldB - Implementasi database Kunci/Nilai LevelDB di GO.
- GroupCache - GroupCache adalah perpustakaan cache dan pengisian cache, yang dimaksudkan sebagai pengganti yang diperam dalam banyak kasus.
- ImmudB - Basis data dengan bukti dan verifikasi kriptografi bawaan. Dapat beroperasi sebagai toko nilai kunci atau sebagai database relasional (SQL).
- InfluxDB - Scalable Datastore untuk metrik, peristiwa, dan analitik real -time
- LedisDB - LedisDB adalah NoSQL kinerja tinggi seperti Redis berdasarkan LevelDB.
- Levigo - Levigo adalah pembungkus go untuk LevelDB.
- Moss - Moss adalah mesin penyimpanan nilai kunci LSM sederhana yang ditulis dalam 100% Go.
- NOMS - Database yang dapat disinkronkan versi, forkable,.
- ObjectBox -GO - Database Objek Tertanam (NoSQL) dengan GO API.
- PILADB - Mesin database Restful ringan berdasarkan struktur data tumpukan.
- Perst - Sajikan API yang tenang dari database PostgreSQL.
- Prometheus - Sistem Pemantauan dan Database Seri Waktu.
- RQLite - Database relasional yang ringan, terdistribusi, dibangun di atas SQLite.
- Scribble - toko JSON file datar kecil.
- SpicedB - Basis data yang diilhami Zanzibar yang menyimpan, menghitung, dan memvalidasi izin aplikasi dengan dukungan untuk beberapa backend database.
- TIDB - TIDB adalah database SQL terdistribusi. Terinspirasi oleh desain Google F1.
- Tiedot - Database NoSQL Anda ditenagai oleh Golang.
- Tile38 - DB geolokasi dengan indeks spasial dan geofencing realtime.
- Victoriametrics - Database Seri Waktu yang dirancang untuk pemantauan, kompatibel dengan PromQL (dari Promethueus) dan InfluxQL (dari InfluxDB).
Migrasi Skema Database.
- Darwin - Perpustakaan Evolusi Skema Database untuk GO
- Goose - Alat Migrasi Basis Data. Anda dapat mengelola evolusi database Anda dengan membuat skrip SQL atau Go tambahan.
- Gormigrate - Pembantu Migrasi Skema Database untuk Gorm ORM.
- Migrasi - Penanganan migrasi basis data di Golang mendukung MySQL, PostgreSQL, Cassandra, dan Sqlite.
- Pravasan - Alat Migrasi Sederhana - Saat ini untuk MySQL tetapi berencana untuk segera mendukung Postgres, Sqlite, MongoDB, dll.,
- Soda - Migrasi Database, Kreasi, ORM, dll ... Untuk MySQL, PostgreSQL, dan SQLite.
- SQL -Migrate - Alat Migrasi Basis Data. Memungkinkan penyematan migrasi ke dalam aplikasi menggunakan Go-Bindata.
Alat basis data.
- go -mysql - toolset go untuk menangani protokol dan replikasi MySQL.
- go-mysql-elasticsearch-sinkronkan data mySQL Anda ke elasticsearch secara otomatis.
- Kingshard - Kingshard adalah proxy berkinerja tinggi untuk MySQL yang ditenagai oleh Golang.
- MyReplication - MySQL Binary Log Replication Listener. Pernyataan Dukungan dan Replikasi Berbasis Baris.
- Orchestrator - Manajer & Visualisasi Topologi Replikasi MySQL
- PGWEB - Browser Database PostgreSQL berbasis web
- Vitess - Vitess menyediakan server dan alat yang memfasilitasi penskalaan database MySQL untuk layanan web skala besar.
- USQL - Antarmuka baris perintah universal untuk database SQL
SQL Query Builder, perpustakaan untuk membangun dan menggunakan SQL.
- Buildsqlx - GO Database Query Builder Library
- DAT - GO Postgres Data Access Toolkit
- DOTSQL - GO Library yang membantu Anda menyimpan file SQL di satu tempat dan menggunakannya dengan mudah.
- Goqu - Perpustakaan SQL dan Perpustakaan Kueri Idiomatik.
- Grimoire - Grimoire adalah lapisan akses database dan validasi untuk Golang. (Dukungan: MySQL, PostgreSQL dan SQLite3).
- IGOR - Lapisan abstraksi untuk PostgreSQL yang mendukung fungsionalitas canggih dan menggunakan sintaksis seperti Gorm.
- Ozzo-DBX-Metode pengambilan data yang kuat serta kemampuan membangun permintaan db-agnostik.
- SQLBOILER - Alat untuk menghasilkan GO ORM yang disesuaikan dengan skema database Anda. Ini adalah "database-first" ORM yang bertentangan dengan "kode-pertama", dan Anda harus terlebih dahulu membuat database Anda.
- SQRL - SQL Query Builder, garpu tupai dengan kinerja yang lebih baik.
- Squirrel - Go Library yang membantu Anda membangun kueri SQL.
- XO - Hasilkan kode Go idiomatik untuk database berdasarkan definisi skema yang ada atau pertanyaan khusus yang mendukung PostgreSQL, MySQL, SQLite, Oracle, dan Microsoft SQL Server.
Driver basis data
Perpustakaan untuk menghubungkan dan mengoperasikan database.