xNVMe
kvrocks
xNVMe | kvrocks | |
---|---|---|
3 | 23 | |
213 | 3,238 | |
3.8% | 6.9% | |
9.3 | 9.6 | |
3 days ago | 1 day ago | |
C | C++ | |
GNU General Public License v3.0 or later | 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.
xNVMe
- Ask HN: Why are there no open source NVMe-native key value stores in 2023?
-
Anyone using io_uring?
Basically io_uring grew a lot, the latest API offers incredible tools but there are very few examples in any language (xnvme and fio), and in particular I'm struggling to understand how to do it in Rust: where should unsafe code stop? should I simply expose the io_uring api as unsafe, or should I do more work in C and present the ring when ready to rust?
-
libnvme VS xNVMe - a user suggested alternative
2 projects | 4 Mar 2022
The foundation of xNVMe is libxnvme, a user space library for working with NVMe devices. It provides a C API for memory management, that is, for allocating physical / DMA transferable memory when needed. An NVMe command interface allowing you to submit and complete NVMe commands in a synchronous as well as an asynchronous manner. Similar to libnvme, however, with a focus on I/O performance and portability. Thus, xNVMe and the libxnvme library works not just on Linux, but also on FreeBSD, Windows, and MacOS.
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?
libnvme - C Library for NVM Express on Linux
Tendis - Tendis is a high-performance distributed storage system fully compatible with the Redis protocol.
VkFFT - Vulkan/CUDA/HIP/OpenCL/Level Zero/Metal Fast Fourier Transform library
SSDB - SSDB - A fast NoSQL database, an alternative to Redis
FEMU - FEMU: Accurate, Scalable and Extensible NVMe SSD Emulator (FAST'18). Please checkout https://github.com/vtess/FEMU for latest developments.
pika - Pika is a Redis-Compatible database developed by Qihoo's infrastructure team.
openSeaChest - Cross platform utilities useful for performing various operations on SATA, SAS, NVMe, and USB storage devices.
pika - An open-source colour picker app for macOS
fio - Flexible I/O Tester
fastonosql_gui - FastoNoSQL is a crossplatform Redis, Memcached, SSDB, LevelDB, RocksDB, UnQLite, LMDB, ForestDB, Pika, Dynomite, KeyDB GUI management tool.
KVSSD - KV SSD host software including APIs and drivers
KeyDB - A Multithreaded Fork of Redis