Have you tried the suggestions in the Redis latency troubleshooting page? It's
https://redis.io/topics/latencyTo answer your question, here isn't an issue with delete. There can be an issue with any command that takes longer to execute when the database grows large.
The section of the latency troubleshooting page titled "Latency generated by slow commands" explains this.
With the idea of slow commands in mind, what command do you send to the Redis server to get the list of keys you want to delete?
What tells you that Redis stops responding during the delete and not during the command that gets the list of keys?
The slow log suggested in the latency troubleshooting page is a good method to find out.
When you say you are deleting with "a batch size of 1000", does this mean:
* You send a single DEL command with 1000 key names as arguments? or
* You put multiple DEL commands into a MULTI/EXEC transaction? or
* You issue multiple DEL commands in a pipeline?
What happens when you reduce your batch size to something small, like 30?
The answers to these questions will point toward what's causing the server to be slow in responding, and from there the solution.