kvrocks icon indicating copy to clipboard operation
kvrocks copied to clipboard

Add support of the new data structure HyperLogLog

Open PragmaTwice opened this issue 2 years ago • 16 comments

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.

PragmaTwice avatar Mar 09 '23 09:03 PragmaTwice

I am working on this,just assign to me

dongdongwcpp avatar Mar 12 '23 10:03 dongdongwcpp

Glad to hear that. Assigned.

PragmaTwice avatar Mar 12 '23 11:03 PragmaTwice

Hi @dongdongwcpp, how is it going now?

PragmaTwice avatar Jun 16 '23 18:06 PragmaTwice

I'd like to design the part in kvrocks. And I'm considering the storage about hyperloglog.

infdahai avatar Jun 17 '23 17:06 infdahai

In a few days, I will present a concrete idea.

infdahai avatar Jun 18 '23 18:06 infdahai

@dongdongwcpp Released for long time nonresponse. Feel free to participate the community via other tasks : )

PragmaTwice avatar Jul 03 '23 16:07 PragmaTwice

In a few days, I will present a concrete idea.

Thanks! Assigned.

PragmaTwice avatar Jul 03 '23 16:07 PragmaTwice

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 avatar Jul 03 '23 16:07 infdahai

@infdahai How is it going now? Feel free to share your problems with us.

PragmaTwice avatar Sep 22 '23 16:09 PragmaTwice

I'd like to take over this task. @PragmaTwice

Yangsx-1 avatar Nov 21 '23 06:11 Yangsx-1

I'd like to take over this task. @PragmaTwice

Great! Assigned.

PragmaTwice avatar Nov 21 '23 16:11 PragmaTwice

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 avatar Jan 26 '24 06:01 qujihan

@qujihan Sure, I have changed the assigned. Thank you!

git-hulk avatar Jan 26 '24 06:01 git-hulk

You can first draft a format in discussion, and then move forward to implement it.

Some database uses HLL to optimize the ndv:

  1. https://github.com/facebookincubator/velox/tree/main/velox/common/hyperloglog
  2. https://github.com/ClickHouse/ClickHouse/blob/92e63bf45c3cd36163131e42d4bd003e543031f4/src/Common/HyperLogLogCounter.h

You can choose them or using similar like HLL in Redis

mapleFU avatar Jan 26 '24 06:01 mapleFU

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.

Yangsx-1 avatar Jan 26 '24 06:01 Yangsx-1

@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.

tutububug avatar Mar 07 '24 09:03 tutububug