BF.RESERVE

用法
BF.RESERVE key error_rate capacity [ EXPANSION expansion ] [ NONSCALING ]
复杂度
O(1)
模块
valkey-bloom
模块版本
1.0.0
ACL 类别
@fast, @write, @bloom

创建一个具有指定容量和误报率的空布隆过滤器。默认情况下,将创建一个具有默认扩展率的伸缩过滤器。

要指定布隆过滤器的伸缩/非伸缩性质,请使用选项:NONSCALINGSCALING <expansion rate>。同时提供这两个选项是无效的。

参数说明

  • error_rate - 布隆过滤器的误报率
  • capacity - 在发生扩容(伸缩模式)或拒绝添加唯一项(非伸缩模式)之前,需要添加的唯一项数量。
  • EXPANSION expansion - 此选项将布隆过滤器指定为伸缩模式,并控制在布隆过滤器扩容/扩展时创建的子过滤器的大小。
  • NONSCALING - 此选项将布隆过滤器配置为非伸缩模式;它不能超出其指定的容量进行扩展/伸缩。

示例

127.0.0.1:6379> BF.RESERVE key 0.01 1000
OK
127.0.0.1:6379> BF.RESERVE key 0.1 1000000
(error) ERR item exists
127.0.0.1:6379> BF.RESERVE bf_expansion 0.0001 5000 EXPANSION 3
OK
127.0.0.1:6379> BF.RESERVE bf_nonscaling 0.0001 5000 NONSCALING
OK

RESP2/RESP3 回复

简单字符串回复: OK

如果输入无效、存在同名键或布隆过滤器创建超出限制,将会发生错误。