apache / kvrocks

Apache Kvrocks is a distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol.
https://kvrocks.apache.org/
Apache License 2.0
3.47k stars 450 forks source link

Support Top-K data structure and commands #2424

Open PragmaTwice opened 2 months ago

PragmaTwice commented 2 months ago

Search before asking

Motivation

Redis Stack already supports this probabilistic data structure, and we can support it too.

https://redis.io/docs/latest/develop/data-types/probabilistic/top-k/ https://redis.io/docs/latest/commands/?group=topk

Solution

Please share your design proposal through issue/discussion before submitting a PR.

Are you willing to submit a PR?

zweix123 commented 1 month ago

I hope to complete this issue. Can you assign it to me.

git-hulk commented 1 month ago

@zweix123 Assigned, thank you! Could you please propose the design before starting implementation? So that we can discuss the design in the early stage.

zweix123 commented 1 month ago

@zweix123 Assigned, thank you! Could you please propose the design before starting implementation? So that we can discuss the design in the early stage.

Yes, I have such thoughts. Please give me some time, it won't be too long, about a day.

git-hulk commented 1 month ago

@zweix123 Thank you! There's no rush, it's good to propose the design while you get time and are ready to review.

zweix123 commented 1 month ago

A considerable amount of design has been completed, but there are some difficulties that will be discussed here: Kvrocks-Discussions-Difficulties in designing documents for Top-K data structures and commands #2449.