There’s a lot of information out there about how to atomically delete a sequence of keys in Redis. That’s great, if you want to cause your production cluster to block for minutes at a time while you do so. If you’ve want to delete a bunch of keys with a scan, though, there’s less info.
redis-cli does support a --scan
flag, which combined with a --pattern
flag allows you to asynchronously list a set of prefixed keys – Like the keys
command, except without causing your redis server to block. You can then use this output to feed an xargs command.
For example: redis-cli --scan -h "${REDISHOST}" --pattern "PATTERN" | tee keys | xargs redis-cli -h "${REDISHOST}" del | tee deletions