CF.INSERT

语法
CF.INSERT key [CAPACITY capacity] [NOCREATE] ITEMS item [item ...]
可用版本
Redis Stack / Bloom 1.0.0
时间复杂度
O(n * (k + i)),其中n是项目的数量,k是子过滤器的数量,i是maxIterations

将一个或多个项目添加到布谷鸟过滤器,如果过滤器尚不存在,则允许使用自定义容量创建过滤器。

此命令类似于 CF.ADD,不同的是可以添加多个项目,并且可以指定容量。

必需参数

key

是用于添加项目的布谷鸟过滤器的键名。

如果key不存在,则创建一个新的布谷鸟过滤器。

ITEMS item...

要添加的一个或多个项目。

可选参数

CAPACITY capacity

指定新过滤器的所需容量,如果此过滤器尚不存在。

如果过滤器已存在,则此参数将被忽略。

如果过滤器尚不存在,并且此参数指定,则过滤器将使用模块级别的默认容量创建,默认容量为 1024。

有关布谷鸟过滤器容量的更多信息,请参见 CF.RESERVE

NOCREATE

如果指定,则防止自动创建过滤器(如果过滤器不存在,则返回错误)。

此选项与CAPACITY互斥。

返回值

返回以下回复之一

  • 数组回复整数回复 - 其中“1”表示项目已成功添加到过滤器,而“-1”表示未添加项目,因为过滤器已满。
  • [] 发生错误(无效参数、错误的键类型等)以及当NOCREATE指定且key不存在时。

示例

redis> CF.INSERT cf CAPACITY 1000 ITEMS item1 item2 
1) (integer) 1
2) (integer) 1
redis> CF.INSERT cf1 CAPACITY 1000 NOCREATE ITEMS item1 item2 
(error) ERR not found
redis> CF.RESERVE cf2 2 BUCKETSIZE 1 EXPANSION 0
OK
redis> CF.INSERT cf2 ITEMS 1 1 1 1
1) (integer) 1
2) (integer) 1
3) (integer) -1
4) (integer) -1

RATE THIS PAGE
Back to top ↑