Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
f2912336
Commit
f2912336
authored
Mar 28, 2014
by
antirez
Browse files
hll-err.rb added to test error rate of Redis HyperLogLog.
parent
f90a4af3
Changes
1
Show whitespace changes
Inline
Side-by-side
utils/hyperloglog/hll-err.rb
0 → 100644
View file @
f2912336
# hll-err.rb - Copyright (C) 2014 Salvatore Sanfilippo
# BSD license, See the COPYING file for more information.
#
# Check error of HyperLogLog Redis implementation for different set sizes.
require
'rubygems'
require
'redis'
require
'digest/sha1'
r
=
Redis
.
new
r
.
del
(
'hll'
)
(
1
..
1000000000
).
each
{
|
i
|
ele
=
Digest
::
SHA1
.
hexdigest
(
i
.
to_s
)
r
.
hlladd
(
'hll'
,
ele
)
if
i
!=
0
&&
(
i
%
10000
)
==
0
approx
=
r
.
hllcount
(
'hll'
)
abs_err
=
(
approx
-
i
).
abs
rel_err
=
100
.
to_f
*
abs_err
/
i
puts
"
#{
i
}
vs
#{
approx
}
:
#{
rel_err
}
%"
end
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment