Does Qdrant have a cleanup process or job (or vector expiration) #5441
-
Hi, |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 3 replies
-
Yes. This is handled by the optimizers which run in the background. This can be controlled by the vacuum threshold in the optimizers config for the vacuum optimizer. By default it's 20% meaning that if 20% or more of the data is removed, it'll reoptimize and prune the removed data. Note that this is on segment level, not across your whole collection. I'd recommend to leave it at 20% if possible. |
Beta Was this translation helpful? Give feedback.
Sorry, I misunderstood that you wanted to expire vectors yourself.
Currently, yes. You'd need your own job for this. Adding a timestamp and using a separate job to do the deletes should be perfectly fine. You're right, the vacuum optimizer will prune the vectors from storage.
Please make sure you define a payload index on the timestamp field to ensure fast deletion: https://qdrant.tech/documentation/concepts/indexing/#payload-index
Correct. We're evaluating various options to achieve TLL/expiry. But this is quite hard to pull off in a distributed environment, and so we did not settle…