CF.INSERT

语法
CF.INSERT key [CAPACITY capacity] [NOCREATE] ITEMS item [item ...]
适用范围
Redis Open Source / Bloom 1.0.0
时间复杂度
O(n * (k + i)),其中 n 是项目数,k 是子过滤器的数量,i 是 maxIterations
ACL 类别
@cuckoo, @write, @slow,

向布谷鸟过滤器(cuckoo filter)中添加一个或多个项目,如果过滤器尚不存在,可以指定自定义容量进行创建。

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

必需参数

key

是要添加项目的布谷鸟过滤器(cuckoo filter)的键名。

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

ITEMS item...

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

可选参数

CAPACITY capacity

如果过滤器尚不存在,则指定新过滤器的期望容量。

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

如果过滤器尚不存在且未指定此参数,则会以模块级别的默认容量(即 1024)创建过滤器。

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

NOCREATE

如果指定此选项,则在过滤器不存在时阻止自动创建(将返回错误)。

此选项与 CAPACITY 互斥。

返回值

返回以下回复之一

  • 数组回复,其中整数回复 "1" 表示项目已成功添加到过滤器,"-1" 表示过滤器已满,项目未能添加。
  • 发生错误(参数无效、键类型错误等)时返回 [],当指定 NOCREATEkey 不存在时也返回 []。

示例

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

评价此页面
返回顶部 ↑
© . This site is unofficial and not affiliated with Redis, Inc.