我想删除比特定条目id早的redis流条目。但是xdel命令显式地将每个id作为输入。有没有办法指定一个ID范围,以便在流中有大量条目时使用?此外,整理一系列的条目也将有助于我回忆起未看过的记忆。
lnvxswe21#
目前,没有办法。然而,xtrim被设计成接受不同的修剪策略,即使目前只有maxlen被实现。假设这是一个显式命令,那么将来它可能允许按时间指定修剪,因为以独立方式调用此命令的用户应该知道自己在做什么。xtrim应该具备的一个有用的逐出策略可能是通过一系列id进行移除的能力。这在目前是不可能的,但在将来可能会实现,以便更容易地使用xrange和xtrim,在需要时将数据从redis移动到其他存储系统。您可以使用xtrim来声明空间,在xtrim中您可以给出所需的长度。 XTRIM mystream MAXLEN ~ 1000 在这1000是剩余流的大小,它可以是或多或少的,这是一个近似的数字。裁判:https://redis.io/topics/streams-intro
XTRIM mystream MAXLEN ~ 1000
1条答案
按热度按时间lnvxswe21#
目前,没有办法。
然而,xtrim被设计成接受不同的修剪策略,即使目前只有maxlen被实现。假设这是一个显式命令,那么将来它可能允许按时间指定修剪,因为以独立方式调用此命令的用户应该知道自己在做什么。
xtrim应该具备的一个有用的逐出策略可能是通过一系列id进行移除的能力。这在目前是不可能的,但在将来可能会实现,以便更容易地使用xrange和xtrim,在需要时将数据从redis移动到其他存储系统。
您可以使用xtrim来声明空间,在xtrim中您可以给出所需的长度。
XTRIM mystream MAXLEN ~ 1000
在这1000是剩余流的大小,它可以是或多或少的,这是一个近似的数字。裁判:https://redis.io/topics/streams-intro