yottaStore
kvrocks
yottaStore | kvrocks | |
---|---|---|
9 | 23 | |
79 | 3,238 | |
- | 6.9% | |
1.8 | 9.6 | |
about 1 year ago | 3 days ago | |
C++ | ||
MIT License | Apache 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.
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:
kvrocks
-
Redis Re-Implemented with SQLite
I switched from SSDB to Kvrocks recently, because SSDB is abandoned and the author missing for 3 years now. I used to recommend SSDB, but now there's better alternatives available:
https://github.com/apache/kvrocks
https://github.com/sabledb-io/sabledb
- Apache Kvrocks is a distributed key value NoSQL database that uses RocksDB as s
-
Five Apache projects you probably didn't know about
Another under the radar Apache project I've found myself using is Apache KvRocks
https://github.com/apache/kvrocks
It's a Redis compatible database on top of RocksDB, so unlike Redis it uses the disk instead of RAM, but you can control how much data is cached in RAM, obviously Kvrocks will be slower than Redis for uncached data.
Useful in situations where you want a KV data store that isn't limited by your memory specs but is compatible with everything that speaks Redis.
- Redis as a Database
- Apache Kvrocks: distributed store using RocksDB, Redis compatible protocol
-
Ask HN: Why are there no open source NVMe-native key value stores in 2023?
There’s Kvrocks. It uses the Redis protocol and it’s built on RocksDB https://github.com/apache/kvrocks
-
Getting started with Kvrocks and go-redis
Apache Kvrocks is a distributed key-value NoSQL database that uses RocksDB as a storage engine and is compatible with Redis protocol.
-
The first version of Redis, written in Tcl
We use Kvrocks[0] at work. It is Redis on disk, powered by "RocksDB" (hence the name) and compatible with most of the Redis clients since it respects the Redis protocol. It was incubated by Apache earlier this year.
It works great and the development is really active.
[0]: https://kvrocks.apache.org
- Kvrocks 2.0.6 is released
- Kvrocks 2.0.5 has integrated the RocksDB's blob db
What are some alternatives?
solid_cache - A database-backed ActiveSupport::Cache::Store
Tendis - Tendis is a high-performance distributed storage system fully compatible with the Redis protocol.
async-rdma - Easy to use RDMA API in Rust async
SSDB - SSDB - A fast NoSQL database, an alternative to Redis
cdb - A native golang implementation of cdb (http://cr.yp.to/cdb.html)
pika - Pika is a Redis-Compatible database developed by Qihoo's infrastructure team.
KVRocks - RocksDB compatible key value store and MyRocks compatible storage engine designed for KV SSD
pika - An open-source colour picker app for macOS
ssd-nvme-database - Columnar database on SSD NVMe
fastonosql_gui - FastoNoSQL is a crossplatform Redis, Memcached, SSDB, LevelDB, RocksDB, UnQLite, LMDB, ForestDB, Pika, Dynomite, KeyDB GUI management tool.
uNVMe - KV and LBA SSD userspace NVMe driver
KeyDB - A Multithreaded Fork of Redis