- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有那么多 Hyperloglog 实现,但是您如何验证/测试 Hyperloglog 实现?要检查它的“准确性”,它是“错误”绑定(bind)行为吗?只是扔一些静态测试用例看起来很无效。
更具体地说,有人改变了随机数例程,我怎么知道这不是一个灾难性的选择并通过一些自动化的、可重复的测试来展示?
任何人都可以在 github 或其他地方指出任何已知的良好测试,并且可能有一些解释吗?
最佳答案
好问题。首先,请注意,虽然 HyperLogLog 的理论基础提供了一些准确性指示,但测试您正在使用的实现至关重要。
测试应该使用随机数据集(也可以使用其他静态数据集),并且应该应用于不同的集合基数。如果您有任何测试自动化框架,那将是确保避免回归的自然场所,正如您上面所建议的那样。但是,请注意,要测量具有大基数的准确性,测试运行时间可能会令人望而却步。
您可以使用下面的实现作为引用。它包括抽取大量随机数的单元测试,并以固定的时间间隔检查准确性。
关于testing - 您如何测试 Hyperloglog 的实现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34683370/
什么是基数估算 HyperLogLog 是一种基数估算算法。所谓基数估算,就是估算在一批数据中,不重复元素的个数有多少。 从数学上来说,基数估计这个问题的详细描述是:对于一个数据流 {x1,x2,…,
我最近在业余时间学习了不同的算法,我遇到了一个看起来非常有趣的算法,它被称为 HyperLogLog 算法 - 它估计列表中有多少个独特的项目。 这对我来说特别有趣,因为它让我回到了 MySQL 时代
我自己实现了 HyperLogLog algorithm .它运行良好,但有时我必须获取大量(大约 10k-100k)HLL 结构并合并它们。 我将它们中的每一个都存储为一个位串,所以首先我必须将每个
有那么多 Hyperloglog 实现,但是您如何验证/测试 Hyperloglog 实现?要检查它的“准确性”,它是“错误”绑定(bind)行为吗?只是扔一些静态测试用例看起来很无效。 更具体地说,
HyperLogLog 估计多重集的基数。是否可以扩展它来处理多个多重集?比如,它不仅支持查询 estimateCardinality(),还支持 estimateCardinality(multis
HyperLogLogFlajolet 等人的算法描述了一种估计基数的巧妙方法一组只使用少量内存。然而,它确实考虑到了在计算中考虑原始集合的所有 N 个元素。如果什么我们只能访问原始 N 的一小部分随
我有以下代码片段来测试我是否可以在 Redis 中添加 HLL 值,这个测试通过了,但是当我从 redis 命令行验证它时,我没有看到“HLLTEST”键,而是我发现了奇怪的键您可以从以下输出中看到。
我正在阅读 antirez.com 和维基百科以及其他一些资源以了解 HLL 是什么以及它是如何工作的,但每次使用术语“Leading Zeroes”时我都会犯错。当我们谈论 HyperLogLog
我正在研究 Redis 支持的数据结构,但找不到可以让我理解什么是 HyperLogLog 的解释。 我如何使用它,为什么它有好处? 最佳答案 基本上是一种 Redis Set,它使用优化的算法通过避
我们在 Algebird 中使用 Twitter 的 HyperLogLog 实现。给定一个数字 N 和我们系统中的一个检查,它使用 HyperLogLog 来估计一个逐渐增长的集合的当前大小并测试它
我们目前面临一个有趣的问题。我们想要估计一个集合的基数而不需要存储每一个项目(通常位图/位集是一个很好的方法)。一个非常好的算法是所谓的 HyperLogLog 随机算法(更多信息请参见此处 http
如果我想获取可添加和删除的元素列表中的唯一计数,有没有办法做到这一点? 例如 add key1 delete key1 add key1 应该给出一个唯一的计数 1 但是如果我有一个 2 hll 的简
关于 HyperLogLog 算法一直困扰我的一点是它对 key 散列的依赖。我遇到的问题是,这篇论文似乎假设我们在每个分区上都有一个完全随机的数据分布,但是在它经常使用的上下文中(MapReduce
redis HLL 是否有 SMEMBERS 的等价物我需要计算一个数组中的所有唯一元素,还需要获取唯一成员的列表PFADD & PFCOUNT 会给我计数。我将如何获得成员。 我想使用 PFADD
我试图在这里运行一个简单的代码,它只是使用 PFADD 操作将一个值插入到一个键中,但是我得到了这个错误: ResponseError: unknown command 'PFADD' 我的代码如下:
在 redis 中,我们将 hyperLogLog 设置为不同的元素。 众所周知,对于每个 key ,HLL 仅消耗 12kb 内存并产生标准误差为 0.81% 的近似值 因为我有太多要计算的元素。所
我对 Redis HyperLogLog 的工作原理以及何时使用它有一些基本的想法。 在使用它之前,我做了一个测试:我pfadd将一些连续的数字输入到一个 HLL 条目(以模拟用户 ID),Redis
我正在使用 HyperLogLog 的 Redis 实现来计算给定键的不同值。 键基于小时窗口。日历小时更改后,我想重置传入值的计数。我没有看到任何用于通过 Jedis ‘清除’值的直接 API。 S
我正在使用 redis-cli 学习 HyperLogLogs 示例 The redis-cli examples show how you can use HyperLogLog commands
HyperLogLog s占用12KB空间。我在文档中没有看到有关何时释放该存储空间的任何信息。 我目前的计划是调用EXPIRE每次我打电话PFADD ,但我找不到太多关于过期 HLL 的讨论,所以我
我是一名优秀的程序员,十分优秀!