Add support of the new data structure HyperLogLog
As a plan in Kvrocks 2023 Roadmap, we are eager to explore the ability to implement HyperLogLog commands in Redis for kvrocks.
Everyone is welcome to ask questions, or contribute your ideas/PRs.
I am working on this,just assign to me
Glad to hear that. Assigned.
Hi @dongdongwcpp, how is it going now?
I'd like to design the part in kvrocks. And I'm considering the storage about hyperloglog.
In a few days, I will present a concrete idea.
@dongdongwcpp Released for long time nonresponse. Feel free to participate the community via other tasks : )
In a few days, I will present a concrete idea.
Thanks! Assigned.
In a few days, I will present a concrete idea.
Thanks! Assigned.
Some questions I haven't thought through, and time is limited, so it's going to take some time.
@infdahai How is it going now? Feel free to share your problems with us.
I'd like to take over this task. @PragmaTwice
I'd like to take over this task. @PragmaTwice
Great! Assigned.
Hello, I have observed that this issue has not progressed for a long time.. Are you still doing it now? If not, I want to try it. @Yangsx-1
@qujihan Sure, I have changed the assigned. Thank you!
You can first draft a format in discussion, and then move forward to implement it.
Some database uses HLL to optimize the ndv:
- https://github.com/facebookincubator/velox/tree/main/velox/common/hyperloglog
- https://github.com/ClickHouse/ClickHouse/blob/92e63bf45c3cd36163131e42d4bd003e543031f4/src/Common/HyperLogLogCounter.h
You can choose them or using similar like HLL in Redis
Hello, I have observed that this issue has not progressed for a long time.. Are you still doing it now? If not, I want to try it. @Yangsx-1
Just do it! I'm very busy these days, you can take this task.
@PragmaTwice I create a PR #2142 for support hyperloglog. The core algorithm code is transplanted from redis, and may have optimization room on disk storage.