mirror of
http://github.com/valkey-io/valkey
synced 2024-11-22 00:52:38 +00:00
34 lines
581 B
Ruby
34 lines
581 B
Ruby
|
require 'redis'
|
||
|
|
||
|
r = Redis.new
|
||
|
r.select(9)
|
||
|
r.del("myset");
|
||
|
r.sadd("myset",(0..999).to_a)
|
||
|
freq = {}
|
||
|
100.times {
|
||
|
res = r.pipelined {
|
||
|
1000.times {
|
||
|
r.srandmember("myset")
|
||
|
}
|
||
|
}
|
||
|
res.each{|ele|
|
||
|
freq[ele] = 0 if freq[ele] == nil
|
||
|
freq[ele] += 1
|
||
|
}
|
||
|
}
|
||
|
|
||
|
# Convert into frequency distribution
|
||
|
dist = {}
|
||
|
freq.each{|item,count|
|
||
|
dist[count] = 0 if dist[count] == nil
|
||
|
dist[count] += 1
|
||
|
}
|
||
|
|
||
|
min = dist.keys.min
|
||
|
max = dist.keys.max
|
||
|
(min..max).each{|x|
|
||
|
count = dist[x]
|
||
|
count = 0 if count == nil
|
||
|
puts "#{x} -> #{"*"*count}"
|
||
|
}
|