3 ms·
I'm finishing up my rust project convenient-skiplist [0] so I can finally achieve sorted set time-complexity parity between redis-oxide [1] and actual redis [2]
by dpbriggs 7y ago
I'm finishing up my rust project convenient-skiplist [0] so I can finally achieve sorted set time-complexity parity between redis-oxide [1] and actual redis [2].
It's been quite challenging to get indexing working in a coherent and performant way. My sorted set implementation is "pure" in the sense you can only travel right and down, so you have to dance carefully to make the arithmetic work.
And the fact it's in rust adds the additional headaches of borrow checker / etc. Very fun though.
[0] https://github.com/dpbriggs/convenient-skiplist https://github.com/dpbriggs/convenient-skiplist
[1] https://github.com/dpbriggs/redis-oxide https://github.com/dpbriggs/redis-oxide
[2] https://redis.io/commands/zpopmax https://redis.io/commands/zpopmax