Как сгруппировать ключи в redis для команды scand?
Привет!
Можно ли сгруппировать для команды scand в redis ключи, которые пишу в MATCH ?
Например пишу:
redis-cli -n 0 scan 0 MATCH *11* COUNT 100000
Выберет ключи, в которых встречается "11", причём как я понял он пробежится по всей базе ключей, и выдаст только те, которые соответствует этой регулярке. Мне нужно что то вроде
redis-cli -n 0 scan 0 MATCH *11* COUNT 100000 | redis-cli -n 0 scan 0 MATCH *222* COUNT 100000
То есть, чтобы выбирались ключи, которые соответствуют регулярке "*11*" и регулярке "*222*", но в таком случае, так как команды выполнится 2, это конструкция бежит по всем ключам 2 раза, я хочу чтобы бегала один раз, так как ключей в бд много.
Можно ли так сделать?
Нет, выполнить такое сканирование одной командой невозможно. SCAN в качестве match pattern использует сильно сокращенный glob-style patterns, не регулярные выражения. В glob-style patterns шаблонах нет оператора "или".