文件名称:redis-lua-scaling-bloom-filter:用于缩放布隆过滤器的LUA Redis脚本
文件大小:16KB
文件格式:ZIP
更新时间:2024-02-24 08:48:35
redis lua bloom-filter redis-lua LuaJavaScript
redis-lua-scaling-bloom-filter add.lua , cas.lua和check.lua是用于的三个lua脚本 layer-add.lua和later-check.lua是用于的两个lua脚本 这些脚本将在Redis中使用命令执行。 这些脚本可能无法在Redis集群上运行,因为脚本中使用的键并未全部作为参数传递! 分层过滤器的最大数量为32层。 您可以在源代码中进行修改。 add.lua , cas.lua和layer-add.lua add.lua脚本将新元素添加到过滤器。 当它不存在时,它将创建过滤器。 cas.lua执行“检查并设置”,如果元素已经存在,则不会添加。 如果添加了元素,则cas.lua将返回0;如果元素已经在过滤器中,则cas.lua将返回1。 由于我们使用缩放过滤器,因此使用add.lua添加元素可能会导致该元素同时存在于过滤器的多个部分中。 cas.lua可以防止这种情况。 仅使用cas.lua :count过滤器的:count键将准确计算添加到过滤器中的元素数。 仅使用cas.lua也会减少少量的误报(过滤器中重复次数越少
【文件预览】:
redis-lua-scaling-bloom-filter-master
----add.js(2KB)
----benchmark.sh(958B)
----layer-add.lua(3KB)
----check.lua(2KB)
----cas.lua(3KB)
----LICENSE.txt(1KB)
----add.lua(2KB)
----layer-add.js(3KB)
----layer-benchmark.sh(981B)
----layer-check.lua(2KB)
----README.md(5KB)
----layer-check.js(2KB)
----.gitignore(25B)
----package.sh(1KB)
----cas.js(2KB)
----check.js(1KB)