【问题标题】:Is it possible to decrement a HyperLogLog set in Redis是否可以减少 Redis 中设置的 HyperLogLog
【发布时间】:2017-07-04 03:45:18
【问题描述】:

假设我在 redis 中有一个对消息进行计数的超级日志,是否有任何规定可以在某种程度上说明我可以删除消息?

【问题讨论】:

  • 创建两个 hyperloglog 集是否合理? messages.createdmessages.deleted 并断言递减?
  • 两个超级日志集可能是一个解决方案。这取决于你的场景。例如,它无法解决以下场景:添加一个元素,删除该元素,然后再次添加相同的元素。你能告诉我们更多关于你的场景的细节吗?
  • @for_stack 是的,我的意思是这很有道理。虽然我不确定我是否会再次创建 same 元素 - 因为重新创建以前删除的消息会有一个新的 UUID。
  • 另一种解决方案可能是重新创建 HLL 和 PFADD 整个数据集。但是随着 HLL 的大小,这变得越来越不可行:(

标签: redis hyperloglog


【解决方案1】:

不,HyperLogLog 不支持删除的概念。相反,请使用不同的计数器(可以是整数、Set 或 HyperLogLog)并减去总数。

【讨论】:

  • 我想通了。谢谢。
猜你喜欢
  • 2018-12-10
  • 1970-01-01
  • 1970-01-01
  • 2019-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-18
  • 2019-06-17
相关资源
最近更新 更多