lsmt
tidesdb
lsmt | tidesdb | |
---|---|---|
3 | 2 | |
33 | 173 | |
- | 21.4% | |
8.8 | 9.8 | |
4 months ago | 10 days ago | |
Go | C | |
GNU Affero General Public License v3.0 | Mozilla Public License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
lsmt
-
TidesDB – High-performance, durable, transactional embedded storage engine
It's pretty interesting how this design turned out, RocksDB for example I believe is well over 200,000 lines. I originally wrote it in GO, well the base of it:
https://github.com/guycipher/lsmt
Then once I felt ok with what I had I took what I had in GO and painstakingly rewrote it to C++, (originally was gonna be C). Why GO first? I honestly write a lot more GO than C++ lately so I'm faster at writing in GO. Not to say I don't write C++. I've been writing code for 15+ years, C++ was one of my first languages at 14 years old, just haven't been writing it everyday. This project has changed that pretty dramatically!
- A fast transactional, durable LSMT implementation written in GO
- Single level embedded log structured merge tree (LSMT) Golang package
tidesdb
What are some alternatives?
btree - A fast, disk-based BTree package with an extensive easy-to-use API optimized for large keys with many values.
tinykvpp - Horizontally scalable, highly available, key-value storage service with distributed transaction support written in C++
kivi - Dynamo-inspired distributed leader-less key-value database that has no unique features and no apparent reason to exist
k4 - High-performance open-source, durable, transactional embedded storage engine designed for low-latency, and optimized read and write efficiency.
speedb - A RocksDB compliant high performance scalable embedded key-value store
lotusdb - Most advanced key-value database written in Go, extremely fast, compatible with LSM tree and B+ tree.
openthread - OpenThread released by Google is an open-source implementation of the Thread networking protocol
starskey - Package for fast persistent and embedded key-value storage. LevelDB-WiscKey inspired.
android_bootable_recovery - The heart :heart: of PBRP
gograph - A golang generic graph library that provides mathematical graph-theory and algorithms.