Каков наиболее эффективный способ удаления группы элементов из хеша, основанный на том, содержит ли значение элемента определенную подстроку или нет? Насколько я знаю, на самом деле не существует способа сделать это в одном простом блоке. Я должен буквально получить все значения этого хеша в списке Java, затем перебрать этот список, пока не найду то, что мне нужно, затем удалить его ключ из хеша и повторить ту же процедуру снова и снова.
Другой подход, который я попробовал, состоял в том, чтобы поместить ссылки на идентификаторы для элементов хеша в отдельный список, чтобы позже, с помощью одного вызова, я мог получить список идентификаторов для элементов, которые следует удалить. Это было немного лучше, но, тем не менее, используемая мной реализация Redis (Jedis) не поддерживает удаление нескольких хэш-ключей, поэтому снова я остаюсь со связанными руками.
Redis не поддерживает ссылочную целостность, верно? Это означает, что ключи, хранящиеся в списке Redis, являются ссылками на элементы в хэше, поэтому, если я удалю список, соответствующие элементы из хэша будут удалены. В Redis нет ничего подобного, верно?
Мне придется пройти через этот цикл и удалить каждый элемент отдельно. Я бы хотел, по крайней мере, что-то вроде блока, где я мог бы собрать все 1000 команд и отправить их за один полный вызов, а не за 1000 отдельных.