udisk
yottaStore
udisk | yottaStore | |
---|---|---|
1 | 9 | |
57 | 82 | |
- | - | |
1.8 | 1.8 | |
over 1 year ago | over 1 year ago | |
- | MIT License |
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.
udisk
-
Ask HN: Why are there no open source NVMe-native key value stores in 2023?
I don't remember exactly why I have any of them saved, but these are some experimental data stores that seems to be fitting what you're looking for somewhat:
- https://github.com/DataManagementLab/ScaleStore - "A Fast and Cost-Efficient Storage Engine using DRAM, NVMe, and RDMA"
- https://github.com/unum-cloud/udisk - "The fastest ACID-transactional persisted Key-Value store designed for NVMe block-devices with GPU-acceleration and SPDK to bypass the Linux kernel."
- https://github.com/capsuleman/ssd-nvme-database - "Columnar database on SSD NVMe"
yottaStore
- Ask HN: Why are there no open source NVMe-native key value stores in 2023?
-
How to deal with overflowing counters?
I'm building a database, and I'm working on the storage format. For each record I have a logical clock which increases by 1 every time there's a write operation on the record, and I would like to be able to compare the clocks of two writes to understand which happened first.
-
Need help porting a wait free trie from C to Rust (and other silly questions)
If you're curious to know more, the tree is used for rendezvous based routing, as used by my datastore. I'm doing machine learning on a 200 TB dataset, using around 200 machines.
-
Looking for fast, space-efficient key-lookup
I copied this approach from several papers, with some improvements, for my datastore.
-
How to handle hundreds of routes?
I have a server with hundreds of routes, representing all the possible operations I can do on a datastore. How can I organize my code better?
-
Async-rdma v0.4.0: A Rust lib for writing high-throughput, low-latency networking apps simply
Yes I'm building a database where storage and compute are decoupled. I use io_uring to do pseudo-RDMA, and I'm looking to add ePBF to make it even more effective.
-
Avoid hash flooding without a secret key?
I'm currently building an implementation of the dynamo paper, yottastore. Imagine it as a huge, distributed, hash map.
-
How to deal with a very big hash table?
I'm building an implementation of the dynamo paper, yottastore. Given a key, I need to find which NVMe block stores the data. To do that I hash the key to find the shard where I have an in memory array in which at position [hash] I can find a struct with:
-
Golang is better than Rust for next generation in-memory database
I have to be honest, I'm very skeptical about your results and your code. I'm building a database, yottastore, both in javascript, golang and rust so I think I can share my opinion:
What are some alternatives?
solid_cache - A database-backed ActiveSupport::Cache::Store
uNVMe - KV and LBA SSD userspace NVMe driver
cdb - A native golang implementation of cdb (http://cr.yp.to/cdb.html)
ssd-nvme-database - Columnar database on SSD NVMe
KVSSD - KV SSD host software including APIs and drivers
kivi - Dynamo-inspired distributed leader-less key-value database that has no unique features and no apparent reason to exist
KVRocks - RocksDB compatible key value store and MyRocks compatible storage engine designed for KV SSD
async-rdma - Easy to use RDMA API in Rust async