Live data from Hacker News

Show HN: Cachegrand – a fast OSS Key-Value store built for modern hardware

github.com

1–10 of 59 posts

Show HN: Cachegrand – a fast OSS Key-Value store built for modern hardware

#1
I am the author of the platform, happy to reply to any question you might have!

It scales up really nicely thanks to a year of research and development of the hashtable implemented in cachegrand, on the hardware used for benchmarking, an AMD EPYC 7502P, it was able to reach up to 5mln GET QPS and 4.5mln SET QPS, with batching up to 60mln GET QPS and up to 26MLN SET QPS.

cachegrand is fast, it's fully Open Source, it's under a BSD 3-clause license - it can be used easily as standalone platform or incorporated in other ones without any licensing issue - and we are working to expand the Redis functionalities supported and to impelement a tiered storage to cache more data than the available memory. Longer term our goal is to expand the support to different platforms (e.g. memcache, kafka, etc.), add support to webassembly to have user defined functions and server side events, and of course a network bypass (combining XDP and a lockless FreeBSD tcp/ip stack) and a storage bypass.

Although it can easily used via docker, here a direct link to the latest release https://github.com/danielealbano/cachegrand/releases/tag/v0....

Currently we are focused on supporting Redis, here the list of commands currently implemented https://github.com/danielealbano/cachegrand/blob/main/docs/a...

Show HN: Cachegrand – a fast OSS Key-Value store built for modern hardware
github.com

Re: Show HN: Cachegrand – a fast OSS Key-Value store built for modern hardware

#4
post #3

I'm following your project Daniele! Can't wait to have a stable release

Thanks!

My goal is to make it usable enough from the 0.3.0 where I want to have enough Redis commands supported (hashsets, sets, lists, multiple dbs, hyperloglog, etc.), have more memory control and have an MVP of the on-disk database.

Implementing the data replication, which will come right after, will be fairly easy, thanks to all the logics already built in for the on-disk database, so that should be implemented fairly quickly.

Also I have recently bought 2 x AMD EPYC 7551 so I will setup a better performance regression tracking and a proper benchmark suite to track everything (a contributor is working on leveraging the tests and use them as base for the two things mentioned above)

Re: Show HN: Cachegrand – a fast OSS Key-Value store built for modern hardware

#7

The benchmarks should be against Aerospike or something similar not Redis, as it cooks the results vs what is the current highest performant OSS KV store.

Aerospike will happily ignore your requests if it feels like. Use it only if you don't care about correctness or losing data.

Re: Show HN: Cachegrand – a fast OSS Key-Value store built for modern hardware

#9

The benchmarks should be against Aerospike or something similar not Redis, as it cooks the results vs what is the current highest performant OSS KV store.

Aerospike will happily ignore your requests if it feels like. Use it only if you don't care about correctness or losing data.

“In hundreds of tests of SC mode through network partitions, 3.99.1.5 and higher versions have not shown any sign of nonlinearizable histories, lost increments to counters, or lost updates to sets.” – Kyle Kingsbury, Aerospike 3.99.0.3, 12-27-2017

- https://aerospike.com/blog/aerospike-4-strong-consistency-an...

- https://jepsen.io/analyses/aerospike-3-99-0-3

Re: Show HN: Cachegrand – a fast OSS Key-Value store built for modern hardware

#10

The benchmarks should be against Aerospike or something similar not Redis, as it cooks the results vs what is the current highest performant OSS KV store.

Redis is the product everyone knows? Pick a tool and it is almost a guarantee there is a less well known implementation that is better on dimension X.
Post reply on HN